Lu, je vous donne deja le code
$nbrimg = 0;
if (isset($_FILES['file1']))
{
$nbrimg++;
$dest_dossier = './';
$dest_fichier = 'image' . $id . '_1' . '.jpg';
move_uploaded_file($_FILES['file1']['tmp_name'], $dest_dossier . $dest_fichier);
}
if (isset($_FILES['file2']))
{
$nbrimg++;
$dest_dossier = './';
$dest_fichier = 'image' . $id . '_2' . '.jpg';
move_uploaded_file($_FILES['file2']['tmp_name'], $dest_dossier . $dest_fichier);
}
if (isset($_FILES['file3']))
{
$nbrimg++;
$dest_dossier = './';
$dest_fichier = 'image' . $id . '_3' . '.jpg';
move_uploaded_file($_FILES['file3']['tmp_name'], $dest_dossier . $dest_fichier);
}
if (isset($_FILES['file4']))
{
$nbrimg++;
$dest_dossier = './';
$dest_fichier = 'image' . $id . '_4' . '.jpg';
move_uploaded_file($_FILES['file4']['tmp_name'], $dest_dossier . $dest_fichier);
}
mysql_query("UPDATE stock SET nbrimg='$nbrimg' WHERE id='$id'");
Ce code permet d’uploader des images et de les compter ($nbrimg), le probleme c’est que ma variable $nbrimg est egal a 4 tout le temp. Je pense que je n’ai pas compris toute les subtiliter du “isset” .
Si quelqu’un pouvait m’aider se serait cool.
Merci
Déjà, utilise ++$nbrimg, ça sera moins lourd.
Ensuite isset vérifie si la variable que tu lui passe éxiste. A priori, dans ton cas, elles existent toutes. Un petit conseil : utilise une boucle !
$nbrimg = 0;
for ($i = 1; $i <= 4; ++$i) {
if (isset($_FILES['file' . $i])) {
++$nbrimg;
$dest_dossier = './';
$dest_fichier = 'image' . $id . '_' . $i . '.jpg';
move_uploaded_file($_FILES['file' . $i]['tmp_name'], $dest_dossier . $dest_fichier);
}
}
Ca t’évitera des tracasseries, et ça te permettra d’en ajouter facilement.
Je te conseille d’utiliser isset ET de vérifier si la chaine n’est pas vide. Peut-etre là est ton problème…
Sans-Nom, pourquoi ++$a serait moins lourd que $a++ ?
++$a = incrémenter $a, et renvoyer $a.
$a++ = créer une variable temporaire $b = $a, incrémenter $a, et renvoyer $b.
Si tu n’as pas besoin du mécanisme apporté par l’opérateur lvalue++ (idem pour lvalue–), inutile de t’en servir, utilise ++lvalue ou --lvalue.
ah, tu es sûr? Enfin en php je sais pas, en C j’aurais dit que :
++a = incrémenter a, mettre la valeur de a sur la pile
a++ = mettre la valeur de a sur la pile, incrémenter a
merci pour vos reponse je test ca cet aprem Bone journée
kremvax > en C++ j’aurais dis variable temporaire si tu as ton propre opérateur ++/--
En php/C ça doit être dans le même genre d’idée.