Bild Upload

Deadfish

Mitglied
Hallo erstmal ich weis über Bild Upload gibt es hier mehre Themen nur habe da so ein bestimmtes Problem und zwar möchte ich meinen Code so erweitern das ich Mehere Bilder Hochladen kann weis das es ja mit Arrays gehen müsste weis nur nicht genau wie da ich mich mit den Arrays nicht besonders auskenne .

Hier mal mein Code vom Formular:

PHP:
<form action="upload.php" method="post"  enctype="multipart/form-data" method="post"  onsubmit="this.go.disabled=true;zeigeBalken();return true;">	<div class="auto-style2">
	
 <select name="albumid">
<?php
 
      $select = "SELECT * FROM album  WHERE id = '$id'";
      $query = mysql_query($select);
      while ($array = mysql_fetch_array($query)) {
            echo '<option value="'.$array["albumid"].'">'.$array["albumname"].'</option>';
      }
 
?>
<script type="text/javascript">
function zeigeBalken() {
    document.getElementById("ladebalken").style.display = "inline";
    return true;
}
</script>

<input type="file"   name="datei" id="fileElem" onchange="handleFiles(this.files)">
 <br><br> <div align="center" id="ladebalken" style="display:none">
  <img  src="../bilder/icon/ladebalken4.gif" alt=""><br>
</div>
 
<input type="submit" name="go" value="Hochladen">


ich weis das ich so :

PHP:
<input type="file" multiple  name="datei" id="fileElem" onchange="handleFiles(this.files)">

Also mit multiple mehre Bilder Markieren kann bei Upload so solte es ja sein aber da der Upload Script nicht für mehre Bilder ausgelegt ist lädt er nur eine Datei hoch

Upload Code:

PHP:
<?php  
include ("../checkuser.php");  
include ("../config.inc.php"); 
?>

<?php
$id = $_SESSION["user_id"]; 
 $albumname = $_POST["albumid"];
$dateityp = GetImageSize($_FILES['datei']['tmp_name'])
;$bild = $_FILES['datei']['name']; 
if($dateityp[2] != 0)
   {

   if($_FILES['datei']['size'] <  102400000)
      {
      move_uploaded_file($_FILES['datei']['tmp_name'], "../users/$id/Gallery/album/$albumname/".$_FILES['datei']['name']);
      echo "<h1 class='auto-style2'><strong>Dein Bild </strong></h1>
<h1 class='auto-style2'><strong>
<img alt='' height='271' src='../users/$id/Gallery/album/$albumname/$bild' width='316'></strong></h1>
<h1 class='auto-style2'><strong><br>wurde erfolgreich im Album 
hinzugef&uuml;gt</strong></h1>
";
      }

   else
      {
         echo "Das Bild darf nicht größer als 100 kb sein ";
      }

    }

else
    {
    echo "Bitte nur Bilder im Gif bzw. jpg Format hochladen";
    }
    



$aendern = "UPDATE album  Set
albumbild = 'album/$albumname/$bild'
WHERE albumid = '$albumname'";
$update = mysql_query($aendern);

?>

Danke für eure Hilfe .
 
Im Formular den Namen des Feldes auf einen Array setzen
name="datei[]"

Dann schau dir mal mit var_dump($_FILES) den Array genau an. Dann solltest du auch erkwennen was du umbauen musst
 
Danke erstmal aber wie gesagt kenne mich mit Arrays nicht so aus benutze ich so gut wie nie
habe das mal probiert aber jetzt erkennt er das bild nicht mehr da ja getimagesize glaub ich nicht lesbar ist.

PHP:
$dateityp = array(GetImageSize($_FILES['datei']['tmp_name']))
;$bild = $_FILES['datei']['name']; 
if($dateityp[2] != 0)
   {

   if($_FILES['datei']['size'] <  102400000)
      {
    count(move_uploaded_file($_FILES['datei']['tmp_name'], "../users/$id/Gallery/album/$albumname/".$_FILES['datei']['name']));
 
Wenn ich dich doch richtig verstanden habe, was ich grade bezweifel dann meinst doch auf der php Seite das das $dateityp = array("($file)") fehlt und dann halt der Count der zählt wie viele Bilder vorhanden sind oder ?
 
Nö. Ich meine du sollst ganz am Anfang im Code var_dump($_FILES) ; reinkopieren. Dann laufen lassen, Files auswählen, abschicken.
Dann schreibt es dir auf die Seite den Inhalt von $_FILES. Den kannst du kopieren und hier reinschreiben. Dann sehen wir alle wie der Array aufgebaut ist.
Oder du googelst um herauszufinden wie $_FILES aufgebaut ist oder jemand macht einen Testcode und postet es hier her.

Und dann können wir deinen Code analysieren - vorher hat es keinen Zweck, ausser man weiss auswendig wie $_FILES bei Mult-File-Upload aufgabaut ist...
 
Habe das mal so gemacht das sieht schon mal fast richtig aus aber er lädt immer das gleiche Bild
hoch

PHP:
var_dump($_FILES) ;
$id = $_SESSION["user_id"]; 
 $albumname = $_POST["albumid"];
$dateityp = GetImageSize($_FILES['datei']['tmp_name'])
;$bild = $_FILES['datei']['name']; 
if($dateityp[2] != 0)
   {

   if ($_FILES['datei']['size'] <  102400000)
      {
       for($i=0; $i< count($dateityp ); $i++){
 
Ich gebs auf. Wenn du willst, dass ich dir helfe, dann solltest du mir helfen dir zu helfen.
Aber wenn du meine Gegenfrage immer ignorierst.......
 
Ich habe ja das var_dump($_FILES) ; reinkopiert dann hab ich ja eine Array Ausgabe des Uploads stehen und oben ist doch die $files Daten ?

Sorry wenn das so klingt , aber ich weis nicht genau worauf du hinaus willst
 
Ich habe ja das var_dump($_FILES) ; reinkopiert dann hab ich ja eine Array Ausgabe des Uploads stehen und oben ist doch die $files Daten ?

Sorry wenn das so klingt , aber ich weis nicht genau worauf du hinaus willst
Dann muss ich blind sein. In welchem deiner Posts (Rechts im blauen Balken hat es Nummern. Dies ist Post #10)?
 
Zurück