[php] pb envois données formulaire dans table mysq

Résolu/Fermé
fabrice11901 Messages postés 787 Date d'inscription dimanche 31 juillet 2005 Statut Membre Dernière intervention 12 juillet 2007 - 31 juil. 2005 à 21:07
 bergeot sebastien - 11 oct. 2006 à 23:03
Bonjour, je suis webmaster du site http://sons.gratuits.free.fr et je suis entrain de faire un formulaire de contact tout fonctionne bien sauf je ne vois pas les enregistrements du formulaire dans la table sur sql.free.fr ! je vous donne les codes que j'ai mi pour le formulaire ainsi que pour la page php si y a un pb ou si vous savez d'où viens le soucis merci de m'en informer
code formulaire :
<FORM method="POST" ACTION="http://sons.gratuits.free.fr/envois.php">id<INPUT TYPE="text" name="id"> ip<INPUT TYPE="text" name="ip"> heure<INPUT TYPE="text" name="heure"> <INPUT TYPE="submit" value="envoyer"> </FORM>

code page php :
$_POST['id'];
$_POST['ip'];
$_POST['heure'];
$connexion = mysql_connect("sql.free.fr","sons.gratuits","*******");
mysql_select_db("sons_gratuits",$connexion); $requete = "insert into formulaire values($id','$ip','$heure')";
mysql_query($requete);

echo "Vos données ont été envoyées au webmaster !"; mysql_close();
A voir également:

11 réponses

Padoo Messages postés 109 Date d'inscription jeudi 21 juillet 2005 Statut Membre Dernière intervention 6 février 2009 18
31 juil. 2005 à 21:28
Essaie plutot comme ça :

code page php :
$id=$_POST['id'];
$ip=$_POST['ip'];
$heure=$_POST['heure'];
$connexion = mysql_connect("sql.free.fr","sons.gratuits","*******");
mysql_select_db("sons_gratuits",$connexion); $requete = "insert into formulaire values($id','$ip','$heure')";
mysql_query($requete);
echo "Vos données ont été envoyées au webmaster !"; mysql_close();


Parce que si tu met juste :
$_POST['id'];
$_POST['ip'];
$_POST['heure'];
c'est comme si tu mettais
$var1;
$var2;
$var3;
et les variables insérées sont aléatoires...
2
fabrice11901 Messages postés 787 Date d'inscription dimanche 31 juillet 2005 Statut Membre Dernière intervention 12 juillet 2007 64
31 juil. 2005 à 23:04
merci encore, mais ça ne marche toujours pas j'ai modifier comme tu m'as dit les $POST, mais ça ne marche toujours quand je clique sur envoyer dans le formulaire, j'ai bien le message "vos informations ont été envoyer au webmaster !" mais quand je vais dans sql.free.fr et que je vois le nom de la table y a marqué formulaire aucun enregistrements merci de m'aider parce que là je plante !
merci encore
0
ceddec Messages postés 148 Date d'inscription dimanche 31 juillet 2005 Statut Membre Dernière intervention 10 mars 2012 82
31 juil. 2005 à 23:52
Bonjour,

Il ya peut etre un problème de format avec la date.
Pour voir s'il y a un problème pendant l'insertion fais ceci :

$requete = "insert into formulaire values($id','$ip','$heure')";

$res=mysql_query($requete);

if($res != 0) 
   echo mysql_errno($connexion) . ": " . mysql_error($connexion) . "\n";


S'il y a un message c'est que c'est un problème SQL
Il y a plus d'explication sur mysql_error et les code de retour ici :
http://fr.php.net/mysql_error
0
fabrice11901 Messages postés 787 Date d'inscription dimanche 31 juillet 2005 Statut Membre Dernière intervention 12 juillet 2007 64
1 août 2005 à 10:00
Bonjour je vous mets le code donc que tu m'as envoyer au-dessus et je vous dit ce que ça a fait :
$connection = mysql_connect("sql.free.fr","sons.gratuits","*******"); mysql_select_db("sons_gratuits"); $requete = "insert into formulaire values($id','$ip','$heure')";

$res=mysql_query($requete);

if($res != 0)
echo mysql_errno($connexion) . ": " . mysql_error($connexion) . "\n"; mysql_close(); et la page est à l'adresse http://sons.gratuits.free.fr/envois.php quand je clique sur envoyer du formulaire y a rien dans la page donc je pense qu'il n'y a pas d'erreur mais alors je comprend pas du tout pourkoi ça marche pas? vraiment merci de m'aider !
fabrice
0
ceddec Messages postés 148 Date d'inscription dimanche 31 juillet 2005 Statut Membre Dernière intervention 10 mars 2012 82
1 août 2005 à 11:03
Bonjour,

L'autre commande qui peut planter c'est mysql_connect
Faut voir si elle fonctionne bien (avec le code de retour) sinon je 'ai pas d'autre idée. désolé
0

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

Posez votre question
fabrice11901 Messages postés 787 Date d'inscription dimanche 31 juillet 2005 Statut Membre Dernière intervention 12 juillet 2007 64
1 août 2005 à 19:31
Bonjour, j'ai essayer la première solution avec dans la ligne mysql_connect or die... quand je clique sur envoyer j'ai le message parce error ça me fait ça des fois quand y a une erreur php... et la deuxième solution pour recevoir dirrectement dans ma boîte mail toujours le même message parce error peux-tu me donner le code dont le message doit avoir le sujet formulaire web, le message doit contenir id ip heure, et pour l'adresse tu mets adresse@domaine.com merci si y a une autre solution pour la table merci...
fabrice
0
ceddec Messages postés 148 Date d'inscription dimanche 31 juillet 2005 Statut Membre Dernière intervention 10 mars 2012 82
2 août 2005 à 11:57
Bonjour

Dans la page qui reçoit le formulaire voila ce qu'il faut mettre :

<html>
<head>
<title>Untitled Document</title>
</head>
<body>
<?
$id=$_POST['id'];
$ip=$_POST['ip'];
$heure=$_POST['heure'];

mail("adresse@domaine.com", "formulaire Web", $id."*".$ip."*".$heure); 
?>
</body>
</html>


Ce code va envoyer id*ip*heure à adresse@domaine.com. Le sujet du message sera : formulaire web
L'étoile présente dans le message est pour séparé les 3 éléments, si tu n'en veux pas, enlève là :
mail("adresse@domaine.com", "formulaire Web", $id.$ip.$heure); 


Attention, si tu testes en local (avec Easyphp par exemple), il faut être sur de bien avoir configuré php, c'est à dire d'utiliser le bon serveur smtp!


Par curiosité, c'est quoi l'erreur qui s'affiche avec mysql_connect?
0
fabrice11901 Messages postés 787 Date d'inscription dimanche 31 juillet 2005 Statut Membre Dernière intervention 12 juillet 2007 64
2 août 2005 à 13:36
Bonjour, merci ceddec ça marche pour l'envois par mail ! je suis trop content ça faisait 4 mois que je cherchai ! je remerci bien évidament les autres qui m'ont aider pour mysql_connect, je n'ai aucun message d'erreur mais je suis toujours prenneur pour les codes d'envois du formulaire dans la table mysql. Merci encore !
0
ceddec Messages postés 148 Date d'inscription dimanche 31 juillet 2005 Statut Membre Dernière intervention 10 mars 2012 82
2 août 2005 à 17:05
Rebonjour,

J'ai trouvé la solution pour l'insertion dans les tables!!!!!
Le problème se situait dans la requete en elle-même. En fait pour inserer du texte dans une table, il faut l'entourer par des ' donc voici le source qu'il faut mettre :

<html>
<head>
<title>pb envois données formulaire dans table mysq</TITLE>
</HEAD>
<BODY>
<?
	$id=$_POST['id'];
      $ip=$_POST['ip'];
      $heure=$_POST['heure'];
      $dbc = @mysql_connect ("localhost", "root", "");
      if(!mysql_errno($dbc))
	{
		mysql_select_db("sons_gratuits");
		$requete = "insert into formulaire values( ' ".$id." ' , ' ".$ip." ' , ' ".$heure." ' )";
		mysql_query($requete);
	}
	else
	{
		echo mysql_errno($dbc)." : ".mysql_error($dbc)."\n";
	}       
?>
</BODY>
</html>


Il faut remplacer les valeurs lors de la connection (localhost par sql.free.fr, root par sons_gratuits, et mettre ton mot de passe).
0
bergeot sebastien
11 oct. 2006 à 23:03
salut les gars
j'ai le même pb que fabrice mais avec la derniere solution de ceddec
cela ne s'affiche toujours pas dans ma base
Pouvez vous me donner la structure de votre base

moi j'ai id en clé primaire auto_increment
nom en varchar
dispo en varchar

mon formulaire me renvoit que nom et dispo que je veux inserer dans ma table

Merci
0
fabrice11901 Messages postés 787 Date d'inscription dimanche 31 juillet 2005 Statut Membre Dernière intervention 12 juillet 2007 64
2 août 2005 à 19:06
Bonjour malheureusement le serveur de free doit être en panne il innacceccible depuis sql.free.fr et depuis http://adsl.free.fr rubrique votre espace web il ft peut-être attendre un peu... une fois que ça marchera (sql.free.fr) je te dirrai la réponse est ce qu'il serrait possible que tu me donnes ou que je te donne mon mail pour correspondre quand j'ai des soucis car tu m'as l'air bien callé en php ! moi je débute ! fabrice
0
ceddec Messages postés 148 Date d'inscription dimanche 31 juillet 2005 Statut Membre Dernière intervention 10 mars 2012 82
2 août 2005 à 20:15
Bien sur, je n'y vois aucun inconvénient. Mon adresse est disponible dans mon profil.
0
fabrice11901 Messages postés 787 Date d'inscription dimanche 31 juillet 2005 Statut Membre Dernière intervention 12 juillet 2007 64
1 août 2005 à 18:16
Bonjour, merci de m'aider vous êtes trop sympat... si je ne fais pas avec mysql_connect j'ai le message comme quand la connexion échoux et je vu qu'il fallait mettre mysql_connect sur plusieurs site ou si cette solution ne marche pas si quelqu'un à le code php qui récupère les informations du formulaire et que les données du formulaire soit envoyer dans ma boîte mail qui m'en informe. Merci d'avance sinon je veux toujours essayer de faire avec la table mysql parce qu'elle doit me serveur pour créer moi même mon conteur de visiteur (liveçcounter). Merci
-1
ceddec Messages postés 148 Date d'inscription dimanche 31 juillet 2005 Statut Membre Dernière intervention 10 mars 2012 82
1 août 2005 à 18:38
Il faut utiliser mysql_connect mais modifie la ligne comme suit
$connexion =
mysql_connect("sql.free.fr","sons.gratuits","*******")
   or die("Impossible de se connecter : " . mysql_error());

Comme ca s'il y a un problème de connexion, l'erreur s'affichera.



Sinon pour l'envoi par mail :
Tu récupères les informations avec :

$id=$_POST['id'];
$ip=$_POST['ip'];
$heure=$_POST['heure'];


et ensuite tu te les envoies avec la commande mail()
mail ( "tonadresse@xxx.xx"  ,"le sujet"  , $message)

et tu remplis $message par
$message =  $id." est connecte avec ".$ip."comme adresse a ".$heure; 
(par exemple)
0