Bildupload mit PHP & MySQL

Dieses Thema Bildupload mit PHP & MySQL im Forum "Webentwicklung, Hosting & Programmierung" wurde erstellt von walker45, 20. März 2006.

Thema: Bildupload mit PHP & MySQL Hallo zusammen... Ich habe im Internet ein wirklich tolles PHP Upload Formular gefunden! Nun möchte ich es...

  1. Hallo zusammen...

    Ich habe im Internet ein wirklich tolles PHP Upload Formular gefunden! Nun möchte ich es erweitern! Der Filename und ein Text, soll in eine Datenbank geschrieben werden.

    Der Filename wird im folgendem Script bereits in die DB geschrieben. Jedoch nicht der dazugehörige Text!

    upload.php
    Code:
    
    <?php
    $num_of_uploads=3;
    $file_types_array=array(JPG , jpg , GIF , gif , PNG , png);
    $max_file_size=1048576;
    $upload_dir=uploads/;
    
    function uploaderFILES($num_of_uploads=1, $file_types_array=array(JPG), $max_file_size=1048576, $upload_dir=){
     if(!is_numeric($max_file_size)){
      $max_file_size = 1048576;
     }
     
    
     
     foreach($_FILES[file][error] as $key => $value)
     {
       if($_FILES[file][name][$key]!=)
       {
        if($value==UPLOAD_ERR_OK)
        {
         $origfilename = $_FILES[file][name][$key];
         $filename = explode(., $_FILES[file][name][$key]);
         $filenameext = $filename[count($filename)-1];
         unset($filename[count($filename)-1]);
         $filename = implode(., $filename);
         $filename = substr($filename, 0, 15)...$filenameext;
         $file_ext_allow = FALSE;
         for($x=0;$x<count($file_types_array);$x++){
          if($filenameext==$file_types_array[$x])
          {
           $file_ext_allow = TRUE;
          }
         } // for
         if($file_ext_allow){
          if($_FILES[file][size][$key]<$max_file_size){
           if(move_uploaded_file($_FILES[file][tmp_name][$key], $upload_dir.$filename)){
    			 
    			 
    			 $sql = INSERT INTO `images` ( `id` , `img` , `text` ) 
    VALUES (
    '',->$filename',->$text');
    ;
    mysql_query($sql);
    			 
            echo(File uploaded successfully. - <a href='.$upload_dir.$filename.' target='_blank'>.$filename.</a><br />);
           }
           else { echo('<font color=#FF0000>'.$origfilename.<br /></font> was not successfully uploaded!<br />);}
          }
          else { echo('<font color=#FF0000>'.$origfilename.<br /></font> was too big, not uploaded!<br />); }
         } // if
         else{ echo('<font color=#FF0000>'.$origfilename.<br /></font>had an invalid file extension, not uploaded!<br />); }
        }
        else{ echo('<font color=#FF0000>'.$origfilename.<br /></font>was not successfully uploaded!<br />); } // else
       }
     }
    } // funtion
    
    /////////////////////////////////////////
    ?>
     <form action='<?=$PHP_SELF;?>' method='post' enctype='multipart/form-data'>Upload files:<br /><br /><input type='hidden' name='submitted' value='TRUE' id='<?=time();?>' >
     <input type='hidden' name='MAX_FILE_SIZE' value='<?=$max_file_size;?>' >
    <?php for($x=0;$x<$num_of_uploads;$x++){
       $form .= <input type='file' name='file[]'> <input type='text' name='text[]'><br />;
      }
      $form .= <input type='submit' value='Upload'><br /><br />
      <font color='red'>*</font> Maximum file length (minus extension) is 15 characters.<br />
      <font color='red'>*</font> Anything over that will be cut to only 15 characters.<br>
      <font color='red'>*</font> Valid file types: JPG, GIF, PNG;
      
      echo($form);
    ?>  
     </form>
     
    
    
    <?php
    if(isset($_POST[submitted])){
      uploaderFILES($num_of_uploads, $file_types_array, $max_file_size, $upload_dir);
    }
    ?>			
    
    
    Die Eingaben im folgenden Input werden noch nicht in die DB gespeichert:

    Code:
    
    <input type='text' name='text[]'>
    
    
    Wie muss ich den Code vervollständigen damit, auch dieser Array (text[]) mit dem dazugehörigen filename in die DB gespeicher wird?

    Danke für Eure Hilfe!!!
     
  2. Code:
    <?php
    $num_of_uploads=3;
    $file_types_array=array(JPG , jpg , GIF , gif , PNG , png);
    $max_file_size=1048576;
    $upload_dir=uploads/;
    
    function uploaderFILES($num_of_uploads=1, $file_types_array=array(JPG), $max_file_size=1048576, $upload_dir=){
     if(!is_numeric($max_file_size)){
      $max_file_size = 1048576;
     }
     
    
     $i = 0;
     foreach($_FILES[file][error] as $key => $value)
     {
       if($_FILES[file][name][$key]!=)
       {
        if($value==UPLOAD_ERR_OK)
        {
         $origfilename = $_FILES[file][name][$key];
         $filename = explode(., $_FILES[file][name][$key]);
         $filenameext = $filename[count($filename)-1];
         unset($filename[count($filename)-1]);
         $filename = implode(., $filename);
         $filename = substr($filename, 0, 15)...$filenameext;
         $file_ext_allow = FALSE;
         for($x=0;$x<count($file_types_array);$x++){
          if($filenameext==$file_types_array[$x])
          {
           $file_ext_allow = TRUE;
          }
         } // for
         if($file_ext_allow){
          if($_FILES[file][size][$key]<$max_file_size){
           if(move_uploaded_file($_FILES[file][tmp_name][$key], $upload_dir.$filename)){
    
    
    							$sql = INSERT INTO images SET img='.$filename.', text='.$_POST[text][$i].';
    							mysql_query($sql);
    
            echo(File uploaded successfully. - <a href='.$upload_dir.$filename.' target='_blank'>.$filename.</a><br />);
           }
           else { echo('<font color=#FF0000>'.$origfilename.<br /></font> was not successfully uploaded!<br />);}
          }
          else { echo('<font color=#FF0000>'.$origfilename.<br /></font> was too big, not uploaded!<br />); }
         } // if
         else{ echo('<font color=#FF0000>'.$origfilename.<br /></font>had an invalid file extension, not uploaded!<br />); }
        }
        else{ echo('<font color=#FF0000>'.$origfilename.<br /></font>was not successfully uploaded!<br />); } // else
       }
    		 ++$i;
     }
    } // funtion
    
    /////////////////////////////////////////
    ?>
     <form action='<?=$PHP_SELF;?>' method='post' enctype='multipart/form-data'>Upload files:<br /><br /><input type='hidden' name='submitted' value='TRUE' id='<?=time();?>' >
     <input type='hidden' name='MAX_FILE_SIZE' value='<?=$max_file_size;?>' >
    <?php for($x=0;$x<$num_of_uploads;$x++){
       $form .= <input type='file' name='file[]'> <input type='text' name='text[.$x.]'><br />;
      }
      $form .= <input type='submit' value='Upload'><br /><br />
      <font color='red'>*</font> Maximum file length (minus extension) is 15 characters.<br />
      <font color='red'>*</font> Anything over that will be cut to only 15 characters.<br>
      <font color='red'>*</font> Valid file types: JPG, GIF, PNG;
      
      echo($form);
    ?>  
     </form>
    
    
    
    <?php
    if(isset($_POST[submitted])){
      uploaderFILES($num_of_uploads, $file_types_array, $max_file_size, $upload_dir);
    }
    ?>
    
    
    :1 :°
     
  3. --> Das ist das perfekte Smilie für deine Leistung :T

    DAAAAAAAAAAAANNNNKKKKKKKEEEEEE
     
  4. ups, so schnell getestet :2funny: :2funny:
     
  5. ne noch nicht! aber ich kenne dich langsam aber sicher! du bist da zuverlässig! und nur schon deine arbeit verdient ein lob!
     
  6. jetzt habe ich es getestet!

    es funktioniert! man so geil!!!!!
     
  7. Neuer Tag neue Frage! ;)

    Ich habe folgende DB:

    [table]
    [tr][td]id[/td][td]file[/td][td]text[/td][/tr]
    [tr][td]1[/td][td]hallo1.jpg[/td][td]lustiges bild 1[/td][/tr]
    [tr][td]2[/td][td]hallo2.jpg[/td][td]lustiges bild 2[/td][/tr]
    [tr][td]3[/td][td]hallo3.jpg[/td][td]lustiges bild 3[/td][/tr]
    [tr][td]4[/td][td]hallo4.jpg[/td][td]lustiges bild 4[/td][/tr]
    [tr][td]5[/td][td]hallo5.jpg[/td][td]lustiges bild 5[/td][/tr]
    [tr][td]6[/td][td]hallo6.jpg[/td][td]lustiges bild 6[/td][/tr]
    [/table]

    Nun möchte ich mit php und mysql jeweils drei bilder nebeneinander darstellen und dann kommt die nächste zeile!

    THX für eure Hilfe!
     
  8. Code:
    <?php
    $sql = SELECT * FROM images WHERE ............. ORDER by .......;
    $resID = mysql_query($sql);
    $i = 0;
    ?>
    <table align=center width=100% cellpadding=0 cellspacing=0>
    	<tr>
    <?php
    while($row = @mysql_fetch_array($resID, MYSQL_BOTH)) {
    	if($i > 0 && $i % 3 == 0) echo </tr><tr>;
    	$re =-><td width=33% align=center>';
    	$re .=-><p align=center><img src='.$row[img].' alt=????></p>';
    	$re .=-><p align=center>'.$row[text].'</p>';
    	$re .=-></td>';
    	echo $re;
        ++$i;
    }
    ?>
    	</tr>
    </table>
    
    :° :°
     
  9. hast du auch ein spendenkonto? --> :1
     
  10. Hallo...

    Ich habe folgenden Code, welches mir die Formulardaten auswertet und anschliessend die Files hochlädt bzw. allfällige Fehlermeldungen ausgibt (Funktioniert toll)! Mein Problem ist es, dass wenn ein User eine Datei mit dem gleichen Filename hochlädt, das bereits existierende File überschreibt. Das möchte ich verhindern. Bzw soll er dann eine Fehler meldung ausgen z.b. -> Dateiname existiert bereits!

    Glücklicher weise, habe ich alle Dateinamen in einder DB gespeichert man muss also nur noch die hochgeladenen Files mit den Einträgen in der DB prüfen doch genau da weiss ich nicht wie das geht!

    Es wäre toll wenn mir jemand helfen könnte!

    funtion.php
    Code:
    <table class=main2>
    						<tr>
    						<td>
    					
    							
    								
    						<?php
    $num_of_uploads=3;
    $file_types_array=array(JPG , jpg , GIF , gif , PNG , png);
    $max_file_size=1048576;
    $upload_dir=./thumbnails/images/;
    
    
    
    function uploaderFILES($num_of_uploads=1, $file_types_array=array(JPG), $max_file_size=1048576, $upload_dir=){
     if(!is_numeric($max_file_size)){
      $max_file_size = 1048576;
     }
     
    
     $i = 0;
     foreach($_FILES[file][error] as $key => $value)
     {
       if($_FILES[file][name][$key]!=)
       {
        if($value==UPLOAD_ERR_OK)
        {
         $origfilename = $_FILES[file][name][$key];
         $filename = explode(., $_FILES[file][name][$key]);
         $filenameext = $filename[count($filename)-1];
         unset($filename[count($filename)-1]);
         $filename = implode(., $filename);
         $filename = substr($filename, 0, 15)...$filenameext;
         $file_ext_allow = FALSE;
         for($x=0;$x<count($file_types_array);$x++){
          if($filenameext==$file_types_array[$x])
          {
           $file_ext_allow = TRUE;
          }
         } // for
         if($file_ext_allow){
          if($_FILES[file][size][$key]<$max_file_size){
           if(move_uploaded_file($_FILES[file][tmp_name][$key], $upload_dir.$filename)){
    
    
    $sql = INSERT INTO images SET img='.$filename.', text='.$_POST[text][$i].';
    mysql_query($sql);
    
    
    echo <p align=\center\>;
    
            echo(File uploaded successfully. - <a href='.$upload_dir.$filename.' target='_blank'>.$filename.</a><br />	  
    			  
    			  <br />);		  
    			 
    			  
    	thumb($filename);
    	
    	echo <br /><br /></p>;
    	
     
           }
           else { echo('<font color=#FF0000>'.$origfilename.<br /></font> was not successfully uploaded!<br />);}
          }
          else { echo('<font color=#FF0000>'.$origfilename.<br /></font> was too big, not uploaded!<br />); }
         } // if
         else{ echo('<font color=#FF0000>'.$origfilename.<br /></font>had an invalid file extension, not uploaded!<br />); }
        }
        else{ echo('<font color=#FF0000>'.$origfilename.<br /></font>was not successfully uploaded!<br />); } // else
       }
    ++$i;
     }
    } // funtion
    
    /////////////////////////////////////////
    ?>
    
    <?php
    if(isset($_POST[submitted])){
    
    echo ;
    
    }
    
    else
    {
    include(form.php);
    }
    
    ?>
    
    
    <?php
    if(isset($_POST[submitted])){
    
    
     echo<div id=\div_big\>;
      uploaderFILES($num_of_uploads, $file_types_array, $max_file_size, $upload_dir);
      
      echo </div>;
      
      }
    
    ?>	
    		
    </td>
    </tr>
    </table>
    
    
    <p align=center class=copyright><a href=?cid=view.php>return to main page</a></p>
    
    
    Hier das Formular:

    form.php
    Code:
     <form action='<?=$PHP_SELF;?>' method='post' enctype='multipart/form-data'>Upload files:<br /><br /><input type='hidden' name='submitted' value='TRUE' id='<?=time();?>' >
     <input type='hidden' name='MAX_FILE_SIZE' value='<?=$max_file_size;?>' >
    <?php for($x=0;$x<$num_of_uploads;$x++){
       $form .= <input type='file' name='file[]'> <input type='text' name='text[.$x.]' style='width:300px;' value='Your text...'>;
      }
      $form .= <input type='submit' value='Upload'><br /><br />
      <font color='red'>*</font> Maximum file length (minus extension) is 15 characters.<br />
      <font color='red'>*</font> Anything over that will be cut to only 15 characters.<br>
      <font color='red'>*</font> Valid file types: JPG, GIF, PNG<br />
    <font color='red'>*</font> The owner of this site does not take responsibility for uploaded pictures.<br /><br />;
      
      echo($form);
    ?>  
     </form>
    
    
    
    
    
    
    
    
    
    
    
    
     
Die Seite wird geladen...

Bildupload mit PHP & MySQL - Ähnliche Themen

Forum Datum
PHP: Bildupload mit sofortiger Anzeige Webentwicklung, Hosting & Programmierung 12. Apr. 2005
Ebay Super Seller 2.0 Easy-Absturz bei Bildupload Windows XP Forum 29. Dez. 2004
Versionsprobleme mit der "mysql.dll" (32 und 64bit) Windows 7 Forum 28. Juni 2016
Mysql-Zugriff via batch Webentwicklung, Hosting & Programmierung 16. Okt. 2014
Automatisierte MySQL Backups erstellen Windows XP Forum 28. Aug. 2012