Page 1 sur 1

uplaoder plusieurs images

Posté : 02 févr. 2006, 14:35
par fadi_hani1
bonjour,
je veux uplaoder plusieurs images et enregistre les nom des images dans une base donne mysql .
j ai dejat fait ca pour une seule image :voila le code
page:upload.php
<?php
//DEFINITION DES VARIABLES
//--------------------------------------

$max_size = 100000; // Taille max en octets du fichier
$width_max = 100; // Largeur max de l'image en pixels
$height_max = 100; // Hauteur max de l'image en pixels

$nom_file = $_FILES['file']['name'];
$extension = substr(strrchr($nom_file, "."), 0); // Récupération de l'extension
//$newname =($rename.$ext);
$extensions_ok = array(".jpg",".gif",".png",".jpeg");

// On vérifie si le champ est rempli
   //1 if
  if($_FILES['file']['name'])
  {

// On vérifie l'extension du fichier
    //2 if
    if(in_array(strtolower($extension),$extensions_o
k))
    {
    // On récupère les dimensions du fichier

    $infos_img = getimagesize($_FILES['file']['tmp_name']);

    // On vérifie les dimensions et taille de l'image
    //3 if
    if(($infos_img[0] <= $width_max) && ($infos_img[1] <= $height_max) && ($infos_img[2] <= $max_size))
    {

//vos paramettre conection
$db = mysql_connect('localhost','root','') or die ('erreur de connexion');//mysql_connect("", "", "");
//votre table upl2
mysql_select_db('upl2',$db);//mysql_select_db(""
);

//chemin voudra dire le chemin de deplacement de l'image (votre repertoire img que vous aurez creer bien sur
$chemin = "./img/".$nom_file;
//table voudra dire que c'est la table images  la vous avez compris loll
$table = "images";
//$rename = $_POST["rename"];

// on balance la maneuvre
move_uploaded_file($HTTP_POST_FILES["file"]["tmp
_name"],$chemin);
//et pour finir on même ca dans la base de donnée
//mysql_query("INSERT INTO images (file, titre, description, nom) VALUES('$newname','$titre','description$','$nom'
);");
mysql_query("INSERT INTO images VALUES('$nom_file','$nom_file','$nom_file','$che
min')");
//echo "Bonjour $nom, merci pour votre inscription ";
echo "envoye terminé $extension $nom_file";

}
//3else
else
{
echo "vérifie les dimensions et taille de l'image";
}

 }
 //2 else
 else
 {
 echo "non extension";
 }
}
//1 else
  else
  {
  echo "remplir le champs ";
  }
?>
page:index.php
<form enctype="multipart/form-data" name="photos"method="post" action="upload.php">
  <div align="left">
    <p><br>
    image1:
    <input name="file" type="file">
    
    <input type="submit" name="submit" value="Upload">
    </p>
   
    
    </div>
</form>
donc SVP j ai besoin de resole ce problem et merci

Posté : 02 févr. 2006, 14:49
par zeus
modération :
1°/ utilise les balises PHP pour encadrer ton code, ça serat plus clair à lire
2°/ quelle est ta question ? PAs de question :arrow: pas de réponse
3°/ Pas de question dans le forum des développeurs :arrow: sujet déplacé ;)

uploade plusieures images

Posté : 02 févr. 2006, 17:14
par fadi_hani1
bonjour
j ai dejat fait uploade d une seule image avec enregistrement de le nom d image dans la base donne.
et mtn j ai besoin de faire le meme travail mais avec plusieurs images .
donc comment le faire ?les modifes a ajoute dans le code.


et pardon parceke je suis encor debutant
et merci bien de votre aide

Posté : 21 févr. 2006, 21:13
par Invité
Salut,

Je répond un peu tard mais bon...

Juste un petit truc. Je ne pense pas que faire un test de format d'image sur son extension soit très sur.

Voici une proposition :
<?php
$ArrayTypeImages = array(	1  => "GIF", 
2  => "JPG", 
3  => "PNG", 
4  => "SWF", 
5  => "PSD", 
6  => "BMP", 
7  => "TIFF", 
8  => "TIFF", 
9  => "JPC", 
10  => "JP2", 
11  => "JPX", 
12  => "JB2", 
13  => "SWC", 
14  => "IFF");

function Extension () {
	$ImageSize = getimagesize($FichierImage);
	return strtolower($ArrayTypeImages[$ImageSize[2]]);
}
?>
En espérant que ça te soit utile...

@++ Pilou

Posté : 21 févr. 2006, 23:24
par mafio
Utilise une boucle
for
ou
while

Et execute le script autant de fois qu'il le faut :wink:

Boucle

Posté : 22 févr. 2006, 19:55
par Redman
Tu utilises une boucle :
for each $_Files
//puis le code que tu as mis