Upload imageS php + mysql

bonneaup Messages postés 3 Statut Membre -  
Scienti Messages postés 14 Statut Membre -
Bonjour à tous, voici mon problème. J'ai un formulaire qui permet d'entrer 3 données + téléversé 3 images. La requête SQL marche super bien, un nouvel item est créer avec les 3 données, mais les pathway ne sont jamais entrés, normal les 3 images ne sont jamais téléversés.

Je vous laisse mon code, en espérant que quelqu'un voit ce qui cloche, pourtant quand je regardes les différentes ressources sur le net cela me semble correct. Et mon server accepte lorsque j'envois 1 pièce jointe, alors je vois pas pourquoi il n'accepterais pas 3 pics de petites tailles.

Voici le bout de formulaire concernant les images:

<form action="admin_ajout_product.php" method="post" enctype="multipart/form-data" name="form" id="form">

<tr>
<td align="right"><p>Image #1</p></td>
<td><input name="fichier0" type="file" id="fichier_a_uploader1" />
(66 x 65)</td>
</tr>
<tr>
<td align="right"><p>Image #2</p></td>
<td><input name="fichier1" type="file" id="fichier_a_uploader2" />
(215 x 215)</td>
</tr>
<tr>
<td align="right"><p>Image #3</p></td>
<td><input name="fichier2" type="file" id="fichier_a_uploader3" />
(Full size)</td>
</tr>

<tr>
<td> </td>
<td><a href="javascript:void(0)">
<input type="submit" name="envoyer" id="envoyer" value="Envoyer" class="submit"/></a>
</td>
</tr>

</form>

Et le code php:

include('connectionbd.php');
// Tableaux de donnees
$tabExt = array('jpg','gif','png','jpeg'); // Extensions autorisees
$infosImg = array();

// Variables
$extension = '';
$message = '';
$nomImage = '';

if ((isset($_POST['nom']) && !empty($_POST['nom'])) && (isset($_POST['description']) && !empty($_POST['description'])) && (isset($_POST['details']) && !empty($_POST['details'])) && isset($_POST['categorie'])) {

if (isset($_POST['envoyer'])) {
// upload des images
for ($i = 0; $i <= 2; $i++) {
$extension = pathinfo($_FILES['fichier' . $i]['name'], PATHINFO_EXTENSION);
if(in_array(strtolower($extension),$tabExt)){
$infosImg = getimagesize($_FILES['fichier' . $i]['tmp_name']);
if($infosImg[2] >= 1 && $infosImg[2] <= 200000000){
if(isset($_FILES['fichier' . $i]['error'])&& UPLOAD_ERR_OK === $_FILES['fichier' . $i]['error']){
$nomImage = uniqid() .'.'. $extension;
if(move_uploaded_file($_FILES['fichier' . $i]['tmp_name'], 'upload/'.$nomImage)){
echo 'test';
$urlimage[$i] = 'upload/' . $nomImage;
}
else{
echo 'problème lors du chargement de l\'image' . $_FILES['fichier' . $i]['name'] ;
}
}
}
}
}

$sql = "INSERT INTO products (idproduct, nom, fk_type, description , details, imgmain, imgfullmain, imgcross) VALUES (
NULL , '" . $_POST['nom'] . "', '" . $_POST['categorie'] . "', '" . $_POST['description'] . "', '" . $_POST['details'] . "', '" . $urlimage[0] . "', '" . $urlimage[1] . "', '" . $urlimage[2] . "')";

$resultat = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
}
}

J'ai testé avec quelques echo, et l'echo 'test' n'affiche plus lorsqu'il est rendu dans le if du move_uploaded_file ...
A voir également:

3 réponses

bonneaup Messages postés 3 Statut Membre
 
Juste un petit up, j'ai pas réussi à déboger encore ... Personne a une idée? Je compare avec pas mal de codes que j'ai trouvé, et pourtant la faute de semble pas au niveau de la syntaxe :/ ..
0
bonneaup Messages postés 3 Statut Membre
 
Juste un petit up, again. le move_uploaded_file ne fonctionne pas.
0
Scienti Messages postés 14 Statut Membre 9
 
Salut, je pense que ce petit tuto devrait répondre à ton problème !

https://webinfobazar.com/upload-dune-image-sur-un-ftp-php-sql/

j'en ai d'autre de prévu, si vous avez des questions, n'hésitez pas ! ;)

Cordialement, Scienti
0