Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1378 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Rendre comme liens les résultats d'une BDD pris avec PHP

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Rendre comme liens les résultats d'une BDD pris avec PHP

n°2219893
bivensi
Posté le 17-02-2014 à 11:37:09  profilanswer
 

Bonjour.
J'ai effectué un moteur de recherche avec une BDD contenant 3 champs (id, nom et description) ainsi que 4 pages (search.php, bdd.php, function.php et details_hotels.php). Après clic sur le bouton rechercher, les résultats s'affichent correctement mais j'aimerai que ces résultats s'affichent comme des liens qui renvoient vers des pages respectives contenant les détails de chaque resultat trouvé.
 
search.php a comme code:
 
 
<?php
include ('bdd.php');
include ('function.php');
?>
 
<form action="search.php" method="post">
    <strong>Votre recherche</strong><br/>
    <input type="text" name="search"><br/><br/>
    <input type="submit" value="chercher" name="submit">
</form>
<?php
 if(isset($_POST['submit']))
 {
  $search=mysql_real_escape_string(htmlentities(trim($_POST['search'])));
  if(empty($search)) { $erreur[]="Veuillez saisir un mot clé";}
  else if(strlen($search)<2) {$erreur[]="Veuillez saisir un mot clé de plus de 3 caractères";}
  if(empty($erreur)){ resultat_recherche($search);}
  else { foreach($erreur as $erreurs){ echo $erreurs."<br>";}}
 }
?>
 
---------------------------------------------------------------------------------------
bdd.php:
 
<?php
$connect=mysql_connect('localhost','root','') or die('Impossible de se connecter a la BDD');
mysql_select_db('kinadresses');
?>
 
---------------------------------------------------------------------------------
function.php
 
<?php
include ('bdd.php');
function resultat_recherche($search)
{
 $ou="";
 $search=preg_split('/[\s]+/',$search);
 $total_resultat=count($search);
 foreach ($search as $key=>$searches)
 {
  $ou.="nom LIKE '%$searches%'";
  if($key !=($total_resultat-1))
  {
   $ou.=" AND ";
   
   }
   }
   
   $query=mysql_query("SELECT *FROM adresses WHERE $ou" );
   $rows=mysql_num_rows($query);
   if($rows){
    while($row=mysql_fetch_assoc($query))
    {
     echo $row['nom']."<br/><strong>".$row['description']."<strong>";
     }
     
     
    }else echo "Pas de resultat pour la recherche" ."$searches";
 
}
?>
 
-------------------------------------------------------------------------------------------------------
La dernière page contient les détails de chaque adresse.
 
Merci de m'aider.

mood
Publicité
Posté le 17-02-2014 à 11:37:09  profilanswer
 

n°2219895
bivensi
Posté le 17-02-2014 à 11:38:35  profilanswer
 

MA BDD EST LA SUIVANTE:
 
 
-- phpMyAdmin SQL Dump
-- version 3.4.5
-- http://www.phpmyadmin.net
--
-- Client: localhost
-- Généré le : Lun 17 Février 2014 à 10:08
-- Version du serveur: 5.5.16
-- Version de PHP: 5.3.8
 
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
 
 
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
 
--
-- Base de données: `kinadresses`
--
 
-- --------------------------------------------------------
 
--
-- Structure de la table `adresses`
--
 
CREATE TABLE IF NOT EXISTS `adresses` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nom` varchar(100) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
  `description` varchar(3000) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;
 
--
-- Contenu de la table `adresses`
--
 
INSERT INTO `adresses` (`id`, `nom`, `description`) VALUES
(1, 'Grand Hotel', 'Surplombant le fleuve Congo dans le Quartier résidentiel du centre ville, le Grand Hotel Kinshasa  est le plus grand complexe de la République Démocratique du Congo. Situé près des Ambassades et des résidences des Nations Unies, notre Hotel conjugue à merveille  la tradition Hotelière, confort, modernité et hospitalité africaine. Nous serons heureux de vous accueillir dans nos 204 chambres, spacieuses et confortable.  Fier de son expériences, le Grand Hotel vous offre un service 5 étoiles unique dans le pays.  Découvrez nos restaurants, nos lieux de détentes et nos salles d''exception, idéales pour la fete  et congrès. Entretenez votre forme dans notre centre sportif aux formes européennes... Profitez de nos terrains de sport, de notre piscine avec terrasse... Et flanez dans notre galerie marchande.  Auprès de nous, vous passerez un séjour inoubliable.  Nous acceptons Visa, Master Card et Pro-Credit.'),
(2, 'Buzoba', 'Longwa dit'),
(3, 'Hotel Venus', 'Situé dans le quartier résidentiel et sécurisé de la Gombe, à 5 minutes du centre des affaires de Kinshasa, le Vénus Hôtel vous offre un accueil chaleureux, un décor raffiné, une ambiance détendue, signes de la véritable élégance. Votre quête du confort, de la sécurité, de la tranquillité ainsi que d''un service satisfaisant pour un bon rapport qualité prix à Kinshasa vous conduira certainement au Venus Hôtel.  Chambres et suites, Jardins et salons, piscine et patio se donnent la réplique dans une sérénité bienfaisante.  Les plus du Vénus Hôtel:  - ATM Machine (VISA , MasterCard, Cartes Bancaires locales)  - Salle de sport équipée de machines cardio-training - Parking sécurisé et gratuit - Business center - Pharmacie - Salon de Coiffure - Service Western Union');
 
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

n°2220013
rufo
Pas me confondre avec Lycos!
Posté le 18-02-2014 à 12:36:41  profilanswer
 

sur chaque résultat, tu mets une lien hypertexte du genre :
echo "<a href=\"VoirNom.php?idnom=".$row['id']."\">".$row['nom']."<br/><strong>".$row['description']."<strong></a>";
 
To script VoirNom.php va récupérer via $_GET['idnom'] la valeur de l'id et t'affiche le détail relatif à l'id en conséquence...


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2220089
bivensi
Posté le 18-02-2014 à 18:30:02  profilanswer
 

Merci rufo.
J'ai essayé. Mais je me demande où mettre $_GET parce que la page contenant les informations de chaque résultat obtenu après recherche contient déjà un formulaire qui utilise la méthode POST.

n°2220095
David Bori​ng
Posté le 18-02-2014 à 19:38:30  profilanswer
 

Tu as déjà la page, c'est details_hotels.php
Ton lien doit pointer vers cette page avec l'id de l'hôtel comme argument, mais si cette page fonctionne déjà, tu dois savoir comment créer le lien.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Rendre comme liens les résultats d'une BDD pris avec PHP

 

Sujets relatifs
PHP + JavaScript/JqueryScript Php prise de Rendez vous
Bookmarklet - supprimer résultats recherche boncoin[PHP] Organisation Array
BDD changer chaine de connexion d'une base existantemauvais placement de dimension après MAJ des liens
[ PHP / Probleme ] PHP indisponible sur mon siteGestion de fichiers PHP
JS:étrange résultats regex pour traiter les erreursRendre la géométrie d'une matrice compréhensible à un programme
Plus de sujets relatifs à : Rendre comme liens les résultats d'une BDD pris avec PHP


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR