webForumDet fria alternativet

tre bilder i rad??

ASPur ASP

7 svar · 222 visningar · startad av josuason

Medlem sedan nov. 200221 inlägg
Frågan#1

Hej igen...

Nu var det lite problem med visningen av dom bilder man har lyckats uploada online. Upload scriptet kommer från pbwebb.com

addressen till sidan: bildsidan

Här kommer koden:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<%@LANGUAGE=VBSCript%>
<%
Response.Buffer = True
Session.LCID = 1053

' SETTINGS

strPageName = "upload2.asp"				'Sidans Namn
strPageTitel = ":: josuason.com photos"		'Här skriver du vad du vill sid
strUploadFolder = "bilder2"				'Mappen du vill skicka upp till
strAllow = ".gif,.jpg,.bmp"				'Filerna som är uppladdningsbara, glöm ej kommatecknet vid tillägg
strFileShow = 10					'Hur många filer innan ny sida

' **************************************************************************************************************
strFixAllow = strAllow
strFixAllow = Replace(strFixAllow,",","&nbsp")

	Files_upload	= Server.MapPath(strUploadFolder)
	Set objFSO	= Server.CreateObject("Scripting.FileSystemObject")
	Set objFolder	= objFSO.getFolder(Files_upload)
	
If Request.QueryString("do") = "erase" Then
  If objFSO.FileExists(Files_upload & "\" & Request.QueryString("name")) Then
   objFSO.DeleteFile(Files_upload & "\" & Request.QueryString("name"))
  End If
   Response.Redirect strPageName & "?page=" & Request.QueryString("page")
End If

If (Request.ServerVariables("REQUEST_METHOD") = "POST") Then
			Set Upload	= get_upload_files()
			fcontent	= Upload("upload").Item("content")

              
                extension = right(extract_filename(Upload("upload").Item("filename")),4)
                If objFSO.FileExists(Files_upload & "\" & extract_filename(Upload("upload").Item("filename"))) Then
                    Session("mess") = "Det finns redan en fil med det namnet, byt namn på filen !!!"
		    Response.Redirect strPageName
                Else
                     If instr(strAllow,extension) then
                        Set File	= objFSO.CreateTextFile(Files_upload & "\" & extract_filename(Upload("upload").Item("filename")))
                     Else
                        Session("mess") = "Filen är ej godkänd. Endast <b>" & strAllow & "</b> är godkända."
                        Response.Redirect strPageName
                     End If
                End If                        
		For i = 1 to LenB(fcontent)
			File.Write chr(AscB(MidB(fcontent, i, 1)))
		Next
		File.Close: Set File = Nothing
		Session("mess") = "Du har gjort en lyckad uppladdning !!!"
		Response.Redirect strPageName
End If %>

<table border="0" align="center" cellpadding="2" cellspacing="2">
                    <%
If objFolder.Files.Count Mod strFileShow Then 
  strShowPageNr = objFolder.Files.Count \ strFileShow + 1 
Else 
  strShowPageNr = objFolder.Files.Count \ strFileShow 
End If

  strPageNr = Request.QueryString("page")

If strPageNr = "" Then 
  strPageNr = 1 
End If  
    
  strStart = (strPageNr - 1) * strFileShow
  strEnd = strStart + strFileShow

If objFolder.Files.Count = 0 Then
  Response.Write "<tr><td colspan='3'><span class='newsT'>Inga uppladdade filer!</span></td></tr>"
Else

  For Each File In objFolder.Files
  	
    If X < strStart Then 
      ElseIf X < strEnd Then

	Response.Write "<tr>"   
  	Response.Write "<td><a href='bilder2/"& File.Name &"' target='_blank'><img src='bilder2/"& File.Name &"' width='140' height='105' border='0'></b></td>"
	Response.Write "</tr>"   
       
           
      Else 
     Exit For	 
    End If 
   	X = X + 1    
  Next
End If

If strShowPageNr > 1 Then
Response.Write "<tr><td colspan='3'><hr></td></tr>"
%>
<tr>
                      <td colspan="3" class="newsT"> 
                        <% For i = 1 To strShowPageNr
     If  i = CInt(strPageNr) Then
        Response.Write "<b>" & i & "</b>"
     Else
        Response.Write " <a href="& strPageName &"?page=" & i & ">" & i & "</a> "
     End If
   Next
   
End If %>

</table>

					</td>
				</tr>
								<tr>
					<td colspan="3">
					<table width="100%" border="0" cellspacing="0" cellpadding="0">
  						<tr>
				<td width="40" align="left">&nbsp;</td>
				<td><hr></td>
				<td width="35" align="right">&nbsp;</td>
  						</tr>
					</table>
					</td>
				</tr>
												<tr>
					
                <td colspan="3" align="center"> 
                  <table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">
                    <tr>
							<td width="40" align="left">&nbsp;</td>
							
                      <td colspan="3" align="center" class="newsT">
<% If Session("mess") <> "" Then : Response.Write "<span class='mess'>" & Session("mess") & "</span>" : Session("mess") = "" %></td>
 						</tr>
 						<tr>
							<td width="40" align="left">&nbsp;</td> 
						  
                      <td colspan="3" align="center"> <span class="newsT">Just 
                        nu kan du bara ladda upp filer med ändelsen<br>
							<b><%=strFixAllow%></b><br>
							<br>
							</span> 
							<form name="frmUpload" method="post" enctype="multipart/form-data" action="<%=strPageName%>">
							<input type="file" name="upload" size="45" class="input3"><br>
							<input type="submit" value="Ladda upp" class="input3"><br>
							</form>
							</td>
  </tr>
</table>

</body>
</html>

<%
	Function get_upload_files()
		Set upload_object	= Server.CreateObject("Scripting.Dictionary")
		request_binaries	= Request.BinaryRead(Request.TotalBytes)
		position_start		= 1
		position_end		= InstrB(position_start, request_binaries, get_byte_string(chr(13)))
		boundary			= MidB(request_binaries, position_start, (position_end - position_start))
		boundary_pos		= InstrB(1, request_binaries, boundary)
                
		Do Until (boundary_pos = InstrB(request_binaries, boundary & get_byte_string("--")))
			If Not(Response.IsClientConnected) Then Response.End

			position_start	= (InstrB(InstrB(boundary_pos, request_binaries, get_byte_string("Content-Disposition")), request_binaries, get_byte_string("name=")) + 6)
			position_end	= InstrB(position_start, request_binaries, get_byte_string(chr(34)))

			name			= get_string(MidB(request_binaries, position_start, (position_end - position_start)))
			pos_file		= InstrB(boundary_pos, request_binaries, get_byte_string("filename="))

			If  ((pos_file <> 0) AND (pos_file < InstrB(position_end, request_binaries, boundary))) Then
				upload_object.Add name, Server.CreateObject("Scripting.Dictionary")

				position_start	= (pos_file + 10)
				position_end	= InstrB(position_start, request_binaries, get_byte_string(chr(34)))
				upload_object.item(name).Add "filename", get_string(MidB(request_binaries, position_start, (position_end - position_start)))

				position_start	= (InstrB(position_end, request_binaries, get_byte_string("Content-Type:")) + 14)
				position_end	= InstrB(position_start, request_binaries, get_byte_string(chr(13)))
				upload_object.item(name).Add "content-type", get_string(MidB(request_binaries, position_start, (position_end - position_start)))

				position_start	= (position_end + 4)
				position_end	= InstrB(position_start, request_binaries, boundary) - 2
				upload_object.item(name).Add "size", ((position_end - position_start))
				upload_object.item(name).Add "content", MidB(request_binaries, position_start, (position_end - position_start))
			End If
			boundary_pos	= InstrB(boundary_pos + LenB(boundary), request_binaries, boundary)
		Loop

		Set get_upload_files = upload_object
	End Function

	Function get_byte_string(str)
		For cnt = 1 to Len(str)
			get_byte_string	= get_byte_string & chrB(AscB(Mid(str, cnt, 1)))
		Next
	End Function

	Function get_string(str)
		For cnt = 1 to LenB(str)
			get_string	= get_string & chr(AscB(MidB(str, cnt, 1))) 
		Next
	End Function

	Function extract_filename(filename)
		extract_filename = Right(filename, Len(filename) - InStrRev(filename, "\", -1, 1))
	End Function

%>

Detta är all kod på sidan.. Vad jag försöker få som resultat är tre bilder irad och max 15 på varje sida. Kan någon hjälpa mig med detta???

Tack på förhand
Ziggy

Medlem sedan nov. 200221 inlägg
#2

Hela sidan bifogas:

Medlem sedan apr. 20003 174 inlägg
#3

Re: tre bilder i rad??

josuason skrev:

Vad jag försöker få som resultat är tre bilder irad

[red]If objFolder.Files.Count = 0 Then
	Response.Write "<tr><td colspan='3'><span class='newsT'>Inga uppladdade filer!</span></td></tr>"

Else

	[blue]Response.Write "<tr>"[/blue]

	For Each File In objFolder.Files
  	
		If X < strStart Then 
		ElseIf X < strEnd Then

			Response.Write "<td><a href='bilder2/"& File.Name &"' target='_blank'><img src='bilder2/"& File.Name &"' width='140' height='105' border='0'></b></td>"
			[blue]If X Mod 3 = 0 Then Response.Write "</tr><tr>"[/blue]

		Else 
			Exit For	 
		End If 

		X = X + 1    
		[blue]Response.Write "</tr>"[/blue]

	Next

End If[/red]

josuason skrev:

..och max 15 på varje sida.

[red]strFileShow = 15[/red]
Medlem sedan nov. 200221 inlägg
#4

Fortfarande samma sak Palle.. Sak MOD deklareras på nått sett eller????

Ziggy

Medlem sedan nov. 200221 inlägg
#5

Så skrivs det ut på sidan i HTML:

<table border="0" align="center" cellpadding="2" cellspacing="2">
	<tr>
		<td><a href='bilder2/010207a.jpg' target='_blank'><img src='bilder2/010207a.jpg' width='140' height='105' border='0'></b></td>
	</tr>
	<tr>
	</tr>
		<td><a href='bilder2/7_sanc.jpg' target='_blank'><img src='bilder2/7_sanc.jpg' width='140' height='105' border='0'></b></td>
	</tr>
		<td><a href='bilder2/8_sse_p8.jpg' target='_blank'><img src='bilder2/8_sse_p8.jpg' width='140' height='105' border='0'></b></td>
	</tr>
		<td><a href='bilder2/india_2.jpg' target='_blank'><img src='bilder2/india_2.jpg' width='140' height='105' border='0'></b></td>
	</tr>
	<tr>
	</tr>
		<td><a href='bilder2/india_5.jpg' target='_blank'><img src='bilder2/india_5.jpg' width='140' height='105' border='0'></b></td>
	</tr>
		<td><a href='bilder2/TDS_footballannons kopiera.jpg' target='_blank'><img src='bilder2/TDS_footballannons kopiera.jpg' width='140' height='105' border='0'></b></td>
	</tr>
		<td><a href='bilder2/tibet_13.jpg' target='_blank'><img src='bilder2/tibet_13.jpg' width='140' height='105' border='0'></b></td>
	</tr>
	<tr>
	</tr>
</table>

Ziggy

Medlem sedan apr. 20003 174 inlägg
#6

Hmm, ok.. kanske X som inte fungerar på det sättet jag tänkte mig. ;)

Testa istället:

[red]If objFolder.Files.Count = 0 Then
	Response.Write "<tr><td colspan='3'><span class='newsT'>Inga uppladdade filer!</span></td></tr>"

Else

	Response.Write "<tr>"

	[blue]iLoop = 0[/blue]
	For Each File In objFolder.Files
  	
		If X < strStart Then 
		ElseIf X < strEnd Then

			[blue]iLoop = iLoop + 1[/blue]
			Response.Write "<td><a href='bilder2/"& File.Name &"' target='_blank'><img src='bilder2/"& File.Name &"' width='140' height='105' border='0'></b></td>"
			[blue]If iLoop Mod 3 = 0 Then Response.Write "</tr><tr>"[/blue]

		Else 
			Exit For	 
		End If 

		X = X + 1    
		Response.Write "</tr>"

	Next

End If[/red]
Medlem sedan nov. 200221 inlägg
#7

Flyttade den här då funkade allt grymt bra...

		Else 
			Exit For	 
		End If 

		X = X + 1    
		[blue]Response.Write "</tr>"[blue] 

	Next

End If
[b]Response.Write "</tr>"[/b]

Tack för hjälpen Palle

Medlem sedan apr. 20003 174 inlägg
#8

Så sant så sant.. missade det. :bire

Markera gärna denna tråd som Löst också nu. :)

134 ms totalt · 3 externa anrop · v20260731065814-full.b746b907
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)