comment trouver le chemin d' une image uploder dans ce sript

chris2000
Invité n'ayant pas de compte PHPfrance

15 déc. 2005, 21:08

bonjour,
comment trouver le chemin d' une image uploder dans ce script, afin de l'inserer dans une base de donnée; et quel serait la manipulation??

mercid'avance de votre aide,


http://www.phpfrance.com/tutoriaux/inde ... e-fichiers

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

15 déc. 2005, 21:16

Salut,
le chemin est celui contenu dans cette variable:
$dest_dossier = '/home/damien/photos/';
si tu n'as pas plusieurs dossier d'upload il n'est peut etre pas nécéssaire d'enregistrer tout le chemin dans la BD mais seulement le nom de du fichier, ici:
$dest_fichier
et lors de l'affichage (ds le cas d'une image),tu ecris:
<img src="/home/damien/photos/<?echo $variable_nomFichier_de_la_BD;?>" >

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Invité
Invité n'ayant pas de compte PHPfrance

16 déc. 2005, 15:27

salut
merci beaucoup pour ta reponse , mais:

j'ai donc crée la base avec mon champ 'photo'
et rajouté donc la variable $dest_fichier dans la requete sql suivante:

$query = "INSERT INTO $table(date, titre, lanews, url, moturl, pseudo, motcle, target, icone, photo) VALUES ('$date', '$titre', '$lanews', '$url', '$moturl', '$redact', '$motcle', '$target', '$icone', '$dest_dossier')";

lors de la saisi dans le formulaire ( texte + image),
toute les données s'insere correectement dans la base , sauf le chemin du fichier image ! il n'y a rien !!,
l'image se load correctement sur le seurveur dans un fichier upload

Mais TOUJOURS PAS LE CHEMIN DANS LA BASE,

Merci de me dire ou es mon erreur et comment y remedié,

merci de votre aide :!!!! :wink:

Mammouth du PHP | 1776 Messages

16 déc. 2005, 15:44

- vérifie le type de ton champ photo
- fais un echo de ta requête

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

16 déc. 2005, 15:48

j'ai donc crée la base avec mon champ 'photo'
et rajouté donc la variable $dest_fichier dans la requete sql suivante:

$query = "INSERT INTO $table(date, titre, lanews, url, moturl, pseudo, motcle, target, icone, photo) VALUES ('$date', '$titre', '$lanews', '$url', '$moturl', '$redact', '$motcle', '$target', '$icone', '$dest_dossier')";
Regarde bien ce qui est en gras.
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

Invité
Invité n'ayant pas de compte PHPfrance

16 déc. 2005, 15:50

j'ai mis "varchar(120) "

comment on procede pour un echo sur ma requete..?
çà ser à quoi.? :wink:
merciiiii

Mammouth du PHP | 1776 Messages

16 déc. 2005, 15:52

j'ai donc crée la base avec mon champ 'photo'
et rajouté donc la variable $dest_fichier dans la requete sql suivante:

$query = "INSERT INTO $table(date, titre, lanews, url, moturl, pseudo, motcle, target, icone, photo) VALUES ('$date', '$titre', '$lanews', '$url', '$moturl', '$redact', '$motcle', '$target', '$icone', '$dest_dossier')";
Regarde bien ce qui est en gras.
+1 :wink:

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

16 déc. 2005, 15:55

Tu as mis ta requête dans une variable, nommmée $query, pour voir le texte de la variable, tu fais echo $query;

Manuel PHP sur echo()
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

Invité
Invité n'ayant pas de compte PHPfrance

16 déc. 2005, 16:05

je l'ai fait
et il n'y a rien dans le champs

et maintenant :cry:?

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

16 déc. 2005, 16:07

Tu n'as pas mis le même nom de variable, peut-être ? Relis nos messages.

Merci
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

Invité
Invité n'ayant pas de compte PHPfrance

16 déc. 2005, 16:10

ah non, j'ai bien mis les bonnes

c un erreur quand j'ai taper là


je vois vraiment pas pourquoi.? :roll:

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

16 déc. 2005, 16:13

Où remplis tu cette variable $dest_fichier ?
Que donne exactement (copie/colle s'il te plait) le echo $query;
?
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

Invité
Invité n'ayant pas de compte PHPfrance

16 déc. 2005, 16:16

l'echo de la requete donne ceci

Code : Tout sélectionner

INSERT INTO espritnews(date, titre, lanews, url, moturl, pseudo, motcle, target, icone, photo) VALUES ('2005-12-16 15:03:08', 'wxc', 'wxcwxc', 'http://', '', '', '', '_blank', '', '')
et voila le script:
////ajout image
if(isset($_FILES['photo'])){  // params  unset($erreur);  
$extensions_ok = array('png', 'gif', 'jpg', 'jpeg');
$taille_max = 100000;
$dest_dossier = 'upload/';
// utilisez également des slashes sous windows : 
$dest_dossier  = 'upload/';
// vérifications
if( !in_array( substr(strrchr($_FILES['photo']['name'], '.'), 1), $extensions_ok ) )
  {    $erreur = 'Veuillez sélectionner un fichier de type png, gif ou jpg !';    }
elseif( file_exists($_FILES['photo']['tmp_name'])
and filesize($_FILES['photo']['tmp_name']) > $taille_max)
{    $erreur = 'Votre fichier doit faire moins de 500Ko !';  }
// copie du fichier  if(!isset($erreur))
 {    $dest_fichier = basename($_FILES['photo']['name']);
// formatage nom fichier    // enlever les accents
$dest_fichier = strtr($dest_fichier,     'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',     'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
// remplacer les caracteres autres que lettres, chiffres et point par _
$dest_fichier = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier);
// copie du fichier
move_uploaded_file($_FILES['photo']['tmp_name'], $dest_dossier . $dest_fichier);  }

}

//fin ajout image
merci beaucoup !!!!!!!!!!!!!!!!!!!!!!!!!!!

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

16 déc. 2005, 16:25

Donc dans ta requête tu mets $dest_dossier ou $dest_fichier ?
Et le fichier est-il bien uploadé ?
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

Invité
Invité n'ayant pas de compte PHPfrance

16 déc. 2005, 16:28

et oui voila !
j'ai essayé les deux mais rien !!


oui le fichier est parfaitement uploder

je comprend vraiment pourquoi çà veut pas reconnaitre ces varaibles dans la requete;

????????????