Upload facultatif pour modification

Fermé
Nounours - 3 mars 2009 à 17:04
 Nounours - 4 mars 2009 à 12:12
Bonjour à tous,
voila j' ai un petit problème,
Dans le site il y a ce que j' appel une fiche produit avec plusieurs photos.
Tout à été gérer pour l' ajout et la suppression.
mon problème concerne la modification,

Je n' arrive pas à faire en sorte que je puisse changer certaines photos, et du coup aucune modification ne s' opèrent...

Voici le code :





<?php
include('connect.php');

$titre = mysql_escape_string($_POST['titre']);
$descriptif = mysql_escape_string($_POST['descriptif']);
$bonne_affaire = mysql_escape_string($_POST['bonne_affaire']);
$prix = mysql_escape_string($_POST['prix']);
$prix_promo = mysql_escape_string($_POST['prix_promo']);




if($_FILES['fichier']['name']!='')
{






for ($i = 1 ; $i < 6 ; $i++)
{
$dossier = 'img/bonnes_affaires/';
$fichier = basename($_FILES['fichier'.$i]['name']);
$taille_maxi = 200000;
$taille = filesize($_FILES['fichier'.$i]['tmp_name']);
$extensions = array('.png', '.gif', '.jpg', '.jpeg');
$extension = strrchr($_FILES['fichier'.$i]['name'], '.');

//Début des vérifications de sécurité...
if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau
{
$erreur = 'Vous devez uploader un fichier de type png, gif, jpg, jpeg...';
}
if(($taille)>$taille_maxi)
{
$erreur = 'Le fichier est trop gros...';
}
if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload
{
//formatage du nom (suppression des accents, remplacements des espaces par "-")
$fichier = strtr($fichier, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
if(move_uploaded_file($_FILES['fichier'.$i]['tmp_name'], $dossier . $fichier)) //correct si la fonction renvoie TRUE
{
echo 'Upload effectué avec succès !';
$chemin = 'chemin'.$i;
${$chemin} = $dossier.$fichier;
}
else //sinon, cas où la fonction renvoie FALSE
{
echo 'Echec de l\'upload !';
}

}
else
{
echo $erreur;
}
}
mysql_query("UPDATE produit SET `titre` = '$titre',`descriptif` = '$descriptif',`prix` = '$prix','img_photo1'='$chemin1','img_photo2'='$chemin2','img_photo3'='$chemin3','img_photo4'='$chemin4','img_photo5'='$chemin5',`prix_promo` = '$prix_promo' WHERE id_produit ='$id_produit'") or die (mysql_error());
header('Location: accueil.php?contenu=bonnes_affaires_tmp');



}
else
{
mysql_query("UPDATE produit SET `titre` = '$titre',`descriptif` = '$descriptif',`prix` = '$prix',`prix_promo` = '$prix_promo' WHERE id_produit ='$id_produit'") or die (mysql_error());
header('Location: accueil.php?contenu=produit_modif_tmp');
}






?>



Si quelqu' un à la moindre idée ...
A voir également:

1 réponse

On progresse lentement,
j' avais fait une 2eme erreur bête,
j' avais oublier enctype='multipart/form-data'> dans le fichier qui transfert les info...

Alors, maintenant je n' ai plus d'erreur, mais toujours pas de modif dans la bdd...
0