Probleme dans ma requette Php,voila:

adil7777 Messages postés 4 Statut Membre -  
ratikuss Messages postés 56 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

je ss nouveau sur le forum,je suis entrain de travailler sur un bdd d'une mediatheque afin de pouvoir publier quelques 1000 des livres,et facilité la recherche,donc mon probleme c que mon script php est erroné ,,,voila le code et si vous pouvez m'aides à le resourdre svp:

<?php
$connexion= mysql_connect('localhost','root','') or die('connexion impossible');
mysql_select_db('baselivres',$connexion) or die('Base inconnue');

if($value=="TYP")
{
$requete="select ISBN,NomAuteur,PrenomAuteur,TITRE from livre where COTE='".$_POST['COTE']."'";
$nb=0;
$resultat=mysql_query($requete,$connexion)or die('Requête incorrecte');
$ligne=mysql_fetch_array($resultat);
while($ligne)
{
echo '<tr><td>'.$ligne["ISBN"].'</td><td>'.$ligne["NomAuteur"].'</td><td>'.$ligne["PrenomAuteur"].'</td><td>'.$ligne["TITRE"].'</td></tr>';
$nb++;

$ligne=mysql_fetch_array($resultat);
}
mysql_close($connexion);
}
else
{
$requete="select ISBN,NomAuteur,PrenomAuteur,TITRE from livre where COTE='".$_POST['COTE']."'";
$nb=0;
$resultat=mysql_query($requete,$connexion)or die('Requête incorrecte');
$ligne=mysql_fetch_array($resultat);
while($ligne)
{
echo '<tr><td>'.$ligne["ISBN"].'</td><td>'.$ligne["NomAuteur"].'</td><td>'.$ligne["PrenomAuteur"].'</td><td>'.$ligne["TITRE"].'</td></tr>';
$nb++;

$ligne=mysql_fetch_array($resultat);
}
mysql_close($connexion);
}
?>
</table>
<p/>
<?php
echo'Il y a '.$nb.' livres.';
?>
</body>
</html>

merci d'avance pour votre aide......

4 réponses

  1. justoo76 Messages postés 203 Statut Membre 13
     
    C'est cool, mais sa ne nous dit pas l'erreur....
    0
  2. sapma Messages postés 174 Statut Membre 5
     
    1 - Ton script php peut être hacké ou piraté par SQL Injection.

    2 - tu peux stp restructurer ton code et ajouter quelques commentaire pour qu'on puisse comprendre la traitement.

    exemple
    // si le type est un livre ...
    if($value=="TYP")

    ---
    remarque :
    $nb++; // nombre de lignes trouvées dans la base de donnée
    tu peux utiliser :
    $nb = mysql_num_rows($resultat);

    You Are Welcome
    0
    1. vincentdu76
       
      Et nous dire où ça marche pas aussi, ça serait bien :)
      0
    2. adil7777 Messages postés 4 Statut Membre
       
      la liste des livres :


      Notice: Undefined variable: value in C:\wamp\www\essaie\livres\recherche.php on line 14

      Notice: Undefined index: COTE in C:\wamp\www\essaie\livres\recherche.php on line 31


      Il y a 0 livres.


      le non de mon fichier php : recherche.php
      0
    3. vincentdu76
       
      echo '<tr><td>'.$ligne["ISBN"].'</td><td>'.$ligne["NomAuteur"].'</td><td>'.$ligne["PrenomAuteur"].'</td><td>'.$ligne["TITRE"].'</td></tr>'; 

      C'est peut etre une histoire de quote. Moi d'habitude j'ouvre les double quote puis les simples.
      0
    4. adil7777 Messages postés 4 Statut Membre
       
      ligne 14 ya ecri: if($value=="TYP")
      ligne 31 c la requette: $requete="select ISBN,NomAuteur,PrenomAuteur,TITRE from livre where COTE='".$_POST['COTE']."'";
      0
    5. ratikuss Messages postés 56 Date d'inscription   Statut Membre Dernière intervention   262
       
      et où est défini $value ? car l'erreur vient du faire quel n'existe pas. Et je ne vois pas COTE dans ton formulaire...
      0
  3. adil7777 Messages postés 4 Statut Membre
     
    ok,merci je vai le refaire, voila g une liste déroulante que g creer:

    <form action="recherche.php" method="post">
    <p>
    <label for="catalogue">Categorie :</label><br />
    <select name="catalogue" id="catalogue">
    <optgroup label="Toutes">
    <option value="Bande dessinée">Nos livres</option>
    </optgroup>
    <optgroup label="Catalogue pour adultes">
    <option value="BD">Bande dessinée</option>
    <option value="B">Biographie</option>
    <option value="CL">Classique</option>
    <option value="Conte">Conte</option>
    <option value="DIC">Dictionnaire</option>
    <option value="D">Documentaire</option>
    <option value="FL">Fonds local</option>
    <option value="GUI">Guide</option>
    <option value="H">Histoire</option>
    <option value="HU">Humour</option>
    <option value="LA">Livre en anglais</option>
    <option value="N">Nouvelles</option>
    <option value="P">Poésie</option>
    <option value="POL">Policier</option>
    <option value="R">Roman</option>
    <option value="ROZ">Romans sentimentaux</option>
    <option value="SF">Science fiction</option>
    <option value="TH">Théâtre</option>
    </optgroup>
    <optgroup label="Catalogue pour jeunes">
    <option value="Album">Album</option>
    <option value="Album pour enfant">Album pour enfant</option>
    <option value="Bande dessinée">Bande dessinée</option>
    <option value="Conte">Conte</option>
    <option value="Dictionnaire">Dictionnaire</option>
    <option value="documentaire">Documentaire</option>
    <option value="Histoire">Histoire</option>
    <option value="Livre en anglais">Livre en anglais</option>
    <option value="Policier">Policier</option>
    <option value="Roman">Roman</option>
    <option value="Science fiction">Science fiction</option>
    <option value="Théâtre">Théâtre</option>
    </optgroup>
    <optgroup label="Acquisitions récentes">
    <option value="Nouveauté">Nouveauté</option>
    </select><br/>
    <p>
    <label>Mot rechercher :</label><br />
    <input type="text" name="rech" id="nom" tabindex="150" /><br />
    </p>

    </p>
    <input type="submit" value="Afficher la liste"/><input type="reset" value="Effacer recherche" />
    </form>
    </fieldset>
    <p>

    </p>
    </body>
    </html>

    apres sur ma table Livre sur ma base de donnée j'ai :

    ID TYP ISBN DEWEY COTE ANNE EDITEUR NomAuteur PrenomAuteur TITRE
    640 A D ........
    type sa veut dire A(adulte) ou J(jeune)
    0
  4. ratikuss Messages postés 56 Date d'inscription   Statut Membre Dernière intervention   262
     
    ça te donne quoi comme information pour l'erreur ?
    0