Probleme de requete

paulodg Messages postés 5 Statut Membre -  
Dr Zoidberg Messages postés 547 Statut Membre -
Bonjour !
J'ai un probleme , je pense du à une requete, car quand j'affiche la variable ($id_suivant=mysql_query("SELECT 'ID' FROM photos WHERE ID=$id1");), cela m'affiche "Resource id #3" (sans les guillmets) à la place d'un nombre, et je n'arrive pas à trouver l'erreur dans ma requete sql. Pourriez vous m'aider s'il vous plait? voici le code complet :
<?php
    mysql_connect("localhost","soldatsdeplomb12","*****");
    mysql_select_db("soldatsdeplomb12");

    $id_recu=$_GET['id'];
    $id1=$id_recu-1;
    $id_1=$id_recu+1;
     

      $id_suivant=mysql_query("SELECT 'ID' FROM photos WHERE ID=$id1");//variable problematique
    $id_precedent=mysql_query("SELECT 'ID' FROM photos WHERE ID=$id_1");

    $donnees=mysql_query("SELECT nom FROM photos WHERE ID=$id_recu");

    if ($id_recu == 1)
    { echo "$photo";
      echo "$id_suivant";//j'affiche la variable
        ?>
            <span class="suivant">
                <a href="photos.php?id=2">
                    <img src="images/suivant.png" alt="suivant" />
                </a>
            </span>
            <br />
            <br />

            <span class="photo">
                <img src="<?php echo $photo; ?>" />
            </span>

        <?php
    }

    $retour=mysql_query("SELECT COUNT (*) AS dernier_id FROM photos");
    $donnees=mysql_fetch_array($retour);
    
  

    if ($id_recu == $dernier_id)
    {
        ?>
            <span class="precedent">
                <a href="photos.php?id=<?php echo $id_precedent; ?>" >
                    <img src="images/precedent.png" alt="precedent" />
                </a>
            </span>
            <br />
            <br />

            <span class="photo">
                <img src="<?php echo $photo; ?>" alt="Image"/>
            </span>
        <?php
    }

    else
    {
        ?>
            <span class="precedent">
                <a href="photos.php?id=<?php echo $id_precedent; ?>" >
                     <img src="images/precedent.png" alt="precedent" />
                </a>
            </span>
            <br />
            <br />

            <span class="suivant">
                <a href="photos.php?id=<?php echo $id_suivant; ?>" >
                    <img src="images/suivant.png" alt="suivant" />
                </a>
            </span>
            <br />
            <br />

            <span class="photo">
                <img src="<?php echo $photo; ?>" alt="Image" />
            </span>
        <?php
    }

    mysql_close();
?>

1 réponse

Dr Zoidberg Messages postés 547 Statut Membre 100
 
Bonjour,

mysql_query ne retourne pas le contenu du résultat de la requète, mais un identifiant de résultat (car un résultat peut avoir plusieurs lignes)
Regarde bien comment on effectue une requête
https://www.php.net/manual/fr/function.mysql-fetch-array.php
Il faut forcement un mysql_fetch_array ou équivalent - qui va retourner une ligne du résultat.
Par exemple pour ta première requête en détaillant et sans vérifications :

     $id_suivant_res=mysql_query("SELECT 'ID' FROM photos WHERE ID=$id1"); //Exécute la requête
    $id_suivant_row = mysql_fetch_array($id_suivant_res); //Retourne la première ligne du résultat
   $id_suivant = $id_suivant_row[0];  // Retourne le premier élement de la ligne retournée au dessus
0