[PHPmysql] probleme de noob

Fermé
canado Messages postés 26 Date d'inscription mercredi 31 mai 2006 Statut Membre Dernière intervention 8 juillet 2010 - 8 juin 2006 à 10:41
canado Messages postés 26 Date d'inscription mercredi 31 mai 2006 Statut Membre Dernière intervention 8 juillet 2010 - 8 juin 2006 à 14:15
Bonjour, je débute dans le phpmysql, et donc dans ce systeme de base de donnée, bref j'essaye tout simplement d'inserer une variable dans un champ se trouvant dans une table que j'ai créée, le probleme c'est qu'a l'affichage de la page il me met directement une erreur, la suivante:
Notice: Undefined variable: textfield in c:\program files\easyphp1-8\www\index.php on line 13
Apparement, la variable textfield est indéfini, pourtant je la met bien, alors je sais pas ce qu'il y a.
Donc je vous met tout le code de la page:

<html>
<head>
<title>Menu</title>

</head>

<body>
<form name="test" action="./" method="post">
<div align="center">Nom:
<input name="textfield" type="text">
<?php
mysql_connect("localhost","root","");
mysql_select_db("essai");
if ($textfield != NULL)
mysql_query("INSERT INTO test VALUES('','$textfield')");
mysql_close();
?>
<input name="Valider" input type="submit" value="Valider">
</div>
</form>
</body>
</html>

Merci de votre aide.
PS: si ca peut vous aidez je travail en local, alors si j'ai oublié de regler quelque chose dites le moi, merci. ^^

7 réponses

j'ai deux remarque a faire, je sais que tu es debutant mais dés mnt essaye de ne pas melanger le code php et le html, sinon la 2eme c'est le faite de se connecter a la base a chaque rechargement de la page sert a rien du tout!

j'ai courigé ton problem, j'espere que c'est ok pour toi:

<html>
<head>
<title>Menu</title>

</head>

<body>
<form name="test" action="?" method="post">
<div align="center">Nom:
<input name="textfield" type="text">


<?php

if (isset($_POST['textfield'])) {
$textfield = $_POST['textfield'];
if ($textfield =! "") {
mysql_connect("localhost","root","");
mysql_select_db("essai");


mysql_query("INSERT INTO test VALUES('','$textfield')");
mysql_close();
}
?>
<input name="Valider" input type="submit" value="Valider">
</div>
</form>
</body>
</html>
0
canado Messages postés 26 Date d'inscription mercredi 31 mai 2006 Statut Membre Dernière intervention 8 juillet 2010
8 juin 2006 à 11:09
J'essaye tout de suite merci. ^^
desolé d'avoir mis ca la, parce que l'on me repond rarement.
0
canado Messages postés 26 Date d'inscription mercredi 31 mai 2006 Statut Membre Dernière intervention 8 juillet 2010
8 juin 2006 à 11:24
Bon, j'ai essayé et il me dit qu'il y a une erreur, le dernier accolade je le met ou? merci
0
canado Messages postés 26 Date d'inscription mercredi 31 mai 2006 Statut Membre Dernière intervention 8 juillet 2010
8 juin 2006 à 11:42
Bon j'ai essayé de mettre l'acolade apres que tu ai refermé la premiere, et pis dans ma table les enregistrement sont bien pris en compte, le seul probleme est qu'il ne me met pas le mot que j'ai moi meme mis mais il me met le caractere "1" a la place.
0

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

Posez votre question
canado Messages postés 26 Date d'inscription mercredi 31 mai 2006 Statut Membre Dernière intervention 8 juillet 2010
8 juin 2006 à 12:44
personne n'a deja eu ce probleme la?
0
Normal, il y a une erreur dans ce que t'as mis elghafoud.

if ($textfield =! "")

Correction :
<?php

if( isset($_POST['Valider']) )
{
    $textfield = trim($_POST['textfield']);
    if( !empty($textfield) )
    {
        unset($message);
        $textfield = mysql_real_escape_string($textfield);
        $connexion = mysql_connect('localhost', 'root', '');
        $bdd = mysql_select_db('essai');
        @ $query = mysql_query("INSERT INTO test VALUES('','" . $textfield . "')");
        if( $query )
        {
            $message = 'Données bien enregistrées.';
        }
        else
        {
            $message = 'Erreur de requête :<br /><br />' . mysql_error();
        }
    }
}

?>

<html>
<head>
<title>Menu</title>
</head>

<body>
<?php
if( isset($message) )
{
    echo '<p>' . $message . '</p>';
}
else
{
?>
  <form name="test" action="" method="post">
    <div align="center">Nom:
    <input name="textfield" type="text">
    <input name="Valider" type="submit" value="Valider">
    </div>
  </form>
<?php
}
?>
</body>
</html>
0
canado Messages postés 26 Date d'inscription mercredi 31 mai 2006 Statut Membre Dernière intervention 8 juillet 2010
8 juin 2006 à 14:15
Ha merci, j'avais pas vu cette erreur non plus, merci beaucoup ^^
0