réalisation d'une galerie - probleme upload
Posté : 25 juil. 2012, 12:44
Salut, je suis débutant et
Je voudrais réaliser une galerie en php.
J’essaie de comprendre et d’utiliser des fonctions php nécessaires pour écrire/lire des chemins d'images dans une bdd,
J'ai une bdd avec une table à 4 champs, id, nom, note, photo.
un fichier de connection php, un fichier config.php, un fichier insert_form.php et un formulaire
mais lorsque j’utilise l’ensemble de fichiers pour uploader et mettre à jour la bdd,
le champ « chemin de l’image » est bon, mais j’ai pas l’image uploadée dans le dossier,( les images doivent être dans un sous dossier).
voila le fichier insert_form.php:
au final j'ai une entrée dans la base avec le chemin, le nom mais pas de fichier image dans le dossier de destination.
Si quelqu'un à une idée cela m'aiderait grandement.
merci
Je voudrais réaliser une galerie en php.
J’essaie de comprendre et d’utiliser des fonctions php nécessaires pour écrire/lire des chemins d'images dans une bdd,
J'ai une bdd avec une table à 4 champs, id, nom, note, photo.
un fichier de connection php, un fichier config.php, un fichier insert_form.php et un formulaire
mais lorsque j’utilise l’ensemble de fichiers pour uploader et mettre à jour la bdd,
le champ « chemin de l’image » est bon, mais j’ai pas l’image uploadée dans le dossier,( les images doivent être dans un sous dossier).
voila le fichier insert_form.php:
Code : Tout sélectionner
<?php
include "config.php";
include "database.fn.php";
$link = database_connect($db);
// ***** ici on récupère les données et on les stocke dans mysql
$nom = $_POST['nom'];
$note = $_POST['note'];
//******* On renomme l'image de manière aléatoire pour éviter un conflit dans le dossier (2 fois le même nom par exemple
$dir = 'images/';
$ext = strtolower( pathinfo($_FILES['image']['name'], PATHINFO_EXTENSION) );
$contenu=strip_tags($ext); // pour nettoyer le contenu du fichier des éventuelles balises HTML ou PHP
$fichier=uniqid('',false).'.'.$contenu;
//**** on bouge l'image
$fichier="images/".$_FILES['image']['name'];
if (is_uploaded_file($_FILES['image']['name'])){
if (!move_uploaded_file($_FILES['image']['tmp_name'],$fichier)){
echo "Problème: impossible de déplacer le fichier"; exit;
} else {
echo "Problème : Attaque possible par le fichier ".$_FILES['image']['name']; exit;
}
}
move_uploaded_file($_FILES['image']['tmp_name'], $dir.$fichier);
$photo = $fichier;
// on enregistre les données
$result = mysql_query("INSERT INTO poster VALUES
(
'',
'".mysql_real_escape_string($nom)."',
'".mysql_real_escape_string($note)."',
'".mysql_real_escape_string($photo)."'
)
");
//Si il y a une erreur, on crie ^^
if (!$result) {
die('Requête invalide : ' . mysql_error());
}
// on ferme la connection mysql donc ci-dessous plus de sql
mysql_close($link);
?>Si quelqu'un à une idée cela m'aiderait grandement.
merci