Gå til innhold

problem med bildeopplastingscript


Anbefalte innlegg

Jeg har et problem her, alt funker men det funker bare 4 ganger... scriptet kjører max 4ganger uansett hva jeg gjør :S

 

noen grunn til dette ? jeg vil nemlig at scriptet skal kjøre så lenge det er filer som er lastet opp... jeg vil til slutt legge til sånn at jeg kan velge hvor mange fil input felter det skal være men først må dette scriptet fungere :)

 

takk for all hjelp , håper noen finner ut av feilen min

 

 

 

include('data/imageeditor.php');
$mappe = "Mappe";

?>
<FORM ENCTYPE="multipart/form-data" ACTION="" METHOD="POST"><br/>

<INPUT TYPE="file" NAME="bilde[]"><br/>
<INPUT TYPE="file" NAME="bilde[]"><br/>
<INPUT TYPE="file" NAME="bilde[]"><br/>
<INPUT TYPE="file" NAME="bilde[]"><br/>
<INPUT TYPE="file" NAME="bilde[]"><br/>
<INPUT TYPE="file" NAME="bilde[]"><br/>
<select name="kategori"></br>
<?php   
if(isset($_POST['kategori'])){
?> <option selected="<?php echo $_POST['id']; ?>"><?php   echo $_POST['kategori']; ?></option></br> <?php  }
do { ?>
<option value="<?php echo $galkata['kategoriid']; ?>"><?php echo $galkata['navn']; ?></option><br/>
<?php } while($galkata = mysql_fetch_assoc($galkatr)); ?>
</br><INPUT TYPE="submit" VALUE="Last opp"></br>
</FORM><br/>
<?php






echo $i;

if(isset($_FILES['bilde']) && !empty($_FILES['bilde'])) {
for($i=0;count($_FILES['bilde']) > $i;$i++) {

$maxstr = 102400000000000000000000000000000000; //max str i kb
$maxstr = $maxstr * 1024;
$tbmappe = 'data/galleri/thumbnails/'; //mappen thumbnails skal i
$bildemappe = 'data/galleri/bilder/'; // mappen bilder skal i
$tbkvalitet = 50; //thumbnail kvalitet
$tboppløsning = 125; //thumbnail oppløsning
$maxbildeoppløsning = 500; //Oppløsningen som bildene skal ha max... sett 0 hvis du ikke vil ha en maks grense.


   $filnavn = $_FILES['bilde']['name'][$i];
 $fil = $_FILES['bilde']['name'][$i];
   $tempnavn = $_FILES['bilde']['tmp_name'][$i];
   $filtype = $_FILES['bilde']['type'][$i];
   $filstr = $_FILES['bilde']['size'][$i];
 $filstr2 = $filstr/1024;
 $fil = strtolower($fil);
 
$lovligmimetype = array('image/pjpeg', 'image/png', 'image/x-png', 'image/jpeg', 'image/gif'); //hvilke mime typer som er lovlige
$lovligfiltype = array('jpg', 'png', 'gif', 'jpeg'); //hvilke filtyper som er lovlige...(fil endelser)
list($filnavn, $filendelse) = explode(".", $_FILES['bilde']['name'][$i]);
$filendelse = strtolower($filendelse);
$filmd = strtolower($filnavn);
$time = time();
$filmd = $filmd.$time;
$filmd = md5($filmd);
//$filmd = time();
$filmd = "$filmd.$filendelse";

echo $i;

//echo "$fil | $filmd | $filstr | $filtype | $filnavn | $tempnavn | $bildemappe$fil";  
  
   
   if (!file_exists($savemappe.$filnavn)){
       
       if (in_array($filtype, $lovligmimetype)){ //Sjekk om mime typen er godkjent
       if (in_array($filendelse, $lovligfiltype)){ //Sjekk om filtypen er godkjent 
    
           if ($filstr <= ($maxstr * 1024)){ //Sjekk om filen er for stor
               
               if (move_uploaded_file($tempnavn, $bildemappe.$filmd)){ //Flytter filen og sjekker at det funket fett
                   
         $thumb=new thumbnail("$bildemappe$filmd");
                   $thumb->size_auto("$maxbildeoppløsning");
                   $thumb->jpeg_quality(100);
                   $thumb->save("$bildemappe$filmd");
         
         $thumb=new thumbnail("$bildemappe$filmd");
                   $thumb->size_auto("$tboppløsning");
                   $thumb->jpeg_quality("$tbkvalitet");
                   $thumb->save("$tbmappe$filmd");
         
         
         echo "<br/>FINITO2k<br/>";
               }
               else echo "Flytting feilet";
           }
           else echo "Bildet er way to big, $filstr kb er større enn grensa på $maxstr kb";
       }
       else echo "Feil filtype da soeten;)";
 	}
   }
}


}
else{ echo "<br/>Last opp Bilder<br/>"; }



?> 

Lenke til kommentar
Videoannonse
Annonse

feilen er at count($_FILEs['bilde']) teller for få... :S

 

hvis jeg har 8 file inputs så teller den bare 5 av dem :(

 

men hvis jeg slenger på +3 på slutten så funker alt (hvis jeg har 8 file inputs....)

 

hvis jeg bare setter $count istedet for count($_FILES['bilde']) og definerer $count til 8 så funker det også :(

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...