Recherche sur la base de donnees
lifa5
Messages postés
50
Statut
Membre
-
Pitet Messages postés 2845 Statut Membre -
Pitet Messages postés 2845 Statut Membre -
Bonjour, je souhaite faire une recherche sur deux table de ma base.pour cela je veut recuperer les Id de chaque table,les comparer pour ensuite lancer la requete.j'ai ce code:
<?php
$bdd= new PDO('mysql:host=localhost; dbname=nombase','root','pwd');
if(isset($_POST['env']))
$champ=$_POST['id'];
else
$champ="";
$rech="SELECT Id_rubrique,Id_modif from test,modification";
$req=mysql_query($rech);
$res=mysql_fetch_array($res);
$Id_rub=$res['Id_rubrique'];
$Id_mod=$res['Id_modif'];
if($Id_rub=$Id_mod)
{
$requete=$bdd-> query("SELECT * FROM test,modification where Numero_texte='".$champ."'");
}
else
{
$requete=$bdd-> query("SELECT * FROM test where Numero_texte='".$champ."'");
}
while($data = $requete ->fetch()) {
?>
J'ai cette erreur
Parse error: parse error in C:\wamp\www\archives\pageweb\Rechercher.php on line 123
et je vois pas ou ca peut venir
--
lifa8
<?php
$bdd= new PDO('mysql:host=localhost; dbname=nombase','root','pwd');
if(isset($_POST['env']))
$champ=$_POST['id'];
else
$champ="";
$rech="SELECT Id_rubrique,Id_modif from test,modification";
$req=mysql_query($rech);
$res=mysql_fetch_array($res);
$Id_rub=$res['Id_rubrique'];
$Id_mod=$res['Id_modif'];
if($Id_rub=$Id_mod)
{
$requete=$bdd-> query("SELECT * FROM test,modification where Numero_texte='".$champ."'");
}
else
{
$requete=$bdd-> query("SELECT * FROM test where Numero_texte='".$champ."'");
}
while($data = $requete ->fetch()) {
?>
J'ai cette erreur
Parse error: parse error in C:\wamp\www\archives\pageweb\Rechercher.php on line 123
et je vois pas ou ca peut venir
--
lifa8
7 réponses
-
-
Merci pour la reponse et je les je les fermer en bas apres l'affichage de la recherche
-
La ligne suivante n'est pas correcte :
$res=mysql_fetch_array($res);
cela devrait être :$res=mysql_fetch_array($req);
d'où l'importance de donner des noms claires aux variables, pour éviter ces confusions.
Ton test suivant :if($Id_rub = $Id_mod)
correspond à une affectation (un seul signe =) donc toujours vrai. A corriger par :if($Id_rub == $Id_mod)
Les espaces après ou avant l'appel d'une méthode sur un objet sont inutile :$bdd->query $requete->fetch()
Enfin, à quoi correspond la ligne 123 ? -
Apres les correctifs j'ai ce code et ca ne fontionnne toujours pas
<?php
$bdd= new PDO('mysql:host=localhost; dbname=nombase','root','pwd');
if(isset($_POST['env']))
$champ=$_POST['id'];
else
$champ="";
$rech="SELECT Id_rubrique,Id_modif from test,modification";
$req=mysql_query($rech);
$res=mysql_fetch_array($req);
$Id_rub=$res['Id_rubrique'];
$Id_mod=$res['Id_modif'];
if($Id_rub == $Id_mod)
{
$requete=$bdd->query("SELECT * FROM test,modification where Numero_texte='".$champ."'");
}
else
{
$requete=$bdd->query("SELECT * FROM test where Numero_texte='".$champ."'");
}
//echo"<table border=2> <tr> <td> <b>id client </b></td><td><b>Nom client</b></td><td><b>Prenom client</b></td><td><b>Tel client</b></td><td><b> Email_client</b></td>";
while($data = $requete->fetch()) {
?>
<table>
<tr></tr><tr></tr><br> <br>
<tr><td>Date :</td> <td> <?php echo '<h2>'.$data['date_dev'].'</h2>';?> </td></tr><br><br>
<tr><td>Nature:</td><td> <?php echo '<h2>'.$data['nature_texte'].'</h2>';?></td></tr><br><br>
<tr><td>Numero :</td><td> <?php echo '<h2>'.$data['numero'].'</h2>';?></td>
<td>Page:</td><td> <?php echo '<h2>'.$data['page_jo'].'</h2> ';?></td></tr><br><br>
<tr><td>Somme:</td><td> <?php echo '<h2>'.$data['Sommaire'].'</h2> ';?></td></tr><br><br>
<tr><td>Analyse:</td><td> <?php echo '<h2>'.$data['Analyse_du_texte'].'</h2> ';?></td></tr><br><br>
<tr><td>Terme:</td><td> <?php echo '<h2>'.$data['terme_du_modif'].'</h2> ';?></td>
</tr>
</table>
<?php}
$requete->closecursor();
echo"</table>";
?>
lifa8 -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Qu'est-ce qui ne fonctionne toujours pas ?
- la réception des données ?
- la connexion à la bdd ?
- les requêtes sql ?
- l'affichage des résultats ?
En développement, commence par afficher les erreurs de PDO :$bdd= new PDO('mysql:host=localhost; dbname=nombase','root','pwd'); $bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING); -
ca donne la meme erreur :Parse error: parse error in D:\wamp\www\Rechercher.php on line 123
je pense que c'est du a quelque part ou j'ai pas fermé mais j'arrive pas
lifa8 -
Je ne vois pas d'erreur de syntaxe dans ton dernier code. Peux tu nous montrer le dernière version de ton code en indiquant quelle est la ligne 123 ?