Code deffectueux : select from


catseyes
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 34
Inscription: 7 Avr 2007

Code deffectueux : select from

Message le Mer Aoû 01, 2007 20:06

bonjour,
mon code ne marche pas et je n'ai pas de message d'erreur !
Il m'affiche simplement l'echo "Nous n'avons pas trouvé de partenaires dans cette catégorie."

Code: Tout sélectionner
<table width="80%" border="0" align="center" cellpadding="1" cellspacing="4">
  <tr valign="top">
    <td colspan="3" class="titre"> <table width="100%" border="0" cellpadding="0" cellspacing="0" >
        <tr>
          <td class="tetiere" align="center" >RESTAURANTS</td>
        </tr>
      </table>
      <p></p>
      <p></p>
      Les restaurants de Pau</td>
  </tr>
  <tr>
    <td colspan="3" height="20">&nbsp;</td>
  </tr>
  <?php
$nb=10; //nombre d'enregistrement par page
define('DB_SERVER', 'mysql5-3'); // serveur mysql
         define('DB_SERVER_USERNAME', 'monlog'); // nom d'utilisateur
         define('DB_SERVER_PASSWORD', 'pass'); // mot de passe
         define('DB_DATABASE', 'mabase'); // nom de la base
         $connect = mysql_connect(DB_SERVER, DB_SERVER_USERNAME,DB_SERVER_PASSWORD)
      or die('Impossible de se connecter : ' . mysql_error());
// sélection de la base de données
         mysql_select_db(DB_DATABASE, $connect);
         $sql = "SELECT DISTINCT Societe, Tel, Adresse,CP,Ville FROM fichier WHERE Activité='Restaurant'";
$resultat = mysql_query($sql);
if (mysql_query($resultat) == 0)
{

   echo "<tr><td colspan=\"2\" class=\"normal\">Nous n'avons pas trouvé de partenaires dans cette catégorie.</td></tr>";
} else {
?>
  <tr bgcolor="#eeeeee">
    <td width="30%" class="label">Restaurant</td>
    <td width="35%" class="label">Téléphone</td>
    <td width="35%" class="label">Adresse</td>
  </tr>
  <?php

   while ($recherche=mysql_fetch_array($resultat))
   {
   ?>
  <tr>
    <td class="normal"><?php echo $recherche['Société'];?></td>
    <td class="normal"><?php echo $recherche['Tel'];?></td>
    <td class="normal"><?php echo $recherche['Adresse'];?><?php echo $recherche['CP'];?><?php echo $recherche['Ville'];?></td>
  </tr>
  <?php }?>
<tr bgcolor="#eeeeee">
    <td colspan="2" class="label"> Description </td>
    <td>Photo</td>
  </tr>
  <tr>
    <td colspan="2"><?php echo $recherche['texte'];?></td>
   <td colspan="2"><?php echo $recherche['image'];?></td>
  </tr>
  <?php }?>
</table>


Toute aide est bienvenue


HawkEye
WRInaute accro
WRInaute accro
 
Messages: 17005
Inscription: 23 Fév 2004

Message le Mer Aoû 01, 2007 20:27

Code: Tout sélectionner
$sql = "SELECT DISTINCT Societe, Tel, Adresse,CP,Ville FROM fichier WHERE Activité='Restaurant'";


à mon avis ça coince quelquepart là dedans ;)

Vérifie les noms de champs.

Je me demande si "Activité" ne devrait pas être interrogé avec LIKE 'Restaurant' plutôt que avec ='Restaurant' ;)


bgdc
WRInaute impliqué
WRInaute impliqué
 
Messages: 723
Inscription: 23 Mai 2005

Message le Mer Aoû 01, 2007 20:56

J'apprends un truc là, je ne savais pas que l'on pouvait mettre des accents sur les zones de table.

theJB
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 411
Inscription: 7 Avr 2006

Message le Mer Aoû 01, 2007 21:55

oué idem, essaye sans l'accent


benben02
WRInaute discret
WRInaute discret
 
Messages: 95
Inscription: 20 Mar 2006

Message le Mer Aoû 01, 2007 23:27

$resultat = mysql_query($sql);
if (mysql_query($resultat) == 0)


je crois qu il faut plutot mette

if($reultat == 0)

theJB
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 411
Inscription: 7 Avr 2006

Message le Mer Aoû 01, 2007 23:33

mé non je l'ai ton bug:
if (mysql_query($resultat) == 0) --> :-((
if (mysql_num_rows($resultat) == 0) --> :-))

et hop


catseyes
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 34
Inscription: 7 Avr 2007

Message le Jeu Aoû 02, 2007 7:36

bonjour,
merci de vos réponses.
J'ai viré les accents ( base et code) et corrigé if (mysql_num_rows($resultat) == 0)
Sans résultats :cry:


bgdc
WRInaute impliqué
WRInaute impliqué
 
Messages: 723
Inscription: 23 Mai 2005

Message le Jeu Aoû 02, 2007 8:42

tu as essayé ta requete sur phpmyadmin ?


catseyes
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 34
Inscription: 7 Avr 2007

Message le Jeu Aoû 02, 2007 13:01

oui, mais curieusement, il ne me renvoi qu'un enregistrement !
j'ai viré les accents, les majuscules, vérifié les orthographes et tenté le where like, sans plus de resultats.


bgdc
WRInaute impliqué
WRInaute impliqué
 
Messages: 723
Inscription: 23 Mai 2005

Message le Jeu Aoû 02, 2007 13:12

autre question , dans un select distinct, le group by n'est pas obligatoire ?


catseyes
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 34
Inscription: 7 Avr 2007

Message le Jeu Aoû 02, 2007 13:15

bonne question, mais j'ai même tenté sans le distinct


bgdc
WRInaute impliqué
WRInaute impliqué
 
Messages: 723
Inscription: 23 Mai 2005

Message le Jeu Aoû 02, 2007 15:08

Franchement , je ne vois pas, peut etre, faire gafe a la casse.....


rog
WRInaute passionné
WRInaute passionné
 
Messages: 1662
Inscription: 21 Sep 2006

Message le Jeu Aoû 02, 2007 19:08

il faut créer une routine de debuggage sinon tu ne t'en sortiras jamais

lol

ça ressemble un peu à ça

Code: Tout sélectionner
$nb = 10;

define('DB_SERVER', 'mysql5-3'); // serveur mysql
define('DB_SERVER_USERNAME', 'monlog'); // nom d'utilisateur
define('DB_SERVER_PASSWORD', 'pass'); // mot de passe
define('DB_DATABASE', 'mabase'); // nom de la base

if(!$connect = mysql_connect(DB_SERVER, DB_SERVER_USERNAME,DB_SERVER_PASSWORD))
   {
   die('Impossible de se connecter au server : '.DB_SERVER."\n".mysql_error());
   } 
elseif(!mysql_select_db(DB_DATABASE, $connect))
   {
   die('Impossible de se connecter à la base : '.DB_DATABASE."\n".mysql_error());
   }       
elseif(!$resultat = mysql_query("SELECT DISTINCT Societe, Tel, Adresse,CP,Ville FROM fichier WHERE Activité like 'Restaurant'"))
   {
   die('requete invalide : '.mysql_error());
   }   
elseif(mysql_num_rows($resultat) < 1)
     {
   die('resultat vide : '.mysql_error());
   } 


rog


catseyes
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 34
Inscription: 7 Avr 2007

Message le Ven Aoû 03, 2007 9:29

Merci Rog,
on a du mieux, le tableaux s'affiche comme il faut, mais il ne me renvoi qu'un enregistrement !! :roll:

Je ne comprends pas !


rog
WRInaute passionné
WRInaute passionné
 
Messages: 1662
Inscription: 21 Sep 2006

Message le Ven Aoû 03, 2007 11:38

donc la requete n'est pas bugguée

faut continuer dans une logique de debuggage

- echo(mysql_num_rows($resultat));
- ajouter le champs Activité dans la requete
- accessoirement virer les filtres comme distinct

rog

Code deffectueux : select from

Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités