Recherche php/mysql qui ne marche pas
Résolu
olivierrobins
Messages postés
225
Date d'inscription
Statut
Membre
Dernière intervention
-
JooS Messages postés 2468 Date d'inscription Statut Membre Dernière intervention -
JooS Messages postés 2468 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis en train de créer une section "annuaire" sur un site pour un client, et j'ai un petit souci. J'ai fait un petit champ de formulaire pour pouvoir rechercher un terme dans les entrées de la base de données, et écrit le code php sur une page de résultats mentionnée dans le "action" du formulaire. Et ça ne me retourne aucun résultat. Ce qui est très bizarre, c'est que hier ça marchait, et je n'arrive pas à trouver ce que j'ai bien pu modifier pour que ça ne marche plus.
La page qui liste automatiquement toutes les entrées de la base de données (mise en page encore minable, c'est normal, je travaille d'abord sur le php et me pencherai sur le CSS quand ça marchera):
http://www.espritbains.com/annuaire_or_index.php
Si vous faites une recherche pour n'importe quel terme de cette page (construction, robins, contact, rue, ...) aucun résultat ne s'affichera, et je ne sais pas pourquoi.
extrait (forumlaire + php) de la page principale (codes d'accès sql remplacés par xxxx):
Et extrait (php) de la page de résultats:
L'erreur est probablement relativement bête et simple, mais je ne vois pas ce que ça peut être.
Merci d'avance, et si vous avez besoin d'infos supplémentaires dites-le moi.
Olivier
Je suis en train de créer une section "annuaire" sur un site pour un client, et j'ai un petit souci. J'ai fait un petit champ de formulaire pour pouvoir rechercher un terme dans les entrées de la base de données, et écrit le code php sur une page de résultats mentionnée dans le "action" du formulaire. Et ça ne me retourne aucun résultat. Ce qui est très bizarre, c'est que hier ça marchait, et je n'arrive pas à trouver ce que j'ai bien pu modifier pour que ça ne marche plus.
La page qui liste automatiquement toutes les entrées de la base de données (mise en page encore minable, c'est normal, je travaille d'abord sur le php et me pencherai sur le CSS quand ça marchera):
http://www.espritbains.com/annuaire_or_index.php
Si vous faites une recherche pour n'importe quel terme de cette page (construction, robins, contact, rue, ...) aucun résultat ne s'affichera, et je ne sais pas pourquoi.
extrait (forumlaire + php) de la page principale (codes d'accès sql remplacés par xxxx):
<p> <form id="recherche_annuaire" method="POST" action="annuaire_or_search_results.php"> <input type="text" name="recherche" /> <input type="submit" name="submit" value="Recherche" style="padding:2px;" /> </form> </p> <?php function tronquer($texte,$n) { if (strlen($texte) > $n) { $texte = substr($texte, 0, $n); $position_espace = strrpos($texte, " "); $texte = substr($texte, 0, $position_espace); $texte .= '...'; return $texte; } else return $texte; } try { $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION; $bdd = new PDO('mysql:host=xxxxxxxx;dbname=xxxxxxxxxx', 'xxxxxxxxxx', 'xxxxxxxxx', $pdo_options); $reponse = $bdd->query('SELECT * FROM membres'); while ($donnees = $reponse->fetch()) { echo '<div class="entree_annuaire">'; echo '<h2 class="entree_annuaire_societe">' . $donnees['societe'] . '</h2>'; echo '<p class="entree_annuaire_description">' . '</p>'; echo 'Catégorie: ' . $donnees['categorie'] . '<br />'; echo tronquer($donnees['description'],5); echo 'Adresse: <br />' . $donnees['numero_rue'] . ', ' . $donnees['rue'] . '<br />'; echo $donnees['cp'] . ' ' . $donnees['ville'] . '<br />'; echo $donnees['pays'] . '<br />'; echo 'N° de téléphone' . $donnees['telephone'] . '<br />'; echo 'N° de fax' . $donnees['fax'] . '<br />'; echo 'Adresse e-mail' . $donnees['email'] . '<br />'; echo '<img src="' . $donnees['logo_url'] . '" />' .'<br /></div>'; } $reponse->closeCursor(); } catch(Exception $e) { die('Erreur : '.$e->getMessage()); } ?>
Et extrait (php) de la page de résultats:
<?php //récupération du terme recherché: $recherche = $_POST['recherche']; try { $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION; $bdd = new PDO('mysql:host=xxxxxxxx;dbname=xxxxxxxx', 'xxxxxxxx', 'xxxxxxxx', $pdo_options); $reponse = $bdd->query("SELECT * FROM membres WHERE categorie OR societe OR description OR ville OR pays LIKE '%".$recherche."%'"); while ($donnees = $reponse->fetch()) { echo 'Catégorie: ' . $donnees['categorie'] . '<br />'; echo 'Société: ' . $donnees['societe'] . '<br />'; echo 'Description: ' . $donnees['description'] . '<br />'; echo 'Adresse: <br />' . $donnees['numero_rue'] . ', ' . $donnees['rue'] . '<br />'; echo $donnees['cp'] . ' ' . $donnees['ville'] . '<br />'; echo $donnees['pays'] . '<br />'; echo 'N° de téléphone' . $donnees['telephone'] . '<br />'; echo 'N° de fax' . $donnees['fax'] . '<br />'; echo 'Adresse e-mail' . $donnees['email'] . '<br />'; echo '<img src="' . $donnees['logo_url'] . '" />' .'<br />'; } $reponse->closeCursor(); } catch(Exception $e) { die('Erreur : '.$e->getMessage()); } ?>
L'erreur est probablement relativement bête et simple, mais je ne vois pas ce que ça peut être.
Merci d'avance, et si vous avez besoin d'infos supplémentaires dites-le moi.
Olivier
A voir également:
- Recherche php/mysql qui ne marche pas
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Easy php - Télécharger - Divers Web & Internet
- Rechercher ou entrer l'adresse mm - recherche google - Guide
- Recherche photo - Guide
- Mysql community server - Télécharger - Bases de données
2 réponses
Merci, mais malheureusement ça n'a pas fonctionné (la page de résultats est toujours vide).