Php mysql

Fermé
noumouydokhé Messages postés 22 Date d'inscription mercredi 19 novembre 2008 Statut Membre Dernière intervention 29 décembre 2008 - 29 déc. 2008 à 14:18
Guillaume k Messages postés 23 Date d'inscription mardi 26 août 2008 Statut Membre Dernière intervention 1 septembre 2010 - 29 déc. 2008 à 15:20
Bonjour,
voici mon code
index.php
<?php
?>
<form action="emis.php" method="post">
<input type="text" name="user_name" />
<input type="text" name="user_password" />
<input type="text" name="user_email"/>
<input type="submit" value="Enregister"/>
</form>
<?php
?>

emis.php
<?php
$result = @mysql_connect('localhost','root','');
mysql_select_db('site');
$sql_query ="INSERT INTO users (user_name,user_password,user_email) VALUES ($_POST['user_name'],$_POST['user_password'],$_POST['user_email'])";
$result = mysql_query($sql_query);
if(!$result)
echo "kham";

?>

J'ai toujours l'erreur

Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\Program Files\EasyPHP 2.0b1\www\script\emis.php on line 4

8 réponses

@nGel_974 Messages postés 3163 Date d'inscription dimanche 28 octobre 2007 Statut Membre Dernière intervention 25 avril 2010 157
29 déc. 2008 à 14:25
Salut c'est un peu con ce que je vais dire mais essaie d'ajouter des espaces après tes virgules ;

$sql_query ="INSERT INTO users (user_name, user_password, user_email) VALUES ($_POST['user_name'], $_POST['user_password'], $_POST['user_email'])"; 


Sinon je ne vois pas d'où peut venir le problème... Les quotes sont bien ouvertes et bien fermées, pas de mélanges...

Pour la connexion je te propose ce code :

mysql_connect($host,$user,$passwd)
or die("erreur de connexion au serveur $host");


Que tu peux retrouver en détail là : http://www.commentcamarche.net/contents/php/phpbdd.php3. Et vérifie en affichant dans des echo, si tu transmets bien les bonnes valeurs à ta page emis.php.

Penses à fermer ta base de données aussi =>

 // Deconnexion de la base de donnees
mysql_close();


0
bissdebrazza Messages postés 2065 Date d'inscription vendredi 29 juin 2007 Statut Contributeur Dernière intervention 7 décembre 2017 712
29 déc. 2008 à 14:27
salut!

essai avec ça!

<?php
$result = @mysql_connect('localhost','root','');
mysql_select_db('site');
$sql_query ="INSERT INTO users (user_name,user_password,user_email) VALUES ('$_POST['user_name']','$_POST['user_password']','$_POST['user_email']')";
$result = mysql_query($sql_query);
if(!$result)
echo "kham";


?>
0
noumouydokhé Messages postés 22 Date d'inscription mercredi 19 novembre 2008 Statut Membre Dernière intervention 29 décembre 2008
29 déc. 2008 à 14:28
ça régle pas le probléme
0
bissdebrazza Messages postés 2065 Date d'inscription vendredi 29 juin 2007 Statut Contributeur Dernière intervention 7 décembre 2017 712
29 déc. 2008 à 14:32
OK!

alors essai ceci:

<?php
$name=$_POST['user_name'];
$pass=$_POST['user_password'];
$mail=$_POST['user_email'];

$result = @mysql_connect('localhost','root','');
mysql_select_db('site');
$sql_query ="INSERT INTO users (user_name,user_password,user_email) VALUES ('$name,'$pass','$mail')";
$result = mysql_query($sql_query);
if(!$result)
echo "kham";

?>
0

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

Posez votre question
noumouydokhé Messages postés 22 Date d'inscription mercredi 19 novembre 2008 Statut Membre Dernière intervention 29 décembre 2008
29 déc. 2008 à 14:44
je m'excuse mais ça régle pas le probléme
0
@nGel_974 Messages postés 3163 Date d'inscription dimanche 28 octobre 2007 Statut Membre Dernière intervention 25 avril 2010 157
29 déc. 2008 à 14:47
Est-ce que tu as relu mon post ? car j'y ai rajouté quelques informations bonne à savoir =)
0
Utilisateur anonyme
29 déc. 2008 à 14:49
bonjour

<?php
$name=$_POST['user_name'];
$pass=$_POST['user_password'];
$mail=$_POST['user_email'];

$result = @mysql_connect('localhost','root','');
mysql_select_db('site');
// manque une quote là ------------------------------------------------------------------------------------------>
$sql_query ="INSERT INTO users (user_name,user_password,user_email) VALUES ('$name','$pass','$mail')";
$result = mysql_query($sql_query);
if(!$result)
echo "kham";

?>
autre chose à vérifier :
ces noms : user_name,user_password,user_email , sont-ils ceux des colonnes de la table ?

0
noumouydokhé Messages postés 22 Date d'inscription mercredi 19 novembre 2008 Statut Membre Dernière intervention 29 décembre 2008
29 déc. 2008 à 15:11
si je mets des chaines de caractéres par exemple
$sql_query ="INSERT INTO users (user_name,user_password,user_email) VALUES ('wi','wi','wi')";

ça marche mais j'ai éssayé la solution de giheller mais ça marche pas
0
Utilisateur anonyme
29 déc. 2008 à 15:16
je te propose de mettre en début du programme et de nous donner le résultat
echo "<pre>";print_r($_POST);echo "</pre>";

pour vérifier que tu reçois bien quelque chose.
0
Guillaume k Messages postés 23 Date d'inscription mardi 26 août 2008 Statut Membre Dernière intervention 1 septembre 2010 3
29 déc. 2008 à 15:20
Essaie plutôt ça:
<?php

mysql_connect('localhost','root','');
mysql_select_db('site');
$sql_query = mysql_query("INSERT INTO users (user_name,user_password,user_email) VALUES (".$_POST['user_name'].",".$_POST['user_password'].",".$_POST['user_email'].")");
$result = mysql_fetch_array($sql_query);
if(!$result)
{
      echo "kham";
}
mysql_close();

?> 

Pour faire une requête sql avec mysql, il faut utiliser la fonction "mysql_query".
Pour mettre les résultats dans un tableau, il faut utiliser "mysql_fetch_array" (il en existe d'autres mais peu importe).
Quand tu ouvres une connexion à ta base de données, n'oublies pas de la refermer avec la fonction "mysql_close();".
Il me semble qu'il n'y a pas d'autre erreur.

J'espère t'avoir aider.
édition : une petite erreur dans le code, je viens de la corriger.
0