Enregistrement des données
AMARI
-
AMARI -
AMARI -
Bonjour,
j'ai ma page php , dans la quelle j'ai des valeurs à saisir , le problème ce que le serveur il n'affiche aucune erreur , et il n'ajoute pas les valeurs à la base des données :( , quelqu'un peut m'aider d'avoir ou se trouve l'erreur merci .
voilà le code php
<?php
require_once('header.php');
require_once('dbconnect.php');
require_once('record_stat.php');
?>
<html>
<head>
<title>ESPACE PRIVE </title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="styles.css" rel="stylesheet" type="text/css">
</head>
<body>
<p align="center" class="titre"><strong>- : : : Veuillez remplir ce tableau : : : -</strong></p>
<?php
//On verifie que le formulaire a été envoye
if(isset($_POST['Percipitation'], $_POST['Evap_eau'], $_POST['Annee'], $_POST['Mois']))
{
//On échape les variables pour pouvoir les mettre dans une requette SQL
$Percipitation = $_POST['Percipitation'];
$Evap_eau = $_POST['Evap_eau'];
$Annee = $_POST['Annee'];
$Mois = $_POST['Mois'];
$sql='insert into parametres_de_bases(Percipitation, Evap_eau, Annee, Mois) values ("'.$Percipitation.'", "'.$Evap_eau.'", "'.$Annee.'", "'.$Mois.'")';
$requete = $db->query($sql) ;
?>
<form action="parametre.php" method="post" name="formulaire" >
<table width="350" border="0" align="center" cellpadding="5" cellspacing="0" bgcolor="#eeeeee" class="tableaux">
<tr>
<td width="40">Percipitation </td>
<td width="144"><input name="Percipitation" type="text" id="Percipitation"></td>
</tr>
<tr>
<td width="40">Evapo avec eau </td>
<td width="144"><input name="Evap_eau" type="text" id="Evap_eau"></td>
</tr>
<td width="40">Mois </td>
<td width="144"><input name="Mois" type="text" id="Mois"></td>
</tr>
<td width="40">Année </td>
<td width="144"><input name="Annee" type="text" id="Annee"></td>
</tr>
<tr>
<td height="50" colspan="2"><div align="center">
<input type="submit" name="envoi" value="Envoyer">
</td>
</tr>
</table>
</form>
</body>
</html>
j'ai ma page php , dans la quelle j'ai des valeurs à saisir , le problème ce que le serveur il n'affiche aucune erreur , et il n'ajoute pas les valeurs à la base des données :( , quelqu'un peut m'aider d'avoir ou se trouve l'erreur merci .
voilà le code php
<?php
require_once('header.php');
require_once('dbconnect.php');
require_once('record_stat.php');
?>
<html>
<head>
<title>ESPACE PRIVE </title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="styles.css" rel="stylesheet" type="text/css">
</head>
<body>
<p align="center" class="titre"><strong>- : : : Veuillez remplir ce tableau : : : -</strong></p>
<?php
//On verifie que le formulaire a été envoye
if(isset($_POST['Percipitation'], $_POST['Evap_eau'], $_POST['Annee'], $_POST['Mois']))
{
//On échape les variables pour pouvoir les mettre dans une requette SQL
$Percipitation = $_POST['Percipitation'];
$Evap_eau = $_POST['Evap_eau'];
$Annee = $_POST['Annee'];
$Mois = $_POST['Mois'];
$sql='insert into parametres_de_bases(Percipitation, Evap_eau, Annee, Mois) values ("'.$Percipitation.'", "'.$Evap_eau.'", "'.$Annee.'", "'.$Mois.'")';
$requete = $db->query($sql) ;
?>
<form action="parametre.php" method="post" name="formulaire" >
<table width="350" border="0" align="center" cellpadding="5" cellspacing="0" bgcolor="#eeeeee" class="tableaux">
<tr>
<td width="40">Percipitation </td>
<td width="144"><input name="Percipitation" type="text" id="Percipitation"></td>
</tr>
<tr>
<td width="40">Evapo avec eau </td>
<td width="144"><input name="Evap_eau" type="text" id="Evap_eau"></td>
</tr>
<td width="40">Mois </td>
<td width="144"><input name="Mois" type="text" id="Mois"></td>
</tr>
<td width="40">Année </td>
<td width="144"><input name="Annee" type="text" id="Annee"></td>
</tr>
<tr>
<td height="50" colspan="2"><div align="center">
<input type="submit" name="envoi" value="Envoyer">
</td>
</tr>
</table>
</form>
</body>
</html>
16 réponses
-
Re salut,
<?php require_once('header.php'); require_once('dbconnect.php'); require_once('record_stat.php'); ?> <html> <head> <title>ESPACE PRIVE </title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="styles.css" rel="stylesheet" type="text/css"> </head> <body> <p align="center" class="titre"><strong>- : : : Veuillez remplir ce tableau : : : -</strong></p> <?php //On verifie que le formulaire a été envoye //le test avec plusieurs conditions ne se fait pas ainsi en séparant par des virgules mais comme ça //if(isset($_POST['Percipitation'], $_POST['Evap_eau'], $_POST['Annee'], $_POST['Mois'])) if(isset($_POST['Percipitation']) && isset($_POST['Evap_eau']) && isset($_POST['Annee']) && isset( $_POST['Mois'])) { //On échape les variables pour pouvoir les mettre dans une requette SQL ///Ha bon et je ne vois pas ça dans ton code ?? $Percipitation = mysql_real_esacape_string($_POST['Percipitation']); $Evap_eau = mysql_real_esacape_string($_POST['Evap_eau']); $Annee = mysql_real_esacape_string($_POST['Annee']); $Mois = mysql_real_esacape_string($_POST['Mois']); $sql='INSERT INTO parametres_de_bases(Percipitation, Evap_eau, Annee, Mois) VALUES ("'.$Percipitation.'","'.$Evap_eau.'","'.$Annee.'","'.$Mois.'")'; $requete = $db->query($sql) ; } //il te manquait en plus cette } fermante du if(isset(.... else{. echo 'Veuillez remplir tous les chamsp !'; } ?> <form action="parametre.php" method="post" name="formulaire" > <table width="350" border="0" align="center" cellpadding="5" cellspacing="0" bgcolor="#eeeeee" class="tableaux"> <tr> <td width="40">Percipitation </td> <td width="144"><input name="Percipitation" type="text" id="Percipitation"></td> </tr> <tr> <td width="40">Evapo avec eau </td> <td width="144"><input name="Evap_eau" type="text" id="Evap_eau"></td> </tr> <td width="40">Mois </td> <td width="144"><input name="Mois" type="text" id="Mois"></td> </tr> <td width="40">Année </td> <td width="144"><input name="Annee" type="text" id="Annee"></td> </tr> <tr> <td height="50" colspan="2"><div align="center"> <input type="submit" name="envoi" value="Envoyer"> </td> </tr> </table> </form> </body> </html> -
-
j'ai toujours même problème il n'affiche aucune erreur et il n'ajout pas les valeurs à la base :(((((
-
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
mais les autres page marche normal :( , si il y a un pb dans la page dbconnect normalement il affiche l'erreur non ??
-
après la ligne:
if(isset($_POST['Percipitation']) && isset($_POST['Evap_eau']) && isset($_POST['Annee']) && isset( $_POST['Mois']))
{
mets un test:echo '<pre>'; print_r($_POST); echo '</pre>';
et dis moi ce qui s'affiche -
il m'affiche ça
Array
(
[Percipitation] =>
[Evap_eau] =>
[Mois] =>
[Annee] =>
[envoi] => Envoyer
)
avec le formulaire -
donc tu vois bien que tu ne reçoit pas de valeurs depuis ton formulaire.
tu tapes bien quelque chose dans ton formulaire ? -
oui j'insère des valeurs mais comme j'ai te dit pas d'erreur et il y a pas d'enregistrements dans la base :(
-
en fait si je remplit les champs et je clique sur le bouton envoyer il m'affiche
Array
(
[Percipitation] =>
[Evap_eau] =>
[Mois] =>
[Annee] =>
[envoi] => Envoyer
)
et au dessus le formulaire vide et qd je consulte ma base des données il y a pas de valeurs de dans -
bizarre chez moi je reçoit bien les valeurs tapées dans le formulaire
essaie comme ça:<?php require_once('header.php'); require_once('dbconnect.php'); require_once('record_stat.php'); ?> <html> <head> <title>ESPACE PRIVE </title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="styles.css" rel="stylesheet" type="text/css"> </head> <body> <p align="center" class="titre"><strong>- : : : Veuillez remplir ce tableau : : : -</strong></p> <?php //On verifie que le formulaire a été envoye if(isset($_POST['envoi'])){ if(!empty($_POST['Percipitation']) && !empty($_POST['Evap_eau']) && !empty($_POST['Annee']) && !empty($_POST['Mois'])) { echo '<pre>'; print_r($_POST); echo '</pre>'; //On échape les variables pour pouvoir les mettre dans une requette SQL ///Ha bon et je ne vois pas ça dans ton code ?? $Percipitation = $_POST['Percipitation']; $Evap_eau = $_POST['Evap_eau']; $Annee = $_POST['Annee']; $Mois = $_POST['Mois']; $sql='INSERT INTO parametres_de_bases(Percipitation, Evap_eau, Annee, Mois) VALUES ("'.$Percipitation.'","'.$Evap_eau.'","'.$Annee.'","'.$Mois.'")'; try{ $requete = $db->query($sql) ; }catch(PDOException $e){ echo "Message d'erreur: " . $e->getMessage() . "<br />"; } } else{ echo '<p style="text-align:center; color:red;">Veuillez remplir tous les champs !</p>'; } } ?> <form action="parametre.php" method="post" name="formulaire" > <table width="350" border="0" align="center" cellpadding="5" cellspacing="0" bgcolor="#eeeeee" class="tableaux"> <tr> <td width="40">Percipitation </td> <td width="144"><input name="Percipitation" type="text" id="Percipitation"></td> </tr> <tr> <td width="40">Evapo avec eau </td> <td width="144"><input name="Evap_eau" type="text" id="Evap_eau"></td> </tr> <td width="40">Mois </td> <td width="144"><input name="Mois" type="text" id="Mois"></td> </tr> <td width="40">Année </td> <td width="144"><input name="Annee" type="text" id="Annee"></td> </tr> <tr> <td height="50" colspan="2"><div align="center"> <input type="submit" name="envoi" value="Envoyer"> </td> </tr> </table> </form> </body> </html> -
:(((((((((((((((((((( même problème
voilà il m'affiche
Array
(
[Percipitation] => 1
[Evap_eau] => 1
[Mois] => 1
[Annee] => 1
[envoi] => Envoyer
)
avec le formulaire et base des données vide
je suis bloquée tout la journée je peux pas avancer :((((((( -
déja ça va un peu mieux, tu reçoit les valeurs 1 que tu as tapé
donnes le code de db_connect.php -
Bonjour , je toujours le même problème excuse moi de te ne pas répondre faute de connexion internet voilà le code sources de ma page dbconnect:
<?php
// Paramètres de connexion
$hostname = "localhost"; // nom ou ip de votre serveur
$database = "Valeur"; // nom de votre base de données
$username = "root"; // nom d'utilisateur (root par défaut) !!! ATTENTION, en utilisant root, vos visiteurs on tout les droits sur la base
$password = ""; // mot de passe (aucun par défaut mais il est fortement recommandé d'en mettre un ... sinon, à quoi bon la sécurité ?)
$db=new mysqli("$hostname","$username","","$database");
$db->query('SET CHARSET "UTF-8"');
$db->query('SET CHARACTER SET UTF8');
$db->query("SET NAMES 'utf8'");
$db->query('SET collation_connection = utf8_general_ci');
?> -
bonsoir,
Je viens de me créer une base identique à la tienne, et avec le code ci dessous j'ai des enregistrements
ATTENTION dans phpmyadmin il faut cliquer sur afficher à chaque fois pour visualiser les nouveaux enregistrements<html> <head> <title>ESPACE PRIVE </title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="styles.css" rel="stylesheet" type="text/css"> </head> <body> <p align="center" class="titre"><strong>- : : : Veuillez remplir ce tableau : : : -</strong></p> <?php //On verifie que le formulaire a été envoye if(isset($_POST['envoi'])){ if(!empty($_POST['Percipitation']) && !empty($_POST['Evap_eau']) && !empty($_POST['Annee']) && !empty($_POST['Mois'])) { echo '<pre>'; print_r($_POST); echo '</pre>'; //On échape les variables pour pouvoir les mettre dans une requette SQL , par mysqli_real_escape_string(...) $Percipitation = mysqli_real_escape_string($db,$_POST['Percipitation']); $Evap_eau = mysqli_real_escape_string($db,$_POST['Evap_eau']); $Annee = mysqli_real_escape_string($db,$_POST['Annee']); $Mois = mysqli_real_escape_string($db,$_POST['Mois']); $sql='INSERT INTO parametres_de_bases(Percipitation, Evap_eau, Annee, Mois) VALUES ("'.$Percipitation.'","'.$Evap_eau.'","'.$Annee.'","'.$Mois.'")'; if(!$requete = $db->query($sql)){ printf("Erreur : %s\n", $mysqli->error); }else{ echo "Enregistrement base réussi !"; } } else{ echo '<p style="text-align:center; color:red;">Veuillez remplir tous les champs !</p>'; } } ?> -