TYBMHI Posté 21 Avril 2009 Posté 21 Avril 2009 Bonjour à tous, J'ai fait un site pour un ami. Sur ce site j'ai mis un système d'upload de photo qui fonctionne très bien sur tous les PC que j'ai testé. Il n'y a que chez lui que cela ne fonctionne pas. Les photos sont chargé sur le serveur mais le "chemin" ne s'enregistre pas dans la base de donnée. Je ne comprend pas pourquoi. Je vous donne le code et si quelqu'un à une idée, merci d'avance. //--------------------------------------// DEFINITION DES VARIABLES//--------------------------------------$target = "files/"; // Repertoire cible$max_size = 2000000; // Taille max en octets du fichier$width_max = 9000; // Largeur max de l'image en pixels$height_max = 9000; // Hauteur max de l'image en pixels$extensions_ok = array("jpg","gif","png","jpeg","bmp","JPG","BMP","JPEG","GIF","PNG");//------------------------------------------------------------// DEFINITION DES VARIABLES LIEES AU FICHIER//------------------------------------------------------------$tmp = $_FILES['fichier']['tmp_name'];$nom_file = time()."_".$_FILES["fichier"]["name"];$taille = $_FILES['fichier']['size'];$chemin = $target.time()."_".$_FILES["fichier"]["name"];$extension = substr($nom_file,-3); // Récupération de l'extension//---------------------------// SCRIPT D'UPLOAD//---------------------------if($_POST['posted']){// On vérifie si le champ est rempli if($_FILES['fichier']['name']) { // On vérifie l'extension du fichier if(in_array(strtolower($extension),$extensions_ok)) { // On récupère les dimensions du fichier $infos_img = getimagesize($_FILES['fichier']['tmp_name']); // On vérifie les dimensions et taille de l'image if(($infos_img[0] <= $width_max) && ($infos_img[1] <= $height_max) && ($taille <= $max_size)) { // Si c'est OK, on teste l'upload if(move_uploaded_file($tmp, $target.$nom_file)) { // Si upload OK alors on affiche le message de réussite echo '<p>Image uploadée avec succès !</p>'; echo '<ul><li>Fichier : '.$_FILES['fichier']['name'].'</li>'; echo '<li>Taille : '.$_FILES['fichier']['size'].' Octets</li>'; echo '<li>Largeur : '.$infos_img[0].' px</li>'; echo '<li>Hauteur : '.$infos_img[1].' px</li></ul>';$id = $_POST['id']; // On peut enregistrermysql_query("UPDATE ma_table SET image = '$chemin' WHERE id = '$id'"); } else { // Sinon on affiche une erreur système echo '<p>Problème lors de l\'upload !</p>'; } } else { // Sinon erreur sur les dimensions et taille de l'image echo '<p>Erreur dans les dimensions ou taille de l\'image !</p>'; } } else { // Sinon on affiche une erreur pour l'extension echo '<p>Votre image ne comporte pas une extension valide !</p>'; } } else { // Sinon on affiche une erreur pour le champ vide echo '<p>Le champ du formulaire est vide !</p>'; }}?>
captain_torche Posté 21 Avril 2009 Posté 21 Avril 2009 Si ce n'est que l'insertion en base qui pose problème, c'est que la requête provoque une erreur. Essaye d'afficher le mysql_error().
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant