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

didierdizo Messages postés 52 Date d'inscription   Statut Membre Dernière intervention   -  
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   -
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 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 753
 
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   Statut Membre Dernière intervention  
 
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 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 753
 
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   Statut Membre Dernière intervention  
 
Merci pour la correction mais rien ne s'affiche quand j'exécute le code
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 753 > didierdizo Messages postés 52 Date d'inscription   Statut Membre Dernière intervention  
 
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   Statut Membre Dernière intervention  
 
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   Statut Membre Dernière intervention  
 
URL affichée est http://localhost/wordpress/wp-admin/resultat.php
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 753
 
Par contre...tu fais du WordPress ?
Je déplace dans le bon forum...
0