problem insertion base de donnée

Eléphanteau du PHP | 33 Messages

02 janv. 2019, 14:21

bonjour a tous j'ai un soucis d'insertion a ma base de donnée
j'ai crée une base de donnée phpmyadmin nommé "centrale", j'ai une table "plainte" et une table donnees qui ont chacune un certain nombre de variable.
j'ai réalisé par l'intermediaire d'un formulaire html et une page php pour inserer via le formulaire des données dans la base de donnée
le dossier html (formulaire )
<!DOCTYPE html>
<html>
	<head>
	<title>formulaire d enregistrement d'une plainte</title>
	<meta charset="utf-8"/>
	</head>
	<body bgcolor='#003366' style='color:#FFF'>
	<form method="POST" action="inscription_plainte.php">
<!--ceci est un commentaire-->
		<h1>Enregistrement des plaintes et realisation des enquetes</hi>	
		<table width="60%" border='0' cellspacing='0' cellpadding='0' style='padding-left:90px:'>
			<tr>
				<td align='right'>enqueteurs : </td>
				<td><input type='text' name='agent' placeholder='nom de l enqueteur' required="required" /></td></td>
			</tr>
			<tr>
				<td align='right'>nom : </td>
				<td><input type='text' name='nom' placeholder='nom du plaignant'required="required" /></td></td>
			</tr>
			<tr>
				<td align='right'>prenom : </td>
				<td><input type='text' name='prenom' placeholder='prenom du plaignant'required="required" /></td></td>
			</tr>
			<tr>
				<td align='right'>plainte : </td>
				<td><textarea type='text' name="plainte" placeholder='contenu de la plainte' required="required" /></textarea></td>
			<tr>
				<td align='right'>enquete : </td>
				<td><textarea type='text' name='enquete' placeholder='element d enquete'/></textarea></td>
			</tr>
			
			

			<input type='submit' value='ok' />
		</form>

	</table>
	</body>

</html>
le dossier inscription_plainte.php
<?php
$conn=mysqli_connect('localhost','root','','centrale') or die(mysqli_error());
//recuperation des information
$NOM=$_POST['nom'];
$PRE=$_POST['prenom'];
$PSE=$_POST['pseudo'];
$TEL=$_POST['telephone'];
$FON=$_POST['fonction'];
$INF=$_POST['infractions'];
$PRI=$_POST['prison'];
$AME=$_POST['amende'];
$IFO=$_POST['infos_divers'];
$VOI=$_POST['voiture'];
$IMM=$_POST['immatriculation'];

$req="INSERT INTO donnees (nom,prenom,pseudo,telephone,fonction,infractions,voiture,immatriculation) values ('$NOM','$PRE','$PSE','$TEL','$FON','$INF','$PRI','$AME','$IFO','$VOI','$IMM')";

$res=mysqli_query($conn,$req);
?>
<!DOCTYPE html>
<html>
	<head>
	</head>
<body>
<form>
	<div align='center'><h3>LA FICHE PERSONNELLE DE </h3>	
	<table align='center'>
		<tr>
			<td align='right'>nom : </td>
			<td><?php echo ($NOM)?></td>
		</tr>
		<tr>
			<td align='right'>prenom : </td>
			<td><?php echo ($PRE)?></td>
		</tr>
	</table>
	<h1>est bien enregistrée </h1>
	<p><a href="index_don.html">Ajouter une nouvelle fiche</a></p>
	<p><a href="index.html">retourner au menu principal</a></p>
	
</div>
</form>
</body>
</html>
j'ai mis pour tester un or die aprés la base et aprés la plage et ca me met en reponse qu'il s'accroche pas a la plage.
rien n'apparait sur la base de donnée malgré la validation des données.
helm

ce qui est suprenant c'est que sans avoir rien changé au code ca fonctionnait bien et d'un coup ca n'accroche plus. J'avais une erreur wamp qui me disait qu il etait plus lié au notepad, j'ai donc reinstaller wampserver et ca ne fonctionne toujours pazs malgré queb l'erreur ne s'affiche plus( concernant le notepad). je suis avec sublim text

Eléphanteau du PHP | 33 Messages

02 janv. 2019, 19:09

meme en le mettant sur un fichier ca ne fonctionne pas
<!DOCTYPE html>
<html>
<head>
<title>formulaire d enregistrement des fichiers personnes</title>
<meta charset="utf-8"/>
</head>
<body bgcolor='#003366' style='color:#FFF'>
<form method="POST" action="">
<!--ceci est un commentaire-->
<h1>Enregistrement des données personnes</hi>
<table width="60%" border='0' cellspacing='0' cellpadding='0' style='padding-left:90px:'>
<tr>
<td align='right'>nom : </td>
<td><input type='text' name='nom' placeholder='nom de la personne' required="required" /></td></td>
</tr>
<tr>
<td align='right'>nom : </td>
<td><input type='text' name='prenom' placeholder='prenom de la personne' required="required" /></td></td>
</tr>
<input type='submit' value='ok' />
</table>
</form>
<?php
$bdd = new PDO("mysql:host=localhost;dbname=centrale;charset=utf8", 'root',"");
{
if(isset($_POST['nom']) AND isset($_POST['prenom']))
$requete = $bdd->prepare("INSERT INTO donnees (nom, prenom) VALUES(?; ?)");
$requete->execute(array($_POST['nom'],$_POST['prenom']));
?>

<?php
}
?>
</body>
</html>

Mammouth du PHP | 1967 Messages

03 janv. 2019, 10:55

recupère les erreurs de PDO tu aura ainsi plus de piste sur la source du problème
Spols
pour les fan de rubik's cube ou pour les curieux ==> le portail francophone du rubik's cube

Petit nouveau ! | 2 Messages

11 janv. 2019, 16:10

dans cette ligne la :
$req="INSERT INTO donnees (nom,prenom,pseudo,telephone,fonction,infractions,voiture,immatriculation) values ('$NOM','$PRE','$PSE','$TEL','$FON','$INF','$PRI','$AME','$IFO','$VOI','$IMM')";
en faites les valeurs que ta rentrées c'est des variables et non pas des strings ! donc du coup pas des guillemets autour :)