J'utilise la méthode PDO et je travail sur un projet ou une personne doit telecharger deux image grace a un input file ensuite une image va dans un ficher "upload" et l'autre dans un fichier "upload2" puis les deux s'affiche cote a cote sur le site j'ai reussi a faire afficher la premiere image mais paa la deuxieme. Merci de bien vouloir m'aider
Ou je demande d'inserer les deux images
<?php
include "connect.php";
if(isset($_POST['ok']))
{
$folder ="uploads/";
$image = $_FILES['image']['name'];
$path = $folder . $image ;
$target_file=$folder.basename($_FILES["image"]["name"]);
$imageFileType=pathinfo($target_file,PATHINFO_EXTENSION);
$allowed=array('jpeg','png' ,'jpg'); $filename=$_FILES['image']['name'];
$ext=pathinfo($filename, PATHINFO_EXTENSION); if(!in_array($ext,$allowed) )
{
echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";
}
if(file_exists('uploads/'.$filename)){
echo"Changer le nom de votre image";
}
else{
move_uploaded_file( $_FILES['image'] ['tmp_name'], $path);
$sth=$con->prepare("insert into users(image)values(:image) ");
$sth->bindParam(':image',$image);
$sth->execute();
}
}
?>
<?php
include "connect.php";
if(isset($_POST['ok']))
{
$folder2 ="uploads2/";
$image2 = $_FILES['image2']['name'];
$path2 = $folder2 . $image2 ;
$target_file2=$folder2.basename($_FILES["image"]["name"]);
$imageFileType2=pathinfo($target_file,PATHINFO_EXTENSION);
$allowed2=array('jpeg','png' ,'jpg'); $filename2=$_FILES['image2']['name'];
$ext2=pathinfo($filename2, PATHINFO_EXTENSION); if(!in_array($ext2,$allowed2) )
{
echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";
}
if(file_exists('uploads2/'.$filename2)){
echo"Changer le nom de votre image";
}
else{
move_uploaded_file( $_FILES['image2'] ['tmp_name'], $path2);
$sth2=$con->prepare("insert into users(image2)values(:image2) ");
$sth2->bindParam(':image2',$image2);
$sth2->execute();
}
}
?>
<form method="POST" enctype="multipart/form-data">
<input type="file" name="image" />
<input type="file" name="image2" />
<input type="submit" name="ok"/>
</form>
<a href="select.php">See Image</a>
Dans ton second code, ligne 15, tu renseignes le mauvais nom de dossier : "uploads2" au lieu de "uploads".
EDIT
Après une relecture plus poussée de ton premier code source, il s'avère que tu as procédé à un bête copier-coller de ton bloc : tu inclus deux fois le fichier de connexion, tu te retrouves avec deux dossiers d'uploads, etc. Mauvaise pratique, à mon avis. La première chose que tu devrais faire est de refactoriser le tout pour obtenir un code plus clair et concis.
La table que tu as créée côté base de données est également mauvaise : chaque identifiant ne devrait correspondre qu'à une seule image uploadée, au lieu de deux.
Avoir deux dossiers différents pour les uploads d'image est contre-productif. Avant d'aller plus loin, tu peux fournir un screenshot du contenu de ta table "users", s'il te plaît ?
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
julp.fr ~ PHP < 8.0.0 : activer les erreurs PDO/SQL ~ PHP < 8.1.0 : activer les erreurs mysqli