Formulaire de recherche php

Melmoon Messages postés 9 Statut Membre -  
Alain_42 Messages postés 5413 Statut Membre -
Bonjour,

Dans le cadre d'un projet scolaire je souhaiterai réaliser une fonction qui affiche tout les élément d'une base de donnée commençant par la lettre A B C D ,... lorsque l'on clique dessus.

j'ai réalisé le bout de code suivant, mais je ne parvient pas à trouver l'erreur. Le message suivant s'affiche :

Warning: msql_fetch_array():supplied argument is not a valid MySQL result resource in ...

for($i=ord('A');$i<=ord('Z');$i++)//affiche les lettres de A à B
{
$j=chr($i);//stock la lettre dans une variable
echo '<a href="recherche_avancee.php?page=' .$j. '">' .$j. '</a> ';
$reponse.$j= mysql_query(" SELECT idFilm,titre,image,datesortie
FROM Film
WHERE titre='.%$j.'
ORDER BY titre");

while ($sortie1 = mysql_fetch_array($reponse.$j))//on affiche les résultats
{
include ("presentationdvd.php");//j'appel une fonction qui affiche les éléments ici des DVD.
}
}

merci de m'aider pour ce problème :)
Configuration: Windows XP
Firefox 3.0.7

4 réponses

  1. NookZ Messages postés 2376 Statut Membre 514
     
    je pense que c'est ça qui foire :
    $reponse.$j

    :

    for($i=ord('A');$i<=ord('Z');$i++)//affiche les lettres de A à B
    {
    $j=chr($i);//stock la lettre dans une variable
    echo '<a href="recherche_avancee.php?page=' .$j. '">' .$j. '</a> ';
    $reponse= mysql_query(" SELECT idFilm,titre,image,datesortie
    FROM Film
    WHERE titre='.%$j.'
    ORDER BY titre");

    while ($sortie1 = mysql_fetch_array($reponse))//on affiche les résultats
    {
    include ("presentationdvd.php");//j'appel une fonction qui affiche les éléments ici des DVD.
    }
    }
    0
  2. Melmoon Messages postés 9 Statut Membre
     
    Merci NookZ,
    Ça ne me met plus de message d'erreur mais par contre quand je clique sur les liens ca ne m'affiche toujours pas mes résultats. Et je ne comprend pas pourquoi.

    Erf !! quand ça veut pas décidément.

    Une petite idée ??
    0
    1. NookZ Messages postés 2376 Statut Membre 514
       
      Y'a-t-il bien un endroit où tu fais un affichage de
      $sortie1[0] ou $sortie1['idFilm'] et des autres champs ?
      0
      1. Melmoon Messages postés 9 Statut Membre > NookZ Messages postés 2376 Statut Membre
         
        Oui, dans presentationdvd.php
        0
      2. Melmoon Messages postés 9 Statut Membre > Melmoon Messages postés 9 Statut Membre
         
        Dans présentationdvd j'ai aussi du code html qui ne s'affiche pas, c'est comme si il ne rentrait pas dans le while
        0
  3. Alain_42 Messages postés 5413 Statut Membre 904
     
    comme ça ça ne marchera pas

    while ($sortie1 = mysql_fetch_array($reponse.$j))//on affiche les résultats
    {
    include ("presentationdvd.php");//j'appel une fonction qui affiche les éléments ici des DVD.
    }


    il faut faire:

    //au début de ton code
    include ("presentationdvd.php");
    
    //puis plus bas
    
    while ($sortie1 = mysql_fetch_array($reponse.$j))//on affiche les résultats
    {
    //appel de la  fonction qui affiche les  DVD.
    ma_belle_fonction($sortie1); //en lui passant les arguments
    }
    
    
    0
    1. Melmoon Messages postés 9 Statut Membre
       
      En faite ma fonction qui me permet d'afficher les DVD c'est "presentationdvd.php".

      Avant j'ai du code qui me permet d'obtenir les différent paramètre pour décrire un DVD (Réalisateur, acteurs, ...).

      Par contre le bout de code dans le while :

      while ($sortie1 = mysql_fetch_array($reponse.$j))

      ne marche pas écrit de cette maniere. J'avais deja essayé au début.
      0
  4. Alain_42 Messages postés 5413 Statut Membre 904
     
    while ($sortie1 = mysql_fetch_array($reponse.$j))

    je ne comprend pas d'où est sorti ce $j car j'ai fait un copier coller de ton code

    mais pour qu'une fonction s'éxécute il ne faut pas faire include de celle ci dans la boucle while, mais de faire un appel de la fonction dans la boucle

    ex:

    include du fichier qui contient la fonction affich()
    puis
    while ....{

    affich();
    }
    0