IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Afficher des images dont l'URL se trouve dans ma base de données


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2008
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 25
    Points : 18
    Points
    18
    Par défaut Afficher des images dont l'URL se trouve dans ma base de données
    Bonjour,
    j'ai réalisé un formulaire qui envoi l'url des images sur ma BDD ainsi que les images dans un autre dossier sur mon serveur.

    Jusque la pas de probleme. mais lorsque je fait un requete l'image ne s'affiche pas.
    (par contre son nom et son descriptif s'affiche).

    Pouvez vous m'aider. pas forcément la reponse mais une piste.
    Voici mon code pour afficher le contenu de ma BDD.

    Dans ma BDD j'ai un ligne pseudo,descriptif et icone

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    <?php
     
     
    // On se connecte d'abord à MySQL :
    mysql_connect("xxx", "xxx", "xxx"); // Connexion à MySQL
    mysql_select_db("xxx"); // Sélection de la base coursphp
     
    // récupération des données de la table formulaire
    $requete = "select * from formulaire";
    $envoi = mysql_query($requete);
    while($tableau = mysql_fetch_array($envoi))
    {
    $pseudo = $tableau['pseudo'];
    $message = $tableau['message'];
    echo '<img src="'.$tableau['icone'].'.jpg"/>';
     
     
     
    // affichage des données
    echo "<br />$pseudo, <br />
    $message, <br />
    ";
     
    }
    ?>

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 514
    Points : 631
    Points
    631
    Par défaut
    Bonsoir,
    est ce qu'on pourrait avoir la structure de la table formulaire et le contenu d'une ligne de cette table?

    Cordialement,
    DaRiaN.

  3. #3
    Membre extrêmement actif
    Avatar de ArHacKnIdE
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 947
    Détails du profil
    Informations personnelles :
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 947
    Points : 1 921
    Points
    1 921
    Par défaut
    Salut,

    C'est censé renvoyer quoi ? L'url complète avec l'extension ? Seulement l'url du dossier contenant ?!

    Pour que ça fonctionne, il faudrait que dans ta base de donnée, les enregistrements url soient de la forme : http://www.tonsite.com/images/imageexemple1

    Sans l'extension puisque tu la précise après...

    Tu pourrais nous faire voir la requête que tu utilises pour insérer les urls dans la base de donnée...

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2008
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 25
    Points : 18
    Points
    18
    Par défaut
    voici mon script qui envoi mon formulaire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    <?php
    $dossier = 'images/';
    $fichier = basename($_FILES['icone']['name']);
    $taille_maxi = 100000;
    $taille = filesize($_FILES['icone']['tmp_name']);
    $extensions = array('.png', '.gif', '.jpg', '.jpeg');
    $extension = strrchr($_FILES['icone']['name'], '.'); 
    $nbre_image = $nbr_img++; 
    //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(@rename("/images/" . $fichier . " ", "/images/" . $nbre_image . "")) 
     
    if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload
    {
         //On formate le nom du fichier ici...
         $fichier = strtr($fichier, 
              'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 
              'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
         $fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
         if(move_uploaded_file($_FILES['icone']['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
         {
              echo 'Upload effectué avec succès !';
         }
         else //Sinon (la fonction renvoie FALSE).
         {
              echo 'Echec de l\'upload !';
         }
    }
    else
    {
         echo $erreur;
    }
     
    // récupération des données du formulaires
    $pseudo = $_POST['pseudo'];
    $message = $_POST['message'];
    $icone = $_FILE['icone'];
    // connexion à votre base de donnée
    mysql_connect("xxx", "xxx", "xxx"); // Connexion à MySQL
    mysql_select_db("xxx");
     
    // On utilise les fonctions PHP mysql_real_escape_string et htmlspecialchars pour la sécurité
            $message = mysql_real_escape_string(htmlspecialchars($_POST['message']));
            $pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));
     $icone = mysql_real_escape_string(htmlspecialchars($_FILE['icone']));
     
    // on créer la requête SQL, pour ensuite l'envoyer
    $requete = "insert into formulaire values('','$pseudo','$message','$icone')";
    mysql_query($requete);
     
    echo "Vos données ont été envoyées !"; 
     
    // fermeture de la connexion vers Mysql
    mysql_close(); 
     
    ?>
    dans ma BDD j'ai
    un champ: icone
    type : varchar(30)
    interclassement: latin1_germ2.....

    Et sur mon serveur un dossier "images"

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2008
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 34
    Points : 20
    Points
    20
    Par défaut
    et si tu fais cela?

    echo '<img src="'.$tableau['icone'].'"/>';

    ou sinon essai de voir ce que tu as dans ta bdd

    echo $tableau['icone'];

Discussions similaires

  1. [Débutant] afficher une image dont le path est enregistré dans la base se données
    Par sarrabnh dans le forum ASP.NET
    Réponses: 1
    Dernier message: 30/05/2014, 17h42
  2. Réponses: 4
    Dernier message: 29/05/2011, 19h14
  3. Réponses: 0
    Dernier message: 14/05/2011, 10h14
  4. afficher une image que son emplacement se trouve ds 1 base de donne
    Par tntneo dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 15/04/2008, 20h16
  5. Réponses: 4
    Dernier message: 22/02/2007, 10h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo