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

  FORUM HardWare.fr
  Programmation
  PHP

  recherche avec php gans une base

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

recherche avec php gans une base

n°2016518
fatma1989
Posté le 12-08-2010 à 16:33:41  profilanswer
 

Bonjour:
 J'aimerai faire une fonction de recherche qui me permet d'afficher si le materiel recherché existe ou non, et s'il existe il va m'afficher ces  caractéristique sous forme d'un tableau. :??:  
j'ai une table materiel. la recherche s'effectura si on donne l'id du materiel exact. si vous pouviez m'aidez a corriger mon  script.  
merci d'avance.
voici mon script:
<?php
//Declaration des parametres de connexion
$host="localhost";
$user="root";
$bdd="parcinfo";
$password= "";
 
//Connexion au serveur
$con=@mysql_pconnect($host,$user,$password);
 
//Connexion a la base
mysql_select_db($bdd);
 
//Recuperation des resultats
$idmateriel=$_POST['idmateriel'];
$date=$_POST['date'];
$prix=$_POST['prix'];
$garantie=$_POST['garantie'];
 
//recherche
$reslt="SELECT idmateriel FROM materiel WHERE idmateriel=\"$idmateriel\"";
if (!mysql_query($reslt))
{ echo "nexiste pas";}
else{
while($row = mysql_fetch_array($reslt))
{ echo $row['idmateriel'] . " " . $row['date'] . " " . $row['prix'] . " " . $row['garantie'];
echo "<br />"; }}
?>

Citation :


mood
Publicité
Posté le 12-08-2010 à 16:33:41  profilanswer
 

n°2016522
skp94
Posté le 12-08-2010 à 16:46:21  profilanswer
 

fatma1989 a écrit :


//recherche
$reslt="SELECT idmateriel FROM materiel WHERE idmateriel=\"$idmateriel\"";
if (!mysql_query($reslt))
{ echo "nexiste pas";}
else{
while($row = mysql_fetch_array($reslt))
{ echo $row['idmateriel'] . " " . $row['date'] . " " . $row['prix'] . " " . $row['garantie'];
echo "<br />"; }}
?>

 

 :hello:

 

tu as zappé le $reslt=mysql_query(...)
tu aura donc:
if(! ($reslt=mysql_query(...))

 

dis-moi si ça fonctionne comme ça.


Message édité par skp94 le 12-08-2010 à 16:46:35
n°2016533
fatma1989
Posté le 12-08-2010 à 17:21:12  profilanswer
 

nn ça fonctionne pas:( le probleme méme si le materiel existe dans la base de données il m'affiche le message n'existe pas

n°2016550
fatma1989
Posté le 12-08-2010 à 18:16:16  profilanswer
 

svp aidez moi :( cest trés urgent merciiii infinement

n°2016551
stealth35
Posté le 12-08-2010 à 18:18:15  profilanswer
 

fais un mysql_error pour voir ce qui se passe


Message édité par stealth35 le 12-08-2010 à 18:19:41
n°2016552
fatma1989
Posté le 12-08-2010 à 18:26:51  profilanswer
 

le probleme que la condition(si) ne fonctionne pas meme si je donne une valeur existe dans la base le msg n'existe pas s'affiche

n°2016554
stealth35
Posté le 12-08-2010 à 18:48:13  profilanswer
 

fais
 
if (!mysql_query($reslt))
{  
echo mysql_error() . " nexiste pas";
}
else{

n°2016601
skp94
Posté le 12-08-2010 à 22:37:25  profilanswer
 

Fais d'abord ce que stealth35 t'as dit et post le message d'erreur (si message il y a).
Tu peu aussi mettre "mysql_query(...)or die(mysql_error);"
Dans le cas où il n'y aurait pas de message, change ton test if par:
if(mysql_query(...)==FALSE)

 

vérifie également par un echo ta variable $_POST['idmateriel']:
echo "|$_POST['idmateriel']|<br>";
s'il y a des espace superflux, les "|" te le montreront.

 

[je me répète un peu, même si ton problème ne vient pas de là, tu as oublié de mettre $reslt=mysql_query(...) ceci implique que ta prochaine erreur sera le mysql_fetch_array($reslt) qui ne fonctionnera pas (ou alors tu va m'apprendre un truc de fou!!!) ]

 

On se reparle demain
++


Message édité par skp94 le 12-08-2010 à 22:38:52
n°2016795
fatma1989
Posté le 13-08-2010 à 17:36:08  profilanswer
 

oui maintenant l'erreur est mysql_fetch_array :'( Warning: mysql_fetch_row() expects parameter 1 to be resource????

n°2016848
fatma1989
Posté le 13-08-2010 à 22:36:57  profilanswer
 

j'ai corrigé le script mais il reste un seul probleme quand le materiel n'existe pas le script ne m'affich rien j'aime qu'il n'affiche n'existe pas??
<?php  
//Declaration des parametres de connexion  
$host="localhost";  
$user="root";  
$bdd="parcinfo";  
$password= "";  
 
//Connexion au serveur  
$con=@mysql_pconnect($host,$user,$password);  
 
//Connexion a la base  
mysql_select_db($bdd);  
 
//Recuperation des resultats  
$idmateriel=$_POST['idmateriel'];  
$date=$_POST['date'];  
$prix=$_POST['prix'];  
$garantie=$_POST['garantie'];  
 //recherche
$query = sprintf("SELECT idmateriel FROM materiel WHERE idmateriel=%s", mysql_real_escape_string($idmateriel));
 
$result = mysql_query($query);
 
if (!$result)
{
  echo "nexiste pas";
}
else
{
  while ($row = mysql_fetch_array($result))
  {
       echo $row['idmateriel'];
  }
}
?>

mood
Publicité
Posté le 13-08-2010 à 22:36:57  profilanswer
 

n°2016854
skp94
Posté le 13-08-2010 à 23:26:54  profilanswer
 

Je pense que c'est parce que ta requête ne renvoie plus FALSE à cause du mysql_real_escape_string.
Fais des echo de $result avant et après un $result=mysql_fetch_array($result)
juste pour voir.
Si tu n'as ni 'NULL' ni '0' c'est que tu devra changer ton test if() en conséquence.
 
Pourrais-tu nous expliquer ce qui n'allait pas dans ton code (ce que tu as corrigé); ça peut être utile à d'autre personne.
bon courage
++


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

  recherche avec php gans une base

 

Sujets relatifs
Recherche d'un benevoleMacro de recherche dans differents fichiers
RECHERCHE PROGRAMMEURRecherche editeur C type Nassi-Schneiderman
vider une base phpmyvisitN'arrive pas à se connecter à distance à ma base de donnée avec navica
recherche texte dans .batBase de données distantes
INTRODUIRE une base de donnée dans Le VB[ACCESS] Sécurité Base de Données
Plus de sujets relatifs à : recherche avec php gans une base


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