Problème de syncronisation avec PHPmyAdmin

Bonjour, j’essaye de faire un formulaire pour mon site ,je n’arrive pas à envoyer mes données vers PHPmyAdmin :@ mais j’arrive a les écrire manuellement sur la base.:smiley:

Aurez-vous une idée du problème ??


<?php $timestamp_expire = time() + 9999*24*3600; // Le cookie expirera dans un an
setcookie('speudo', '$_POST['speudo']', $timestamp_expire); // On écrit un cookie
setcookie('pass', '$_POST['pass']', $timestamp_expire); // On écrit un autre cookie...
setcookie('email', '$_POST['email']', $timestamp_expire);
setcookie('nom', '$_POST['nom']', $timestamp_expire);
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>cibleformulaire</title>
</head>

<body>
félicitation vous vous êtes inscrit!!!
<?php
mysql_connect("localhost", "root", "");
mysql_select_db("iphoneinside");

// On ajoute une entrée avec mysql_query
mysql_query("INSERT INTO `regis` ( `id` , `speudo` , `pass` , `email` , `civ` , `prenom` , `nom` , `b_day` , `b_mounth` , `b_year` , `adress` , `adress2` , `ville` , `cp` , `pays` ) VALUES('', '$_POST['speudo']', '$_POST['pass']', '$_POST['email']', '($_POST['civ'])', '$_POST['prenom']', '$_POST['nom']', '($_POST['b_day'])', '($_POST['b_mounth'])', '$_POST['b_year']', '$_POST['adress']', '$_POST['adress2']', '$_POST['ville']', '$_POST['cp']', '($_POST['pays'])')");
mysql_close();
?>
</body>
</html>

Edité le 21/08/2007 à 16:53

Salut rezar,

Déjà on remarque ça :

:smiley:

c’est vrai lol :ane:

Quand tu tentes l’ecriture avec la requête SQL en PHP tu as quelle erreur en retour ?

ta requete il faut la mettre entre "
Edité le 21/08/2007 à 15:19

Sunabozu => je vais regarder mais je crois que j’avais déja tester et j’avais la meme chose

NeqO => ça ne change rien

Merci pour vos réponse

Essaye en appliquant mysql_real_escape_string sur chacune des variables POST que tu injectes dans la requête. Concrêtement, si $_POST[‘prenom’] contient un apostrophe, ta requête plantera.

Réécris un peu ta requête, car au niveau du nom tu fais un drôle de mix.

rebonjour, si je mets dans PHPmyadmin rubrique requète SQL

[/code]
INSERT INTO iphoneinside.regis (id, speudo, pass, email, civ, prenom, nom, b_day, b_mounth, b_year, adress, adresse, ville, cp, pays) VALUES ( ‘’, ‘’, ‘’, ‘’, ‘’, ‘’, ‘’, ‘’, ‘’, ‘’, ‘’, ‘’, ‘’, ‘’, ‘’)

[code]

ça me crée une entrée dans ma table donc pas de pb :slight_smile:

mais si je rajoute la suite de mon code PHP

<?php mysql_connect("localhost", "root", ""); mysql_select_db("iphoneinside"); mysql_query(INSERT INTO `iphoneinside`.`regis` (`id`, `speudo`, `pass`, `email`, `civ`, `prenom`, `nom`, `b_day`, `b_mounth`, `b_year`, `adress`, `adresse`, `ville`, `cp`, `pays`) VALUES ( ", '', '', '', '', '', '', '', '', '', '', '', '', '', '') mysql_close(); ?>

PHPmyAdmin ne me crée pas de nouvelle entrée même si j’enlevève Php et les balises php et il me dit :
#1064 - 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 ‘<?php
mysql_connect(“localhost”, “root”, “”)’ at line 1

qu’est ce que ça veut dire ??
Edité le 22/08/2007 à 17:38

Heu, ne me dis pas que tu envoies ton code php à phpmyadmin?

Si oui, alors non, ça ne risque pas :slight_smile:

Phpmyadmin va faire cela (en gros, je schématise)

<?php $tesdonnées = '<?php... ?>';


mysql_connect(…);
mysql_select_db();

mysql_query($tesdonnées);
?>

Ie: phpmyadmin va envoyer ta requête à mysql_query, donc si tu met du php dedans, n’espère même pas qu’il soit analysé ou quoique ce soit.

()

mets ta requète entre double quote " ", puis t’as pas fermé la parenthèse de mysql_query, ni point virgule
sinon ca a l’air juste.

mais ou est ce que tu écrit cette requète ?
On dirait que tu le fais dans l’interface phpMyAdmin.
Si c’est le cas, il faut surtout pas mettre de php, et puis si tu es dans phpMyAdmin, il gère tout seul les connections
donc t’as juste besoin de mettre ce qui est dans mysql_query.

Bonjour,

J’ai réussi à regler mon problème mais maintenant je n’arrive pas à récupérer les donéess du formulaire j’arrive juste à envoyer des données préalablement inscrites sur ce code , comme ça :


<?php
mysql_connect('localhost', 'root', '') OR die('Erreur de connexion');
mysql_select_db('iphoneinside') OR die('Sélection de la base impossible'); 


// On ajoute une entrée avec mysql_query
 mysql_query("INSERT INTO regis VALUES('', '', 'Michael', '', '', '', '', '', '', '', '', '', '', '', '', ''); ");  


mysql_close();
?>

Mais si j’écris


<?php
mysql_connect('localhost', 'root', '') OR die('Erreur de connexion');
mysql_select_db('iphoneinside') OR die('Sélection de la base impossible'); 


// On ajoute une entrée avec mysql_query
 mysql_query("INSERT INTO regis VALUES('', '', '$_POST[pseudo]', '', '', '', '', '', '', '', '', '', '', '', '', ''); ");  


mysql_close();
?>

ça ne marche pas pourquoi ??