8791 sujets

Développement web côté serveur, CMS

Salut,
Quelqu'un peut m'aider à trouver une solution plus efficace à celle ci..
(l'Insertion de lien de l'image dans la base de données en respectant les colonnes)..
index.php

<FORM ENCTYPE="multipart/form-data" ACTION="cible.php" METHOD="post">
<b>Upload de fichier dans ce repertoire :</b><br>
Choisissez un fichier sur votre disque et cliquez sur Envoyer<br>

<?
   // regarde le name des input... il y a [] à la fin
   // ça va générer un tableau
?>

Fichier  : <INPUT NAME="srcfichier[]" TYPE="file" size="20"><br>
Fichier  : <INPUT NAME="srcfichier[]" TYPE="file" size="20"><br>
Fichier  : <INPUT NAME="srcfichier[]" TYPE="file" size="20"><br>

<input type="submit" value="Envoyer"></FORM>


cible.php

<?php

// Si le form est parti
if(@$_FILES) {

   // Pendant l'étape de construction du formulaire, fais afficher tes variables
   // Tu t'y retrouveras plus facilement [cligne]

   /*
echo "<pre>";
print_r(@$_FILES);
echo "</pre>";
   */

   $racine="./pics";

   // Pour chaque input
   for($i=0;$i<sizeof($_FILES["srcfichier"]["name"]);$i++) {

      // Si l'input est vide, on passe
      if(!$_FILES["srcfichier"]["name"][$i]) continue;
      $extensions= array ('.png', '.gif', '.jpg', '.jpeg');
      $name = $_FILES["srcfichier"]["name"][$i];
      $ext = substr($name, strrpos($name, ".") + 1); 
      $nom_fichier=basename($name,".".$ext);
	  $size=$_FILES['srcfichier']['size'][$i]; 
	  $type=$_FILES['srcfichier']['type'];
	  $extension = strrchr($_FILES['srcfichier']['name'][$i], '.');

      // Pour éviter d'écraser l'ancien en cas de doublon
      $n="";
      while(file_exists("$racine/$nom_fichier$n.$ext")) $n++;
      $nom_fichier="$nom_fichier$n.$ext";
	
	if ($size<=1000000 && in_array($extension, $extensions))
	{
      // Fin de l'upload
      if (@move_uploaded_file($_FILES["srcfichier"]["tmp_name"][$i], "$racine/$nom_fichier")){
         @chmod("$racine/$nom_fichier", 0777);
         
			$x1="$racine/$nom_fichier";
			$pic[$i] = "$x1";
			
     
      } else {
         echo "Erreur, impossible d'envoyer le fichier <i>$nom_fichier</i><br>\n";
      }}
	else 
	  echo "Votre image a été rejetée (poids, taille ou type incorrect)" ;  
	}
   
}

if ( $pic[0]== "" && $pic[1]!="" && $pic[2]!="")
	{
	$sql = "INSERT  INTO annonce (titre, categorie, souscategorie, gouvernerat, message,prix,img2,img3)
            VALUES ( '$titre', '$categorie', '$souscategorie', '$gouvernerat', '$message','$prix','$pic[1]','$pic[2]') " ;
 
  //exécution de la requête SQL:
  $requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
 //affichage des résultats, pour savoir si l'insertion a marchée:
  if($requete)
  {
    echo("L'insertion a été correctement effectuée") ;
  }
  else
  {
    echo("L'insertion à échouée") ;
  }
		
	}

else if ( $pic[0]!="" && $pic[1]=="" && $pic[2]!="")
	{
	$sql = "INSERT  INTO annonce (titre, categorie, souscategorie, gouvernerat, message,prix,img1,img3)
            VALUES ( '$titre', '$categorie', '$souscategorie', '$gouvernerat', '$message','$prix','$pic[0]','$pic[2]') " ;
 
  //exécution de la requête SQL:
  $requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
 //affichage des résultats, pour savoir si l'insertion a marchée:
  if($requete)
  {
    echo("L'insertion a été correctement effectuée") ;
  }
  else
  {
    echo("L'insertion à échouée") ;
  }
		
	}
	
else if ( $pic[0]!= "" && $pic[1]!="" && $pic[2]=="")
	{
	$sql = "INSERT  INTO annonce (titre, categorie, souscategorie, gouvernerat, message,prix,img1,img2)
            VALUES ( '$titre', '$categorie', '$souscategorie', '$gouvernerat', '$message','$prix','$pic[0]','$pic[1]') " ;
 
  //exécution de la requête SQL:
  $requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
 //affichage des résultats, pour savoir si l'insertion a marchée:
  if($requete)
  {
    echo("L'insertion a été correctement effectuée") ;
  }
  else
  {
    echo("L'insertion à échouée") ;
  }
		
	}
	
else if ( $pic[0]!= "" && $pic[1]=="" && $pic[2]=="")
	{
	$sql = "INSERT  INTO annonce (titre, categorie, souscategorie, gouvernerat, message,prix,img1)
            VALUES ( '$titre', '$categorie', '$souscategorie', '$gouvernerat', '$message','$prix','$pic[0]') " ;
 
  //exécution de la requête SQL:
  $requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
 //affichage des résultats, pour savoir si l'insertion a marchée:
  if($requete)
  {
    echo("L'insertion a été correctement effectuée") ;
  }
  else
  {
    echo("L'insertion à échouée") ;
  }
		
	}
	
else if ( $pic[0]== "" && $pic[1]!="" && $pic[2]=="")
	{
	$sql = "INSERT  INTO annonce (titre, categorie, souscategorie, gouvernerat, message,prix,img2)
            VALUES ( '$titre', '$categorie', '$souscategorie', '$gouvernerat', '$message','$prix','$pic[1]') " ;
 
  //exécution de la requête SQL:
  $requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
 //affichage des résultats, pour savoir si l'insertion a marchée:
  if($requete)
  {
    echo("L'insertion a été correctement effectuée") ;
  }
  else
  {
    echo("L'insertion à échouée") ;
  }
		
	}
	
	
else if ( $pic[0]== "" && $pic[1]=="" && $pic[2]!="")
	{
	$sql = "INSERT  INTO annonce (titre, categorie, souscategorie, gouvernerat, message,prix,img3)
            VALUES ( '$titre', '$categorie', '$souscategorie', '$gouvernerat', '$message','$prix','$pic[2]') " ;
 
  //exécution de la requête SQL:
  $requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
 //affichage des résultats, pour savoir si l'insertion a marchée:
  if($requete)
  {
    echo("L'insertion a été correctement effectuée") ;
  }
  else
  {
    echo("L'insertion à échouée") ;
  }
		
	}
	
else if ( $pic[0]!= "" && $pic[1]!="" && $pic[2]!="")
	{
	$sql = "INSERT  INTO annonce (titre, categorie, souscategorie, gouvernerat, message,prix,img1,img2,img3)
            VALUES ( '$titre', '$categorie', '$souscategorie', '$gouvernerat', '$message','$prix','$pic[0]','$pic[1]','$pic[2]') " ;
 
  //exécution de la requête SQL:
  $requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
 //affichage des résultats, pour savoir si l'insertion a marchée:
  if($requete)
  {
    echo("L'insertion a été correctement effectuée") ;
  }
  else
  {
    echo("L'insertion à échouée") ;
  }
		
	}
	
else
{
//création de la requête SQL:
  $sql = "INSERT  INTO annonce (titre, categorie, souscategorie, gouvernerat, message,prix)
            VALUES ( '$titre', '$categorie', '$souscategorie', '$gouvernerat', '$message','$prix') " ;
 
  //exécution de la requête SQL:
  $requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
 //affichage des résultats, pour savoir si l'insertion a marchée:
  if($requete)
  {
    echo("L'insertion a été correctement effectuée") ;
  }
  else
  {
    echo("L'insertion à échouée") ;
  }}
?>