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

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : comment trouver le chemin d' une image uploder dans ce sript

par Invité » 17 déc. 2005, 17:44

Tout fonctionne MERCI BEAUCOUP pour ton aide
et aux autres aussi
vous avez été super patient !! un grand merci

:lol:

par Truc » 17 déc. 2005, 17:24

et lors de l'affichage (ds le cas d'une image),tu ecris:
PHP:
<img src="/home/damien/photos/<?echo $variable_nomFichier_de_la_BD;?>" >
un truc du style, tout simplement
tu récupères le nom de la BD, tu sais faire ?
et tu met le chemin qui va bien en fonction de l'emplacement de ton fichier où l'image doit etre affichée et le dossier la contenant.

par Invité » 17 déc. 2005, 17:20

non c'est bon çà marche !!

mais la j'ai le nom du fichier , pour lui indiquer le chemin comme je dois proceder maintenant?

par Invité » 17 déc. 2005, 17:17

c'est fait mais toujours rien !!
:cry:

par Truc » 17 déc. 2005, 17:12

:-"
il ne te semble pas plus logique de placer de code d'upload en début de fichier pour que la variable $dest_fichier soit définie et initialisée avec le nom de l'image a uploader ?

par Invité » 17 déc. 2005, 17:10

avant la requete ou juste apres?

par Invité » 17 déc. 2005, 17:08

si quelqu'un voit un solution?????????

:cry:

par Truc » 17 déc. 2005, 16:41

il ne te semble pas plus logique de placer de code d'upload en début de fichier pour que la variable $dest_fichier soit définie et initialisée avec le nom de l'image a uploader ?

par Invité » 17 déc. 2005, 16:32

çà fonctionne comme avant

par Truc » 17 déc. 2005, 16:24

tu va en avoir des erreur sans les @, le code est mal construit.

L'interprétation se fait de haut en bas ce qui fait que tu as des blancs (variables indéfinies)

par Invité » 17 déc. 2005, 16:22

c'est fait

ensuite ???

par Cyrano » 17 déc. 2005, 16:18

Commence donc par virer les "@" devant les fonctions mysql, on ne masque pas les messages d'erreur en phase de débuggage...

par Invité » 17 déc. 2005, 16:13

je voulais simplement que l'utilisateur , remplisse un formulaire, et puisse uploader une image; et recuperer le tout dans une base de donnée pour les afficher ensuite.
tout fonctionne sauf le chemin de l'images ne s'insere pas dans la base
@mysql_connect($mysql, $login, $pass) ;

   echo   $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_fichier')";
   
   echo   $query2 = "INSERT INTO $tabletemp(date, titre, lanews, url, moturl, pseudo, motcle, target, icone, photo) VALUES ('$date', '$titre', '$lanews', '$url', '$moturl', '$redact', '$motcle', '$target', '$icone', '$dest_fichier)";


        $result = @mysql_db_query($base, $query);

        $result2 = @mysql_db_query($base, $query2);



    if (($result) | ($result2)) {

        echo "La News : <span class=\"titre\">$titre</span><br>A été ajoutée avec succés</p>";

    }

        else {

        echo "Attention, l'opération à échouée :o(</p>";

    }



// Fin ajout
}}



if ($modifid)
{
if (!empty($coche3))
{
$motcle3=$nom_jeu3;
}
if (empty($target3)){$target3="_blank";}


        @mysql_connect($mysql, $login, $pass) or die ("probleme de connexion a la base");
        $query = "update $tabletemp set titre='$titre3', date='$date3', lanews='$lanews3', url='$url3', moturl='$moturl3', pseudo='$pseudo3', motcle='$motcle3', target='$target3', icone='$icone3' where id like $modifid";
        $query2 = "update $table set titre='$titre3', date='$date3', lanews='$lanews3', url='$url3', moturl='$moturl3', pseudo='$pseudo3', motcle='$motcle3', target='$target3', icone='$icone3' where id like $modifid";
       $result = @mysql_db_query($base, $query);
       $result2 = @mysql_db_query($base, $query2);

    if (($result) | ($result2)) {
        echo "La News été modifiee</p>";
    }

// Fin modfication
}

if ($ajouter) //Affiche formulaire
{
$datejour =  (date("Y-m-d H:i:s"));
echo "
<form name='form1' method='post' action='' enctype='multipart/form-data'>
  <input type='hidden' name='ajout' value='ok'>
 <hr width='50%' align='center'>

  <p>Titre de la News :

    <input type=text name='titre' maxlength='80' size='40'>

<br>
Date (YYYY-MM-DD hh:mm:ss)
    <input type='text' name='date' value='$datejour'>
<br>

    La News :<i><b><br>

    </b></i>

    <textarea name='lanews' rows='10' cols='80' wrap='VIRTUAL'></textarea>

  </p>

   <p>URL de r&eacute;f&eacute;rence ou 'mailto:[email protected]' (au cas ou) :

    <input type=text name='url' maxlength='150' size='30' value='http://'>

    <span class='titre'>(s'ouvre dans une nouvelle fen&ecirc;tre par defaut)</span></p>

  <p><font color='#FF9900'>Cocher la case pour un lien interne (<font color='#FFFF00'><b>../</b></font>dossier/page.htm)</font>

    <input type='checkbox' name='target' value='_parent'>

  </p>

  <p>Texte du lien (<b><i>obligatoire en cas d'url, au pire recopiez

    l'url</i></b>) :

    <input type=text name='moturl' maxlength='150' size='30'>

  </p>

  <p><font size='-1' color='#FF9900'>IMAGES</font> <font color='#FF9900'>:
    </font>
   <input type='file' name='photo'></
 
 </p>
    <p><input type=submit value='Ajouter'></p>

 
  </form>
";

// Fin formulaire ajouter
}
////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 : 
// 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

par Invité » 17 déc. 2005, 16:04

oui,
les autres variables s'inserent correctement dans la base,
il n'y a que celle la

je vois vraiment plus

par Truc » 17 déc. 2005, 16:01

de toute façon ce n'est pas le chemin qui mène a l'image que tu dois enregistrer mais le nom ($dest_fichier) de l'image !

comment tu va faire apres pour afficher les images sans leur nom ?
Ce bout de code semble correct faudrai savoir a quel endroit tu le places ?! si le code n'est pas trop long envoie le tout.