Pages :
Bonsoir,
Voilà j'ai crée un formulaire, tout fonctionne bien mais je n'arrive pas à recevoir les messages que j'envoie ..
Voici mon code



<?php 
	$Nom=$_POST["Nom"];
	$Prénom=$_POST["prenom"];
	$Email=$_POST["Email"];
	$Message=$_POST["Message"];
	
	$db=mysql_connect("127.0.0.1","","");
	mysql_select_db("mysql",$db);
	
	$sql="insert into contact values ('".$Nom."','".$prenom."','".$Email."','".$Message."')";
	if($Nom && $Message!=""){
		$req=mysql_query($sql);
		$ok="<h1 class='message'>Message reçu</h1>";
	}
?>

<html class="html">
	<head>
		<title>Le Limitrophe</title>
		<link rel="stylesheet"type="text/css" href="nouscontacter.css">
		<link href="style.css" rel="stylesheet" type="text/css">
		<link href="barremenu.css" rel="stylesheet" type="text/css">
		<link href="noussituer.css" rel="stylesheet" type="text/css">
		<link href="lacarte.css" rel="stylesheet" type="text/css">
		<link href="carteapperitifs.css" rel="stylesheet" type="text/css">
		<link rel="shortcut icon" type="image/x-icon" href="6.ico" />
	</head>
	
	
	
	
	
<body >

		<h1 id="letitre">
					<IMG src="7.jpg" width="700px" height="250px">
		</h1>
		
		
		<div id="trait_dessus"></div>
		<div id="trait_dessus"></div>





<div id='cssmenu'>
<ul>
   <li><a href='accueil.html'><span>Accueil</span></a></li>
   <li><a href='lacarte.html'><span>La carte</span></a></li>
   <li><a href='nouscontacter.php'><span>Nous contacter</span></a></li>
   <li><a href='Noussituer.html'><span>Nous situer</span></a></li>
   <li class='last'><a href='avis.html'><span>Avis clients</span></a></li>
</ul>
</div>
		
		
		
		
		
		
		
		
		
	Contactez-nous <p>

Vous souhaitez nous envoyez un message, <p>
avoir plus d'informations sur le restaurant <p>
nous faire part de vos remarques ou de vos suggestions ...<p>

Ce formulaire est à votre disposition
		

	<link class="font"href="nouscontacter.css" rel="stylesheet" type "text/css">	
	
<br>
		<form method="post" action="nouscontacter.php">
			<table border="1"  width="50%" class="tableau">
			<tr>
				<th>Nom :</th>
				<td><input class="infos" type="nom" name="Nom"></td>
			</tr>
			<tr>
				<th>Prénom</th>
				<td><input class="infos" type="nom" name="prenom"></td>
			</tr>
			<tr>
				<th>Email :</th>
				<td><textarea class="infos" name="Email"></textarea></td>
			</tr>
		
			<tr>
				<th>Message :</th>
				<td><textarea class="infos" name="Message"></textarea></td>
			</tr>
		
		
		
			<tr>
				<th></th>
				<td><input type="submit"></td>
			</tr>
			
			
			
			
			
		</table>
		</form><?php echo $ok; ?>

		</body>
</html>
Je comprend pas bien ton problème, Est-ce la base de données qui n'enregistre pas les données de ton formulaire, ou est ce ton message de comfirmation que tu ne recois pas ?

Si c'est ta bdd qui n'enregistre pas tes données, commence par vérifier ton instruction sql :
un echo de ta ligne d'instruction sql, et tu fait un copier coller sur phpMyAdmin pour vérifier si ton instruction est bonne.

[b]$Prénom[/b]=$_POST["prenom"];

et
$sql="insert into contact values ('".$Nom."','".[b]$prenom[/b]."','".$Email."','".$Message."')";


Ne met pas d'accent dans tes variable, tu évitera beaucoup de problème.
Remplace donc
[b]$Prénom[/b]=$_POST["prenom"];

par
[b]$prenom[/b]=$_POST["prenom"];


Je pense que ton if n'est pas utile :
Tu peux ajouter l'élément required dans tes balise input et textarea

<input class="infos" type="nom" name="Nom" required>
<textarea class="infos" name="Message" required>


Les utilisateur sont obliger de remplir l'élément pour pouvoir poster.
Modifié par mace (12 Feb 2014 - 10:41)
Bonjour, alors j'ai fais les changements que vous m'avaient conseillé, c'est à dire :
J'ai supprimé tous les accents et remplacer toutes les majuscule dans mon script ainsi que dans mon sql
J'ai inséré le "required" et donc enlevé la boucle If

Mais je ne recois toujours pas les messages que j'envoie dans MyPhpAdmin ..

Pour le Myqli je ne sais pas trop car je suis débutante et que je dois exclusivement utiliser MyPhpAdmin pour que mon travail soit recevable ...
Mysqli_ est une extension du php qui remplace mysql_. PhpMyAdmin quant à lui est un software en php pour l'administration de MySQL.

Elle est installée de base sur les php 5+. C'est facile de passer dessus, y a plein de tutos pour ça et celui de ma signature est très bon bien fait Smiley krull

Sinon pour tester le problème, tu rajoutes un
echo $sql;


Juste après ta ligne :
$sql="insert into contact values ('".$Nom."','".$prenom."','".$Email."','".$Message."')";


Puis tu fais un copier-coller de ta requête dans phpMyAdmin et tu lances la requête.
qu'est ce que tu entends par requête ? Désolée mais comme je l'ai dis précédemment je suis vraiment débutante ..

J'ai fais ce que tu m'as dis et maintenant quand je recharge ma page Php sur internet, en haut de la page s'affiche :
insert into contact values ('','','','')

Y a t il un rapport ?
En farfouillant un peu je pense avoir compris ce que tu as voulus me dire, j'ai copié ceci :

<?php 
	$nom=$_POST ["nom"];
	$prenom=$_POST ["prenom"];
	$email=$_POST ["email"];
	$message=$_POST ["message"];
	
	$db=mysql_connect("127.0.0.1","","");
	mysql_select_db("mysql",$db);
	
	$sql="insert into contact values ('".$nom."','".$prenom."','".$email."','".$message."')";
	echo $sql;
	
?>


et je l'ai fais exécuter dans ma requête

Cela me donne ca :

SELECT `time_zone_name`.`Name`
FROM time_zone_name
je n'en ai aucune idée ..
Je suis perdue et je dois rendre mon projet dans pas longtemps, vous n'auriez vraiment pas idée du problème ?
Salut,

je ne sais pas si c'est un projet pro ou étudiant mais j'ai l'impression que tu n'as pas les connaissances pour faire cela malheureusement.

Tu n'as pas d'utilisateur pour te connecter à ta base de données? (i.e $db=mysql_connect("127.0.0.1","","");) j'ai un énorme doute sur le fait que cela puisse fonctionner mais j'avoue ne pas avoir testé.
Il manque des tests de partout pour vérifier qu'on a bien la resource, que la base sélectionnée est la bonne, que les valeurs POST sont présentes et conformes, etc ...

As-tu bien une table contact aussi? Les champs que tu veux insérer sont-ils existants dans la structure de la table?

Courage, essaie de comprendre ce que tu fais/veux faire.
Bonsoir,

Je suis effectivement étudiante, ayant un site à construire.

Même si je n'ai pas toutes les connaissances, j'essaie tant bien que mal de faire quelque chose.

Et oui, je possède bien une table de contact avec tous les champs.

Merci.
Et concernant la connexion à la base de données? Peux tu aussi rajouter les tests concernant tes données POST?

Exemple de code depuis la doc PHP:

$link = mysql_connect("localhost", "mysql_user", "mysql_password")
    or die("Impossible de se connecter : " . mysql_error());
Cela me note ca :


Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'mysql_user'@'localhost' (using password: YES) in W:\var\www\LELIMITROPHE\nouscontacter.php on line 7
Impossible de se connecter : Access denied for user 'mysql_user'@'localhost' (using password: YES)
oue mais c'est un exemple ... il faut que tu l'adaptes, mets le user que tu as le mot de passe que tu as, etc ...
Donc comme je disais, je doute que tu puisses te connecter sans utilisateur ni mot de passe. Il te faut créer un utilisateur, tu as phpmyadmin? Ce sera plus simple, ou au pire essaie de mettre comme utilisateur "root" et sans mot de passe. Je le déconseille mais bon pas trop le choix là.
Bah donc crée toi un utilisateur, ou bien comme j'ai dit plus haut utilise root, as-tu seulement essayé? Il faut faire des recherches aussi Smiley ohwell
Non je n'ai pas essayer car je ne savais même pas qu'il en fallait un .. J'ai toujours appris a y accéder suivant Movamp en raccourcie .. Ce n'est pas grave mon prjet est à rendre pour demain et je n'ai pas le temps, je te remercie quand même de l'aide que tu as voulu m'apporter !
Pages :