Comment faire upload image

dream68 -  
 dream68 -
Bonjour,

j'aimerai savoir comment faire un upload image sur dreamweaver. J'utilise l'extension php upload mais impossible d'ecrire dans la base de donnee. Y aurai t il une extension qui possede deja tout

3 réponses

  1. adrien31200 Messages postés 75 Date d'inscription   Statut Membre Dernière intervention   1
     
    on écrit pas dans la bdd avec un upload ...
    0
    1. dream68
       
      oui mais comment faire .... help
      0
  2. lezao Messages postés 505 Statut Membre 36
     
    LEZAO le magicien est arrivé voici un code complet avec redimensision LIB GD et inscription dans base de donnée a partir d'un formulaire HTML
    Il faut adapter les variables biensur et avoir la librairie GD d'installé sur le serveur :

    <?php    
    
    $hauteur ="500" ;   
    $largeur = "500" ;   
    $_POST["dossier"] = "/upload";
    
    //ON RECUPERE LE FICHIER ET ON LE TEST    
    
    if($_FILES['userfile']['name'] != ""){    
     if($_FILES['userfile']['size']>0 and $_FILES['userfile']['size']<$MFS){    
    if ($_FILES['userfile']['type'] == "image/pjpeg" or $_FILES['userfile']['type'] =="image/jpeg" or $_FILES['userfile']['type'] =="image/jpg") {$code_nom = rand(10000000,100000000); session_register('code_nom'); $affup1 = $_FILES['userfile']['name'];include("redim.php"); $titre = $_POST["titre"] ; include("inscription_bdd.php");}else {echo "Mauvaise extension: Nous n'acceptons ces deux formats : JPG et JPEG";}    
    }else{echo "<font color=red>FICHIER: ".$_FILES['userfile']['name']." TROP LOURD</font></br>POID DE : ".$_FILES['userfile']['name']." = ".$_FILES['userfile']['size']." OCTETS</br>";}}    
    
    ?>    
    
    //FICHIER REDIMENSION LIB GD (redim.php)    
    
    <?php    
                                                    //JE RECUPERE L'IMAGE EN JPG :    
                                                    $ImageChoisie = imagecreatefromjpeg($_FILES['userfile']['tmp_name']);    
         
                                                    //JE VERIFIE SA TAILLE :    
                                                    $TailleImageChoisie = getimagesize($_FILES['userfile']['tmp_name']);    
                    
                    
                // //JE DEFINIS LA NOUVELLE TAILLE DE L'IMAGE QUI SERA INSEREE :    
                if($TailleImageChoisie[1] > $hauteur){include("redimL.php");}else{    
                    
                if($TailleImageChoisie[0] > $largeur){$NouvelleTailleImage = $hauteur;}else{$NouvelleTailleImage = $TailleImageChoisie[0] ;}    
         
                                                    //JE CALCULE LE POURCENTAGE DE REDUCTION :    
                                                    $Reduction = ( ($NouvelleTailleImage * 100)/$TailleImageChoisie[0] );     
         
                                                    //JE DEFINIS LA NOUVELLE LARGEUR DE L'IMAGE :    
                                                    $NouvelleHauteurImage = ( ($TailleImageChoisie[1] * $Reduction) / 100);     
         
                                                    //ON CREE DONC UN DOUBLE DE L'IMAGE QUI SERA CELLE AFFICHEE :    
                                                    $ImageChoisie = imagecreatefromjpeg($_FILES['userfile']['tmp_name']);    
                                                    $NouvelleImage = imagecreatetruecolor($NouvelleTailleImage , $NouvelleHauteurImage) or die ("Erreur");    
         
                                                    //PUIS JE COPIE ET JE REECHANTILLONNE L'IMAGE DE DEPART :    
                                                    imagecopyresampled($NouvelleImage , $ImageChoisie  , 0,0, 0,0, $NouvelleTailleImage , $NouvelleHauteurImage, $TailleImageChoisie[0],$TailleImageChoisie[1]);    
         
                                                    //JE N'AI PLUS QU'A DETRUIRE L'IMAGE CHOISIE AU DEPART QUI NE SERT PLUS A RIEN :    
                                                    imagedestroy($ImageChoisie);    
                                                        
                                                    // JE NE GARDE QUE LE NOM DE L'IMAGE SANS SON EXTENSION :    
                                                    $NomImageChoisie = explode('.', $_FILES['userfile']['name']);    
                                                    //JE L'APPELLE $NomImageExploitable :    
                                                    $NomImageExploitable ='';    
                                                    // JE NOMME LE PREMIER TERME DE L'EXPLODE : i    
                                                   // $i=0;    
                                                    //JE DECOUPE LE TERME NomImage EN AUTANT DE CHAÎNE QU'il Y EN A GRACE A -1, ET LE PREMIER TERME JE L'APPELLE $NomImage[0]    
                                                   // while($i< (count($NomImageChoisie)-1) )    
                           // {    
                               /// $NomImageExploitable = $NomImageChoisie[0];    
                                                        //    $i++;    
                                                  //  }    
                                                    //LA PREMIERE CHAINE EST NomImageExploitable, JE LA PASSE EN IMAGEJPEG POUR EN CREER UN FICHIER JPEG AVEC UNE QUALITE DE  100 :    
                                                    $NomImageExploitable = ${'code_nom'.$i} ;    
                imagejpeg($NouvelleImage , "../".$_POST["dossier"]."/".$NomImageExploitable.'.jpg', 100);    
                                                        
                                                    //LE LIEN VERS L'IMAGE EST DONC :    
                            $LienImageNews = "../".$_POST["dossier"]."/".$NomImageExploitable.'.jpg';      
          //resultat    
          //echo "<div align=center><font color=blue>Votre photo: ".$_FILES[$userfile]['name']." vient d'etre uploade </font></div></br>";      
          chmod("".$LienImageNews."", 0644);    
          echo "<font color='#6382A0'>Photo uploadé : </font>".$LienImageNews."</br>";    
          }            
    ?>    
    
    
    //FICHIER INSCRIPTION DANS LA BDD (inscription_bdd.php)    
    
    
    <?    
    
    $query_annonce = "INSERT INTO ma_table(titre,adresse)";    
    $query_annonce .= " VALUES('".$titre."','$NomImageExploitable')";     
    
    
    ?>
    0
    1. dream68
       
      POURRAI TU ME DIRE OU EST L ERREUR ( c'est un code qui insert l'image dans un dossier mais n''ecri pas dans la base , j'aimerai egalement la renomer avec id_utilisateur)

      lol (rien que ca)


      <?php
      // ---------------------------------------------
      // Pure PHP Upload version 1.1
      // -------------------------------------------
      if (phpversion() > "4.0.6") {
      $HTTP_POST_FILES = &$_FILES;
      }
      define("MAX_SIZE",300000);
      define("DESTINATION_FOLDER", "./images");
      define("no_error", "merci.php");
      define("yes_error", "erreurdesaisis.php");
      $_accepted_extensions_ = "jpg,bmp,jpeg";
      if(strlen($_accepted_extensions_) > 0){
      $_accepted_extensions_ = @explode(",",$_accepted_extensions_);
      } else {
      $_accepted_extensions_ = array();
      }
      /* modify */
      if(!empty($HTTP_POST_FILES['fileField'])){
      if(is_uploaded_file($HTTP_POST_FILES['fileField']['tmp_name']) && $HTTP_POST_FILES['fileField']['error'] == 0){
      $_file_ = $HTTP_POST_FILES['fileField'];
      $errStr = "";
      $_name_ = $_file_['name'];
      $_type_ = $_file_['type'];
      $_tmp_name_ = $_file_['tmp_name'];
      $_size_ = $_file_['size'];
      if($_size_ > MAX_SIZE && MAX_SIZE > 0){
      $errStr = "File troppo pesante";
      }
      $_ext_ = explode(".", $_name_);
      $_ext_ = strtolower($_ext_[count($_ext_)-1]);
      if(!in_array($_ext_, $_accepted_extensions_) && count($_accepted_extensions_) > 0){
      $errStr = "Estensione non valida";
      }
      if(!is_dir(DESTINATION_FOLDER) && is_writeable(DESTINATION_FOLDER)){
      $errStr = "Cartella di destinazione non valida";
      }
      if(empty($errStr)){
      if(@copy($_tmp_name_,DESTINATION_FOLDER . "/" . $_name_)){
      header("Location: " . no_error);
      } else {
      header("Location: " . yes_error);
      }
      } else {
      header("Location: " . yes_error);
      }
      }
      }

      if (!function_exists("GetSQLValueString")) {
      function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
      {
      if (PHP_VERSION < 6) {
      $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
      }

      $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);

      switch ($theType) {
      case "text":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;
      case "long":
      case "int":
      $theValue = ($theValue != "") ? intval($theValue) : "NULL";
      break;
      case "double":
      $theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
      break;
      case "date":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;
      case "defined":
      $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
      break;
      }
      return $theValue;
      }
      }

      $editFormAction = $_SERVER['PHP_SELF'];
      if (isset($_SERVER['QUERY_STRING'])) {
      $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
      }

      if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
      $insertSQL = sprintf("INSERT INTO img (img1) VALUES (%s)",
      GetSQLValueString($_POST['fileField'], "text"));

      mysql_select_db($database_TESTr, $TESTr);
      $Result1 = mysql_query($insertSQL, $TESTr) or die(mysql_error());
      }
      ?>
      <?php require_once('../Connections/TESTr.php'); ?>
      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
      <title>Document sans titre</title>
      </head>

      <body>
      <form action="<?php echo $editFormAction; ?>" method="POST" enctype="multipart/form-data" name="form1" id="form1">
      <label>
      <input type="file" name="fileField" id="fileField" />
      </label>
      <label>
      <input type="submit" name="button" id="button" value="Envoyer" />
      </label>
      <input type="hidden" name="MM_insert" value="form1" />
      </form>
      </body>
      </html>
      0
    2. lezao Messages postés 505 Statut Membre 36
       
      trop compliqué ! je suis fatigué la, essayes mon code plutot.
      0
    3. dream68
       
      ta pas une solution simple et efficace car ton code est aussi compliqué (dsl mais je debute) ??? merci
      0