Connexion a mysql

amsy10 -  
 amsy10 -
Bonjour,
voila l erreur que j'ai en face de moi:
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 '')' at line 1

et pourtant vloi ma connexion

if(isset($_POST['valider']))
{
$valide=$_POST['valider'];
$kestion=$_POST['kestion'];
if(!empty($_POST['kestion']))
{
$connect = mysql_connect('localhost','root','') or die("Erreur de connexion au serveur");
mysql_select_db("sms") or die("Erreur de connexion à la base");
//include 'connexion.php';
$request="insert into ques_quiz( question) values ('".$kestion."')";
$select = mysql_query($request) or die (mysql_error());
echo "Votre question a été bien enregistrer.";
mysql_close();
}
else
{
echo "<h4>Vous devez saisir une question.</h4>";
}
}
guider moi .SVP
Configuration: Linux Fedora
Firefox 2.0.0.8

3 réponses

  1. Pilow Messages postés 410 Statut Membre 71
     
    Sous quel format est $kestion ?
    Y'a-t-il des ' dans cette variable ?

    Tu n'inhibe pas les ' avant ta requête SQL c'est peut-être ça
    Utilise un mysql_real_escape_string($kestion) pour voir
    0
    1. amsy10
       
      ah oui voila le messsage que je lui ecris
      "Est-ce-que la coupe d'afrique se passera en angola?"
      mais il n y aura pas une autre possibilite de contourner ca
      0
  2. Pilow Messages postés 410 Statut Membre 71
     
    Ben mysql_real_escape_string(); fais automatiquement ce que tu pourrais faire à la main mais bon
    C'est la meilleure solution

    Tu peux aussi utiliser addslashes();

    http://php.net/manual/fr/function.addslashes.php
    https://www.php.net/manual/fr/function.mysql-real-escape-string.php
    0
    1. amsy10
       
      ca ne va pas avec ce que je veux c 'estb plus comment faire mais je cherche tjr
      0
  3. Pilow Messages postés 410 Statut Membre 71
     
    Pourquoi ça ne va pas ?
    si tu fais :
    $request="insert into ques_quiz( question) values ('".mysql_real_escape_string($kestion)."')"; 

    C'est si horrible que ça ? :P
    0
    1. amsy10
       
      Pas du tout horrible ca marche parfaitement c'est que je n'arrivais pas a faire la requete.
      Merci
      0
      1. amsy10 > amsy10
         
        slt pilow
        encore une question je charge une page de facon automatik il y a des bouton input mais pour leur recuperer g ne recuperer que le premier regarde seulemen c ke je fais
        <form method="POST">
        <CENTER><strong><em><H3>JEU INTERNE QUIZ</H3></em></strong></CENTER>
        <TABLE>
        <tr>
        <td></td><td></td></tr>
        <?php
        $connect_db = mysql_connect('localhost','root','') or die("Erreur de connexion au serveur");
        $conect_table=mysql_select_db("sms") or die("Erreur de connexion a la table");
        $conect_tab=mysql_query("select * from ques_quiz");
        while($result=mysql_fetch_array($conect_tab))
        { ?>
        <tr><TD><? echo $result[0]; ?></TD>

        <TD><? echo $result[1];echo "<br>"; ?>
        <form action="" name="f1" method="POST"> <input type="radio" name="ques1" value="o">Oui<input type="radio" name="ques1" value="n">Non </form></TD>
        </tr>

        <? }
        mysql_close(); ?>
        </TABLE>
        <input type="submit" name="ok" value="Ok">
        <input type="reset" name="res" value="reset">
        <? if(isset($_POST['ok'])) echo $_POST['ques1']; ?>
        </form>

        et il prend effectivemen les question et les mais les input comment l va les recuperer pr un resultat
        0