Probleme : Erreur mysql

Fermé
KOKOLO - 13 nov. 2007 à 17:28
 KOKOLO - 13 nov. 2007 à 18:39
Bonjour,

J ai un petit soucis...

Je suis en train de faire un moteur de recherche me permettant de verifier si certaines données sont déjà présentes dans la base...J'ai donc fait un formulaire dans lequel j'entre le type de lot et un mot clé.

Le probleme c est que lorsque je clique sur "chercher" cela m affiche l erreur suivante :

Erreur SQL !
Resource id #4
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 'Resource id #4' at line 1


Voici le code:

<?php 
 
include ('dbconnect.php');
 
if ($typelots == 'Argent')
{ 
$sql=mysql_query("SELECT * FROM listeconcoursArgent WHERE nomconcoursargent LIKE '%$motcle%'") or die('Impossible d insérer les données dans la base'.mysql_error());
 
// on envoie la requête
 
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); 
 
if (!$req)
{
        echo "query = ".$sql."\n";
        echo "mysql_errno = ".mysql_errno($link)."\n";
        echo "mysql_error = ".mysql_error($link)."\n";  
        exit;
} 
 
if (mysql_num_rows($req) > 0)
{
 
        // on fait une boucle qui va faire un tour pour chaque enregistrement
        while($data = mysql_fetch_array($req)) 
        {       
                echo '<table width="352" height="101" border="0">
                                          <tr>
                            <td width="137"><div align="center">'.$data['nomconcoursargent'].'</div></td>
                          </tr>
                </table>';
          }   
}
else
{
        echo "<font color=red size=3></font><b>Aucun jeu concours similaire n'a été trouvé !</b></color>";
}
}
?>


Qu est ce qui cloche car je n arrive pas à voir ou est l erreur...?

Merci

5 réponses

Bonjour,

Effectivement c est un peu etourdi de ma part lol...

C est bon ca fonctionne maintenant ! :-)

merci et bonne soiree !
2
Ok, erreur de ma part, je suis allé trop vite dans la lecture de ton code pourquoi tu fais 2 fois mysql_query ?


$sql = mysql_query("SELECT * FROM listeconcoursArgent WHERE nomconcoursargent LIKE
'%$motcle%'") or die('Impossible d insérer les données dans la base'.mysql_error());

// on envoie la requête

$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

c'est normal qu'il y ai une erreur, dans $req la variable $sql n'est pas bon.

Il faut mettre en premier $sql = "SELECT * FROM listeconcoursArgent WHERE nomconcoursargent LIKE
'%$motcle%'";
1
Salut Kokolo,

On dirait que dans ta requête la variable $motcle n'est pas reconnu. Essaye de faire un echo $motcle après ta requête pour voir ce qu'il dit.
0
ou sinon tu as oublié dans ton code le $connect dans mysql_query() :

/* connection a une base mysql en local */
$connect = mysql_connect("localhost","root","");

/* selection de la base de donnée mysql */
mysql_select_db("votre_base", $connect);

/* la requête. */
mysql_query("Le texte de la requete sql", $connect);
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Bonjour,

J'ai fait un echo de $motcle et cela m affiche bien le motcle entré dans le formulaire...

Concernant la connection a la base, c est traite par le fichier dbconnect.php qui est utilisé pour toutes mes pages ayant besoin de la connection à la base...

Si quelqu un a la solution...Je suis preneur ! lol

Merci encore !
0