| 
					
							
        
    
        
						
			 | 
			
			
					    
					
        
         
          
         
	
            | Upload af filer Fra : Kurt G | 
  Dato :  21-11-10 18:33 |  
  |   
            Hej NG!
 
 Jeg er ved at forsøge mig lidt mere intensivt med MySQL og PHP og støder til 
 stadighed ind i problemer/udfordringer.
 
 Jeg vil gerne ende med fra en af mine sider at kunne uploade nogle 
 billedfiler til en MySQL-database.
 
 Undervejs i mine forsøg har jeg i et hefte set noget kode for upload af en 
 fil, tilsyneladende kun med upload til serveren, men det er måske et skridt 
 på vejen.
 Det ser således ud:
 -------------------------------------
 <html>
 <body>
 <form method="post" action="VisFilupload.php">
     Fil: <input type="file" name="fil"/><br/>
     <input type="submit" value="Upload fil" />
 </form>
 </body>
 </html>
 -------------------------------------
 og til at vise indholdet:
 -------------------------------------
 <html>
 <head>
 <meta http-equiv="Content-Language" content="da">
 <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
 <title>Her vises resultatet af filupload</title>
 </head>
 <body>
 <p>Her vises resultatet af filupload</p>
 <?php
     $fil = $_FILES["fil"];
     // Kontroller om uploaden gik godt
     if ($fil["error"] > 0)
         {
         echo "Upload mislykkedes. Fejlkode: " . $fil["error"];
         } else {
         echo "Oplysninger om den uploadede fil:<br/>";
         echo "Navn: " . $fil["name"] . "<br/>";
         echo "Type: " . $fil["type"] . "<br/>";
         echo "Størrelse: " . $fil["size"] . " bytes<br/>";
         echo "Midlertidigt gemt i " . $fil["tmp_name"] . "<br/>";
         }
 ?>
 </body>
 </html>
 -------------------------------------
 
 Problemet er, at der ikke vises nogen fejl, men heller ikke noget om 
 indholdet.
 Er koden korrekt?
 
 Mvh Kurt 
 
 
  
            
             |   |   
            
        
 
            
         
           Mads Lie Jensen (21-11-2010) 
         
	
            | Kommentar Fra : Mads Lie Jensen | 
  Dato :  21-11-10 19:15 |  
  |  
 
            On Sun, 21 Nov 2010 18:33:18 +0100, "Kurt G" <kurt_g@guldbaek.net>
 wrote:
 ><form method="post" action="VisFilupload.php">
 Du skal have en ' enctype="multipart/form-data"' med når der skal
 uploades filer:
 <form method="post" action="VisFilupload.php"
 enctype="multipart/form-data">
 ><?php
 >    $fil = $_FILES["fil"];
 Prøv i stedet at lave en 
 var_dump($_FILES);
 Så kan du se hvad der sendes op af filer via formularen.
 -- 
 Mads Lie Jensen - mads@gartneriet.dk - ICQ #25478403
 Gartneriet -  http://www.gartneriet.dk/
            
             |   |   
            
        
 
            
         
           Kurt G (21-11-2010) 
         
	
            | Kommentar Fra : Kurt G | 
  Dato :  21-11-10 22:33 |  
  |  
 
            "Mads Lie Jensen" <mads@gartneriet.dk> skrev i en meddelelse 
 news:b7oie6t4nt9mh6sf1f5e5q31ludb0soat0@4ax.com...
 > On Sun, 21 Nov 2010 18:33:18 +0100, "Kurt G" <kurt_g@guldbaek.net>
 > wrote:
 >
 >><form method="post" action="VisFilupload.php">
 >
 > Du skal have en ' enctype="multipart/form-data"' med når der skal
 > uploades filer:
 >
 > <form method="post" action="VisFilupload.php"
 > enctype="multipart/form-data">
 >
 >><?php
 >>    $fil = $_FILES["fil"];
 >
 > Prøv i stedet at lave en
 >
 > var_dump($_FILES);
 >
 > Så kan du se hvad der sendes op af filer via formularen.
 >
 > -- 
 > Mads Lie Jensen - mads@gartneriet.dk - ICQ #25478403
 > Gartneriet -  http://www.gartneriet.dk/
Tak for svaret.
 Jeg har prøvet dine råd, men det gav intet resultat.
 På modtagersiden kom der blot:
 ---------
 Her vises resultatet af filupload
 array(0) { }
 ---------
 Mvh Kurt 
            
              |   |   
            
        
 
            
         
            scootergrisen (22-11-2010) 
         
	
            | Kommentar Fra : scootergrisen | 
  Dato :  22-11-10 00:11 |  
  |   
            Ved at rette form til :
 <form method="post" action="VisFilupload.php" enctype="multipart/form-data">
 som den anden bruger skrev så virker det på min computer.
 Så det er sikkert noget med din PHP opsætning at gøre.
 
 I stedet for at skrive :
 
 if ($fil["error"] > 0)
 
 Så prøv at vis indholdet i stedet for.
 
 if (isset($fil["error"])){
 
     echo $fil["error"];
 
 }
 
 Det kan være den fil du forsøger at uploade er for stor i forhold til 
 dine PHP indstillinger så forsøg at oploade en lille fil.
 
 Jeg bruger denne kode til at vise den maksimale fil uploade størrelse 
 inden brugeren forsøger at uploade.
 
 $maxuploadstorrelse = round(min(
      return_bytes(ini_get("upload_max_filesize"))
     ,return_bytes(ini_get("post_max_size"))
     ,return_bytes(ini_get("memory_limit"))
     )/1024);
 
 echo 'Maksimal fil upload størrelse: ' . $maxuploadstorrelse . ' MB.';
  
            
             |   |   
            
        
 
            
         
           Birger Sørensen (22-11-2010) 
         
	
            | Kommentar Fra : Birger Sørensen | 
  Dato :  22-11-10 01:03 |  
  |  
 
            Følgende er skrevet af Kurt G:
 > Hej NG!
 >
 > Jeg er ved at forsøge mig lidt mere intensivt med MySQL og PHP og støder til 
 > stadighed ind i problemer/udfordringer.
 >
 > Jeg vil gerne ende med fra en af mine sider at kunne uploade nogle 
 > billedfiler til en MySQL-database.
 >
 > Undervejs i mine forsøg har jeg i et hefte set noget kode for upload af en 
 > fil, tilsyneladende kun med upload til serveren, men det er måske et skridt 
 > på vejen.
 > Det ser således ud:
 > -------------------------------------
 > <html>
 > <body>
 > <form method="post" action="VisFilupload.php">
 >     Fil: <input type="file" name="fil"/><br/>
 >     <input type="submit" value="Upload fil" />
 > </form>
 > </body>
 > </html>
 > -------------------------------------
 > og til at vise indholdet:
 > -------------------------------------
 > <html>
 > <head>
 > <meta http-equiv="Content-Language" content="da">
 > <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
 > <title>Her vises resultatet af filupload</title>
 > </head>
 > <body>
 > <p>Her vises resultatet af filupload</p>
 > <?php
 >     $fil = $_FILES["fil"];
 >     // Kontroller om uploaden gik godt
 >     if ($fil["error"] > 0)
 >         {
 >         echo "Upload mislykkedes. Fejlkode: " . $fil["error"];
 >         } else {
 >         echo "Oplysninger om den uploadede fil:<br/>";
 >         echo "Navn: " . $fil["name"] . "<br/>";
 >         echo "Type: " . $fil["type"] . "<br/>";
 >         echo "Størrelse: " . $fil["size"] . " bytes<br/>";
 >         echo "Midlertidigt gemt i " . $fil["tmp_name"] . "<br/>";
 >         }
 > ?>
 > </body>
 > </html>
 > -------------------------------------
 >
 > Problemet er, at der ikke vises nogen fejl, men heller ikke noget om 
 > indholdet.
 > Er koden korrekt?
 >
 > Mvh Kurt
 Måske kan
 http://dk.php.net/manual/en/features.file-upload.post-method.php
hjælpe dig.
 Birger
 -- 
 http://varmeretter.dk - billig, sund og hurtig mad
 http://bbsorensen.dk
            
             |   |   
            
        
 
            
         
           scootergrisen (22-11-2010) 
         
	
            | Kommentar Fra : scootergrisen | 
  Dato :  22-11-10 01:37 |  
  |  
 
            > Måske kan
 >  http://dk.php.net/manual/en/features.file-upload.post-method.php
> hjælpe dig.
 Som der står på Birgers link :
 "$_FILES will be empty if a user attempts to upload a file greater than 
 post_max_size in your php.ini"
 Så det er nok fordi du har forsøgt at uploade en fil som er større end 
 hvad php's opsætning tillader.
            
              |   |   
            
        
 
            
         
            Birger Sørensen (22-11-2010) 
         
	
            | Kommentar Fra : Birger Sørensen | 
  Dato :  22-11-10 02:45 |  
  |  
 
            scootergrisen frembragte:
 >> Måske kan
 >>  http://dk.php.net/manual/en/features.file-upload.post-method.php
>> hjælpe dig.
 >
 > Som der står på Birgers link :
 > "$_FILES will be empty if a user attempts to upload a file greater than 
 > post_max_size in your php.ini"
 >
 > Så det er nok fordi du har forsøgt at uploade en fil som er større end hvad 
 > php's opsætning tillader.
 Hvis man nu læser den første note, så er der fem directives i php.ini 
 der kan påvirke file upload.
 Det ene af de webhoteller jeg bruger, har desudn en php5.ini hvor 
 max-size også kan angives - så der er faktisk mange ting der kan gå 
 galt, og mange ting at checke.
 At gå ud fra at det er fordi filen er for stor i et forsøg, er måske 
 lidt at forhaste sig.
 Birger
 -- 
 http://varmeretter.dk - billig, sund og hurtig mad
 http://bbsorensen.dk
            
             |   |   
            
        
 
            
         
            Kurt G (22-11-2010) 
         
	
            | Kommentar Fra : Kurt G | 
  Dato :  22-11-10 21:31 |  
  |  
 
            "scootergrisen" <scootergrisen@gmail.com> skrev i en meddelelse 
 news:4ce9bb57$0$23751$14726298@news.sunsite.dk...
 >> Måske kan
 >>  http://dk.php.net/manual/en/features.file-upload.post-method.php
>> hjælpe dig.
 >
 > Som der står på Birgers link :
 > "$_FILES will be empty if a user attempts to upload a file greater than 
 > post_max_size in your php.ini"
 >
 > Så det er nok fordi du har forsøgt at uploade en fil som er større end 
 > hvad php's opsætning tillader.
 >
 Jeg er i gang med at kikke på Birgers link, men kan allerede nu sige, at det 
 ikke er størrelsen, der forhindre upload.
 Jeg fandt et andet sted nogle eksempler, som tilsyneladende kan uploade til 
 temp-fil, men der opstår der andre problemer! Derom senere.
 Mvh Kurt 
            
              |   |   
            
        
 
            
         
           Henrik Glensbo (22-11-2010) 
         
	
            | Kommentar Fra : Henrik Glensbo | 
  Dato :  22-11-10 06:23 |  
  |  
 
            Jeg har set andre modeller på sådanne koder. Der uploadede man billedet via ftp
 til et arkiv på serveren og gemte kun stien og filnavnet som henvisning i
 databasen. Hvis jeg finder en side vil jeg lige sende linket 
 -- 
 Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
  - Pædagogiske tutorials på dansk
  - Kom godt i gang med koderne
 KLIK HER! =>  http://www.html.dk/tutorials
            
             |   |   
            
        
 
            
         
           Henrik Glensbo (22-11-2010) 
         
	
            | Kommentar Fra : Henrik Glensbo | 
  Dato :  22-11-10 06:33 |  
  |   |   |   
            
        
 
            
         
            Kurt G (22-11-2010) 
         
	
            | Kommentar Fra : Kurt G | 
  Dato :  22-11-10 21:33 |  
  |  
 
            "Henrik Glensbo" <henrik@glensbo.dk> skrev i en meddelelse 
 news:4cea00a3$0$23752$14726298@news.sunsite.dk...
 > Denne side har en enkel gennemgang af sådan en model:
 >  http://php.about.com/od/phpwithmysql/ss/Upload_file_sql.htm
>
 >
 > -- 
 > Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
 > - Pædagogiske tutorials på dansk
 > - Kom godt i gang med koderne
 > KLIK HER! =>  http://www.html.dk/tutorials
Så er der mere at studere.
 Tak for linket.
 Mvh Kurt 
            
              |   |   
            
        
 
            
         
            Kurt G (22-11-2010) 
         
	
            | Kommentar Fra : Kurt G | 
  Dato :  22-11-10 23:33 |  
  |  
 
            "Henrik Glensbo" <henrik@glensbo.dk> skrev i en meddelelse 
 news:4cea00a3$0$23752$14726298@news.sunsite.dk...
 > Denne side har en enkel gennemgang af sådan en model:
 >  http://php.about.com/od/phpwithmysql/ss/Upload_file_sql.htm
>
 KLIPPET
 Nu har jeg prøvet forskellige ting og tror efterhånden, at det er galt med 
 opsætning af stier.
 På  http://www.vinderup-egnshistorie.dk/test4a.php (der er flere forsøg med 
 test1a, test2a, test3a og test4a) har jeg brugt eksemplet fra ovenstående, 
 og har brugt
 $uploaddir = './';
 som nævnt i et af kommentarerne.
 Dette giver ikke fejl, men til gengæld er der ikke nogen fil at se, så noget 
 er stadig galt!
 Som jeg har forstået det, angiver det den folder, hvortil upload kopieres 
 til efter upload til en midlertidig fil, men det har jeg måske misforstået?
 Mvh Kurt 
            
              |   |   
            
        
 
            
         
             scootergrisen (23-11-2010) 
         
	
            | Kommentar Fra : scootergrisen | 
  Dato :  23-11-10 00:23 |  
  |  
 
            Den 22-11-2010 23:32, Kurt G skrev:
 > "Henrik Glensbo"<henrik@glensbo.dk>  skrev i en meddelelse
 > news:4cea00a3$0$23752$14726298@news.sunsite.dk...
 >> Denne side har en enkel gennemgang af sådan en model:
 >>  http://php.about.com/od/phpwithmysql/ss/Upload_file_sql.htm
>>
 > KLIPPET
 >
 > Nu har jeg prøvet forskellige ting og tror efterhånden, at det er galt med
 > opsætning af stier.
 > På  http://www.vinderup-egnshistorie.dk/test4a.php (der er flere forsøg med
 > test1a, test2a, test3a og test4a) har jeg brugt eksemplet fra ovenstående,
 > og har brugt
 > $uploaddir = './';
 > som nævnt i et af kommentarerne.
 > Dette giver ikke fejl, men til gengæld er der ikke nogen fil at se, så noget
 > er stadig galt!
 >
 > Som jeg har forstået det, angiver det den folder, hvortil upload kopieres
 > til efter upload til en midlertidig fil, men det har jeg måske misforstået?
 >
 > Mvh Kurt
 >
 >
 Bruge fulde stier istedet for det med './' så du sikker på det er 
 rigtig.... sådan da.
 Altså $uploaddir = '/customers/x.dk/x.dk/upload';
 Eller hvor filerne nu skal ligge.
            
              |   |   
            
        
 
            
         
             Birger Sørensen (23-11-2010) 
         
	
            | Kommentar Fra : Birger Sørensen | 
  Dato :  23-11-10 01:03 |  
  |  
 
            Kurt G forklarede den 22-11-2010:
 > "Henrik Glensbo" <henrik@glensbo.dk> skrev i en meddelelse 
 > news:4cea00a3$0$23752$14726298@news.sunsite.dk...
 >> Denne side har en enkel gennemgang af sådan en model:
 >>  http://php.about.com/od/phpwithmysql/ss/Upload_file_sql.htm
>>
 > KLIPPET
 >
 > Nu har jeg prøvet forskellige ting og tror efterhånden, at det er galt med 
 > opsætning af stier.
 > På  http://www.vinderup-egnshistorie.dk/test4a.php (der er flere forsøg med 
 > test1a, test2a, test3a og test4a) har jeg brugt eksemplet fra ovenstående, og 
 > har brugt
 > $uploaddir = './';
 > som nævnt i et af kommentarerne.
 > Dette giver ikke fejl, men til gengæld er der ikke nogen fil at se, så noget 
 > er stadig galt!
 >
 > Som jeg har forstået det, angiver det den folder, hvortil upload kopieres til 
 > efter upload til en midlertidig fil, men det har jeg måske misforstået?
 >
 > Mvh Kurt
 Jeg har ikke lige checket dine eksempler.
 .. først i en sti eller filnavn, er normat folderen selv - den aktuelle 
 folder.
 ../ giver ingen  mening, med mindre der er en folder uden navn i den 
 aktuelle folder - og en folder uden navn er vist ikke lovlig i noget 
 OS, bortset fra roden.
 Men filer uploades til en midlertidig folder.
 Directive upload_tmp_dir i php.ini kan give dig navnet på denne folder 
 - og du skal måske checke det, og se hvad der står.
 Hvis en uploaded fil ikke renames eller flyttes, bliver den slettet, 
 når scriptet stopper. Det burde ikke ske før efter dit script faktiks 
 har verificeret den, så du burde få besked om at filen findes - 
 hvorefter den så faktisk vil bleve slettet...
 Birger
 -- 
 http://varmeretter.dk - billig, sund og hurtig mad
 http://bbsorensen.dk
            
             |   |   
            
        
 
            
         
              Kurt G (23-11-2010) 
         
	
            | Kommentar Fra : Kurt G | 
  Dato :  23-11-10 14:40 |  
  |   
            "Birger Sørensen" <sdc@bbsorensen.com> skrev i en meddelelse 
 news:4ceb049b$0$23761$14726298@news.sunsite.dk...
 Klippet
 > Jeg har ikke lige checket dine eksempler.
 > . først i en sti eller filnavn, er normat folderen selv - den aktuelle 
 > folder.
 > ./ giver ingen  mening, med mindre der er en folder uden navn i den 
 > aktuelle folder - og en folder uden navn er vist ikke lovlig i noget OS, 
 > bortset fra roden.
 >
 > Men filer uploades til en midlertidig folder.
 > Directive upload_tmp_dir i php.ini kan give dig navnet på denne folder - 
 > og du skal måske checke det, og se hvad der står.
 
 Det er jo nok en fil på serveren, men kikker jeg på sitet vis TotalCmd, er 
 der ikke sådan en fil.
 Det må jeg nok spørge udbyderen om!
 
 Men ved forsøgene ses stien til tmp-filen sådan  [tmp_name] => 
 /customers/vinderup-.egnshistorie.dk/vinderup-egnshistorie.dk/tmp/phpEauj70
  så ud fra det må jeg jo så prøve mig frem.
 
 
 > Hvis en uploaded fil ikke renames eller flyttes, bliver den slettet, når 
 > scriptet stopper. Det burde ikke ske før efter dit script faktiks har 
 > verificeret den, så du burde få besked om at filen findes - hvorefter den 
 > så faktisk vil bleve slettet...
 >
 > Birger
 >
 Ja, men den siger faktisk også, at filen er. Men den bliver tilsyneladende 
 ikke flyttet hen til et sted, hvor jeg har kontakt til den.
 Men nu vil jeg prøve med stien fra bunden af, som Scootergrisen anbefaler.
 
 Tak for hjælpen så langt.
 Mvh Kurt
 
 
  
            
             |   |   
            
        
 
            
         
               Birger Sørensen (23-11-2010) 
         
	
            | Kommentar Fra : Birger Sørensen | 
  Dato :  23-11-10 14:55 |  
  |  
 
            Kurt G har bragt dette til verden:
 8X
 > Ja, men den siger faktisk også, at filen er. Men den bliver tilsyneladende 
 > ikke flyttet hen til et sted, hvor jeg har kontakt til den.
 > Men nu vil jeg prøve med stien fra bunden af, som Scootergrisen anbefaler.
 >
 > Tak for hjælpen så langt.
 > Mvh Kurt
 Somme tider virker upload bare første gang - andre gange har man 
 ustyrligt meget besvær med det, og det er min erfaring, at det har 
 meget at gøre med hosten.
 Det er naturligt et område der skal fokuseres på, af hensyn til 
 sikkerhed - og det kan være en snak med hosten, kan forklare nogen af 
 dine problemer.
 Ellers vil jeg foreslå dig at prøve at at se på
 http://dk.php.net/manual/en/function.move-uploaded-file.php
og flytte filen fra tmp folderen til en anden folder, med dit script. 
 Hvis alt går vel, skal du med TC så kunne finde den der.
 Manualen siger, at hvis du ikke selv fjerne den uploadede fil, eller 
 renamer den, vil PHP slette den. Og det gælder formentlig hele folderen 
 der uploades til. Jeg har i hvert fald aldrig kunnet finde den folder, 
 mine uploads skulle blive gemt i, så jeg tror den bliver oprettet når 
 der er brug for den, og fjernet igen bagefter, sammen med den uploadede 
 fil.
 Birger
 -- 
 http://varmeretter.dk - billig, sund og hurtig mad
 http://bbsorensen.dk
            
             |   |   
            
        
 
    
 
					
					 
			 | 
			
				
        
			 |