IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Moteur de recherche [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 79
    Par défaut Moteur de recherche
    Bonjour
    me revoici avec a nouveau un probleme
    j'ai cree un moteur de recherche pour trouver des infos dans ma base de donnée, c'est info devrait etre poster sur un page avec une quantite limite par page , donc plusieur page si bcp d'infos...
    voici mon code php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    <?
    include("chiens.inc");
     
    $login=htmlentities(trim($_SESSION['login']));
     
    // Connexion au serveur mysql
    $connect = mysql_connect($host, $user,
    $password)
    or die('Impossible de se connecter : ' . mysql_error());
    // sélection de la base de données
    mysql_select_db($database, $connect);
     
    $metier=$_POST['metier'];
    $departement=$_POST['departement'];
    $codepostal=$_POST['codepostal'];
    $lieu=$_POST['lieu'];
     
    $limit = 10;
    if($debut==""){$debut=0;}
    $debut=$pge*$limit;
     
    $requete= "select * from membre where metier like '%$metier%' AND departement like '%$departement%' AND codepostal like '%$codepostal%' and lieu like '%$lieu%'";
     
    $total=mysql_query($requete) or die("SQL1 : ".mysql_error()); 
    $nb_tot=mysql_num_rows($total);
    $nbpages=ceil($nb_tot/$limit); // ceil = plafond : pour arrondir à la valeur supérieure
    $resultat=mysql_query($requete. "limit, $debut, $limit") or die("SQL1 : ".mysql_error()); 
     
    while ($rows=mysql_fetch_array($resultat)) {
    $login=$rows[login]; $adresse=$rows[adresse] ; $ville=$rows[ville];
     
    echo "login : $login, adresse : $adresse, ville : $ville";
     
    }
    // affichage de la première page si nécessaire (si nb total de pages supérieur à 5)
    if($nbpages>>3 and $pge>2){
    	echo  "<a href=\"?pge=0&$login=$login&$adresse=$adresse&$ville=$ville\"><b>Début</b></a>";
    	}
    // AFFICHAGE DU LIEN PRECEDENT SI BESOIN EST (LA PREMIERE PAGES EST 0)
    if ($pge>0){
    	$precedent=$pge-1;
    	echo  "<a href=\"?pge=$precedent&$login=$login&$adresse=$adresse&$ville=$ville\">
    
    	<b><fontcolor='#993366'>Précédente</font></b></a>";
    	}
    // AFFICHAGE DES NUMEROS DE PAGE
    $i=0;$j=1;
    if($nb_tot>$limit){
    	while($i<($nbpages))
    		{ //  pour limiter l'affichage du nombre de pages restantes
    			if ($i>$pge-3 and $i<$pge+3)
    			{
    				if($i!=$pge){echo "<a href=\"?pge=$i&$login=$login&$adresse=$adresse&$ville=$ville\">$j</a>";}
    				else {echo "<b>$j</b> ";}//met en gras le N° de la page en cours
    			}
    			$i++;$j++;
    		}
    }
    // AFFICHAGE DU LIEN SUIVANT SI BESOIN EST
    if($pge<$nbpages-1){
    	$suivant=$pge+1;
    	echo "<a href=\"?pge=$suivant&$login=$login&$adresse=$adresse&$ville=$ville\"><b></b></a>";
    	}	
    // affichage de la dernière page si nécessaire
    if($nbpages>3 and $pge<$nbpages-3){
    $fin=$nbpages-1;
    	echo  "<a href=\"?pge=$fin&$login=$login&$adresse=$adresse&$ville=$ville\"><b>fin</b> ($nbpages)</a>";
    	}
     
    // on ferme la base
    mysql_close();
     
    ?>
    voici le message d'erreur obtenue quand je lance ma recherche

    SQL1 : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' 0, 10' at line 1

    je precise que les infos trouver s"afficherons sur la page d'ou la recherche est partis..si vous souhaitez d'autre info hesiter pas...
    merci

  2. #2
    Membre chevronné
    Avatar de djayp
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    295
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 295
    Par défaut
    Salut !

    Après "limit" il n'y a pas de virgule. Il te faut remplacer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $resultat=mysql_query($requete. "limit, $debut, $limit")
    par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $resultat=mysql_query($requete. "limit $debut, $limit")
    A++

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 79
    Par défaut
    merci pour le service express et efficasse

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Info]moteur de recherche full text en environnement j2ee
    Par ddams dans le forum API standards et tierces
    Réponses: 4
    Dernier message: 03/11/2004, 19h39
  2. comment faire ma base de donnée pour un moteur de recherche
    Par HoB dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 04/05/2004, 15h07
  3. Moteur de recherche par date
    Par Prue dans le forum ASP
    Réponses: 17
    Dernier message: 27/08/2003, 16h07
  4. [Technique] Index, comment font les moteurs de recherche ?
    Par bat dans le forum Décisions SGBD
    Réponses: 4
    Dernier message: 25/10/2002, 15h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo