Recherche des données dans la BDD et afficher le résultat

Fermé
didierdizo Messages postés 52 Date d'inscription lundi 21 mai 2018 Statut Membre Dernière intervention 23 novembre 2021 - 10 janv. 2019 à 07:59
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 - 10 janv. 2019 à 18:53
Bonjour

Sur ma page web j'ai un formulaire de recherche et un tableau contenant les donnés de la BDD mais je sais pas comment rechercher les données voulues et afficher le résultat de la recherche effectuée

J'ai besoin de votre aide
A voir également:

2 réponses

jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
10 janv. 2019 à 11:40
Bonjour,


Difficile de te répondre avec si peu d'informations....

Ton formulaire.. il sert à faire la recherche ?
Donc tu as déjà codé la connexion à la bdd ?
Tu sais faire des requêtes SQL ?
Tu sais mettre une clause WHERE dans tes requêtes SQL ?


0
didierdizo Messages postés 52 Date d'inscription lundi 21 mai 2018 Statut Membre Dernière intervention 23 novembre 2021
10 janv. 2019 à 11:56
Oui le formulaire sert à faire la recherche

<form method="POST" action="resultat.php " >
   <input type='search' name='idSalles' placeholder='Rechercher...'/>
   <input type='submit'  value='ok'/>
   </form>
	

Autre fichier pour l'affichage
<?php

require_once('GestionErreurs.php');
REQUIRE_ONCE('Connexion.php');
?>

<?php

if (isset($_POST['ok'])) {

    $idSalles = $_POST['idSalles'];
    $res = $DB->query("select * from wp_horaire where idSalles like '%'. $idSalles .'%' order by ASC ");
    if ($res) {
        echo'<h2>Résultat de votre recherche</h2>\n';
        $data_exists = $res->fetchColumn();
    }
    if ($res->fetchColumn() > 0) {

        echo '<center><table border="1px" cellpadding="5px" cellspacing="0"></center>';
        echo '<tr>\n';
        echo '<th>Salles<th>\n';
        echo '<th>Periode<th>\n';
        echo '<th>jour<th>\n';
        echo '<th>Faculte<th>\n';
        echo '<th>Classe<th>\n';
        echo '<th>Cours<th>\n';
        echo '</tr>\n';
        while ($row = $res->fetchAll()) {
            echo '<tr>\n';
            echo '<td>$row["idSalles"]<td>\n';
            echo '<td>$row["Periode"]<td>\n';
            echo '<td>$row["jour"]<td>\n';
            echo '<td>$row["Faculte"]<td>\n';
            echo '<td>$row["idClasse"]<td>\n';
            echo '<td>$row["idCours"]<td>\n';
            echo '</tr>\n';
        }
        echo '</table>\n';
    } else {
        echo 'Pas de résultat';
    }
}
?>
<?php

$DB = null;
	


Essaie de me corriger s'il vous plait
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
10 janv. 2019 à 14:53
Bon... ton code est bourré d'erreurs...

Il serait bien, pour tes prochains codes, de lire et d'appliquer les consignes données dans ces deux liens :
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
Et en attendant, voici déjà un début de correction
<?php
//affichage des erreurs PHP
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);

//includes
require_once 'GestionErreurs.php';
require_once 'Connexion.php';


//traitement du formulaire
if (isset($_POST['ok'])) {

  $idSalles = !empty($_POST['idSalles']) ? $_POST['idSalles'] : NULL; 
  
  if($idSalles){
    $sql = "SELECT * 
          FROM wp_horaire 
          WHERE idSalles like '%". $idSalles ."%' 
          ORDER BY idSalles ASC ";
    
    try{
      $prep = $DB->prepare($sql);
      $prep->execute();
      
      $res = $prep->fetchAll();
      
      echo'<h2>Résultat de votre recherche</h2>\n';
      if (count($res) > 0) {
  
        echo '<center><table border="1px" cellpadding="5px" cellspacing="0"></center>';
        echo '<tr>\n';
        echo '<th>Salles<th>\n';
        echo '<th>Periode<th>\n';
        echo '<th>jour<th>\n';
        echo '<th>Faculte<th>\n';
        echo '<th>Classe<th>\n';
        echo '<th>Cours<th>\n';
        echo '</tr>\n';
        foreach ($res as $row){
            echo '<tr>\n';
            echo '<td>'.$row["idSalles"].'<td>\n';
            echo '<td>'.$row["Periode"].'<td>\n';
            echo '<td>'.$row["jour"].'<td>\n';
            echo '<td>'.$row["Faculte"].'<td>\n';
            echo '<td>'.$row["idClasse"].'<td>\n';
            echo '<td>'.$row["idCours"].'<td>\n';
            echo '</tr>\n';
        }
        echo '</table>\n';
      } else {
        echo 'Pas de résultat';
      }  
      
      
    }catch(Exception $e){
      echo " ERREUR ! " .$e->getMessage();
    }
  }  
}
?>

0
didierdizo Messages postés 52 Date d'inscription lundi 21 mai 2018 Statut Membre Dernière intervention 23 novembre 2021
10 janv. 2019 à 18:14
Merci pour la correction mais rien ne s'affiche quand j'exécute le code
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650 > didierdizo Messages postés 52 Date d'inscription lundi 21 mai 2018 Statut Membre Dernière intervention 23 novembre 2021
10 janv. 2019 à 18:27
A/s tu activé la gestion des erreurs PDo comme indiqué dans le lien que je t'ai donné ? (montres nous le code de connexion de ta bdd )

Et puis.. que contiennent tes fichiers GestionErreurs.php et Connexion.php ?? Le souci est peut-être là...

Quelle URL s'affiche lorsque tu arrives sur cette page ?

As tu essayé de mettre des ECHO dans le code pour essayer de voir la valeur de tes variables ?
0
didierdizo Messages postés 52 Date d'inscription lundi 21 mai 2018 Statut Membre Dernière intervention 23 novembre 2021
10 janv. 2019 à 18:37
Voici ce que contient mon fichier Connexion.php
<?php
try {

    $DB = new PDO("mysql:host=localhost;dbname=wordpress", 'root', '');
    // Activation des erreurs PDO
    $DB->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    // mode de fetch par défaut : FETCH_ASSOC / FETCH_OBJ / FETCH_BOTH
    $DB->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
} catch (Exception $e) {
    echo "$e->getMessage()";
}

Aussi le contenu de mon fichier GestionErreurs.php
<?php

error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE)	
?>	
0
didierdizo Messages postés 52 Date d'inscription lundi 21 mai 2018 Statut Membre Dernière intervention 23 novembre 2021
10 janv. 2019 à 18:42
URL affichée est http://localhost/wordpress/wp-admin/resultat.php
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
10 janv. 2019 à 18:53
Par contre...tu fais du WordPress ?
Je déplace dans le bon forum...
0