IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Upload de plusieurs images et insertion de données [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 54
    Par défaut Upload de plusieurs images et insertion de données
    Bonjour à tous et merci d'avance pour l'aide que vous m'apporterez j'essaye d'uploader plusieurs images en meme temps et d'insérer mes données dans ma BDD mais malheureusement rien ne se pas. C'est en PHP5. La fonction addSujet fait un insert et la fonction modif une modification pour chaque image. Merci de bien vouloir m'aider sur ceci.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    <?php
     
    session_start();
    require_once("class_SujetMois.php");
    require_once("connexion.php");
    $sujet=unserialize($_SESSION['sujet']);
     
    extract($_POST);
     
    $nom=$_POST['nom'];
    $moisSujet=$_POST['moisSujet'];
    $desc=$_POST['desc'];
    $desc1=$_POST['desc1'];
    $desc2=$_POST['desc2'];
    $desc3=$_POST['desc3'];
    $desc4=$_POST['desc4'];
    $desc5=$_POST['desc5'];
    $desc6=$_POST['desc6'];
    $desc7=$_POST['desc7'];
    $desc8=$_POST['desc8'];
    $desc9=$_POST['desc9'];
    $desc10=$_POST['desc10'];
     
    for ($i = 1; $i < count($_FILES['fichier']['name']); $i++)
    {
    	if (isset($_POST['posted']))
    	{
    		//$_FILES existe on récupère les infos qui nous intéressent
    		$fichier=$_FILES['fichier']['name'][$i];//nom réel de l'image
    		$size=$_FILES['fichier']['size'][$i]; //poids de l'image en octets
    		$tmp=$_FILES['fichier']['tmp_name'][$i];//nom temporaire de l'image (sur le serveur)
    		$type=$_FILES['fichier']['type'][$i];//type de l'image
     
    		$extensions = array("jpg","bmp"); // Extension du fichier sans le .
    		$max_size = 1000000; // Taille max en octets du fichier
    		$width_max = 1000; // Largeur max de l'image en pixels
    		$height_max = 2000; // Hauteur max de l'image en pixels
     
    		//On récupère la taille de l'image
    		list($width,$height)=getimagesize($tmp);
     
    		if (is_uploaded_file($tmp)) //permet de vérifier si le fichier a été uplodé via http
    		{
    			if(in_array(strtolower(substr($fichier,-3)), $extensions))
    			{
    				//vérification du type de l'img, son poids et sa taille
    				if ($size<=$max_size && $width<=$width_max && $height<=$height_max) 
    				{
    					// type mime gif, poids < à 20500 octets soit environ 20Ko, largeur = hauteur = 100px
    					//Pour supprimer les espaces dans les noms de fichiers car celà entraîne une erreur lorsque vous voulez l'afficher
    					$fichier = preg_replace ("` `i","",$fichier);//ligne facultative :)
     
    					//On vérifie s'il existe une image qui a le même nom dans le répertoire
    					if (file_exists('./fichiers_up/'.$fichier))
    					{
    						if($type=="image/jpeg")
    						{
    							$nom_final= preg_replace("`.jpg`is",date("U").".jpg",$fichier); 
    						}	
    						if($type=="image/bmp")
    						{
    							$nom_final= preg_replace("`.bmp`is",date("U").".bmp",$fichier); 
    						}			
    					}
    					else 
    					{
    						$nom_final=$fichier; //l'image n'existe pas on garde le même nom
    					}
     
    					$content_dir='./img/';
     
    					//on déplace l'image dans le répertoire final
    					if (move_uploaded_file($tmp,$content_dir.$nom_final)) 
    					{ 
    						if($i==1)
    							$sujet->addSujet($nomSujet, $moisSujet, $descriptionS, $desc1, $desc2, $desc3, $desc4, $desc5, $desc6, $desc7, $desc8, $desc9, $desc10, $nom_final,'','','','','','','', '','');
    						if($i==2)
    							$sujet->mod1($nom_final);
    						if($i==3)
    							$sujet->mod2($nom_final);
    						if($i==4)
    							$sujet->mod3($nom_final);
    						if($i==5)
    							$sujet->mod4($nom_final);
    						if($i==6)
    							$sujet->mod5($nom_final);
    						if($i==7)
    							$sujet->mod6($nom_final);
    						if($i==8)
    							$sujet->mod7($nom_final);
    						if($i==9)
    							$sujet->mod8($nom_final);	
    						if($i==10){
    							$sujet->mod9($nom_final);
    							echo "<div id='message_ok'>Le fichier a été uploadée avec succès</div><br/>"; }
     
    					}	 
    					else 
    					{ 
    	                    //l'image ne peut être déplacée, on supprime le fichier temporaire 
    	                    @ unlink ($tmp); 
    	                    echo '<div id="message_erreur">L\' image n\'a pu être déplacée !</div><br/>'; 
     
    					}
    				}
    				else 
    				{
    					echo "<div id='message_erreur'>Votre fichier a été rejetée (poids ou taille incorrect)</div><br/>"; 
    				}
    			}
    			else {echo "<div id='message_erreur'>Votre fichier a été rejetée (type incorrect)</div><br/>"; }
    		}
    	}
     
     
    	else
    	{
    		echo "<SCRIPT type=\"text/javascript\">alert(\"Erreur, ajout sujet !\");</SCRIPT>";
    	}
    }
     
     
     
    ?>

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Il faut que tu debug ton script en placant des echos a differents endroit afin de suivre le déroulement.
    Tu trouveras ainsi quelle étape bloque.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 54
    Par défaut
    je l'ai fait et je pense que c'est mon upload qui marche pas mai je ne vois pas du tout où

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    C'est a dire ? Quelle est la derniere étape qui fonctionne dans ton script ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 54
    Par défaut
    Il rentre pas dans la boucle for je ne sais pas pourquoi si quelqu'un peut m'aider à y voir plus clair s'il vous plaît

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    controle ce que vaut count($_FILES['fichier']['name'])
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PHP 5.3] Upload de plusieurs images => rien dans le dossier
    Par beegees dans le forum Langage
    Réponses: 4
    Dernier message: 06/06/2011, 09h37
  2. Réponses: 6
    Dernier message: 21/03/2011, 21h30
  3. Upload de plusieurs images
    Par Blito dans le forum Langage
    Réponses: 6
    Dernier message: 02/07/2010, 12h17
  4. [Upload] Télécharger plusieurs images en même temps
    Par tarzanjane dans le forum Langage
    Réponses: 3
    Dernier message: 14/04/2009, 12h32
  5. Réponses: 2
    Dernier message: 18/03/2007, 19h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo