[PHP] Erreur : Undefined index
yasmine
-
emna.hidr Messages postés 34 Date d'inscription Statut Membre Dernière intervention -
emna.hidr Messages postés 34 Date d'inscription Statut Membre Dernière intervention -
Bonjour, je ss nouvelle en php et mysql , j'ai essayer d'executer une insertion d'une ligne à la bdd avec le code php suivent :
<?php
$id=mysql_connect("localhost","root",""); //se connecter à mysql
if($id>0) echo"connexion mysql ok"; echo"<br><br>";
$id=mysql_select_db("restaurent"); //selection de la base de données
if($id>0) echo "connexion bas restaurent ok"; echo"<br><br>";
//pour simplifier l'écriture on définit des variables
$nom=$_POST['nom'];$mail=$_POST['mail'];
//insertion du client dans la table 'clients'
$id=mysql_query("INSERT INTO'clients'('id','NomClient','MailClient','NbVisites') VALUES('','$nom','$mail','1')");
if ($id>0) echo "client enregistré";echo"<br><br>";
mysql_close();
?>
et en executant ce code voilà l'erreur qui me parais :
Notice: Undefined index: nom in c:\program files\easyphp1-8\www\tp\insertion.php on line 7
Notice: Undefined index: mail in c:\program files\easyphp1-8\www\tp\insertion.php on line 7
merci d'avance !!
<?php
$id=mysql_connect("localhost","root",""); //se connecter à mysql
if($id>0) echo"connexion mysql ok"; echo"<br><br>";
$id=mysql_select_db("restaurent"); //selection de la base de données
if($id>0) echo "connexion bas restaurent ok"; echo"<br><br>";
//pour simplifier l'écriture on définit des variables
$nom=$_POST['nom'];$mail=$_POST['mail'];
//insertion du client dans la table 'clients'
$id=mysql_query("INSERT INTO'clients'('id','NomClient','MailClient','NbVisites') VALUES('','$nom','$mail','1')");
if ($id>0) echo "client enregistré";echo"<br><br>";
mysql_close();
?>
et en executant ce code voilà l'erreur qui me parais :
Notice: Undefined index: nom in c:\program files\easyphp1-8\www\tp\insertion.php on line 7
Notice: Undefined index: mail in c:\program files\easyphp1-8\www\tp\insertion.php on line 7
merci d'avance !!
A voir également:
- [PHP] Erreur : Undefined index
- Erreur 0x80070643 - Accueil - Windows
- Expert php pinterest - Télécharger - Langages
- J'aime par erreur facebook notification - Forum Facebook
- Code erreur f3500-31 ✓ - Forum Bbox Bouygues
- Java code erreur 1603 ✓ - Forum Windows
2 réponses
Ça veut simplement dire que tes variables $_POST['nom'] et $_POST['mail'] n'existent pas.
edit : vérifie que ton formulaire n'envoie pas les données par la méthode get par exemple.
Une des règles en PHP (et en programmation en général d'ailleurs) : Never Trust User Input : Ne fais jamais confiance au données provenant de l'utilisateur !
Donc avant d'utiliser tes variables issues d'un formulaire, tu dois vérifier qu'elles existent et qu'elles sont bien ce qu'elles devraient être : intval() pour un entier, mysql_real_escape_string() avec chaque chaine de caractères... C'est la base pour prévenir la plupart des attaques par injection SQL. Sinon tu laisses de grosses failles dans ton site et n'importe qui pourrait faire n'importe quoi !
edit : vérifie que ton formulaire n'envoie pas les données par la méthode get par exemple.
Une des règles en PHP (et en programmation en général d'ailleurs) : Never Trust User Input : Ne fais jamais confiance au données provenant de l'utilisateur !
Donc avant d'utiliser tes variables issues d'un formulaire, tu dois vérifier qu'elles existent et qu'elles sont bien ce qu'elles devraient être : intval() pour un entier, mysql_real_escape_string() avec chaque chaine de caractères... C'est la base pour prévenir la plupart des attaques par injection SQL. Sinon tu laisses de grosses failles dans ton site et n'importe qui pourrait faire n'importe quoi !
comme le dit le msg d'erreur il nexiste pas qq chose dans ton formulaire qui s'appelle nom et mail
tu peut utiliser simplement isset pour tester l'existence d'une variable
poster le code de formulaire pour que je peut t aider
tu peut utiliser simplement isset pour tester l'existence d'une variable
poster le code de formulaire pour que je peut t aider
Bonjour,
j'ai le même problème: Notice: Undefined index: mail in C:\xampp\web\htdocs\g_h travelv1\demande_location.php on line 8.
Pouvez vous m'aidiez. voici mon code:
<?php
$host = "localhost";
$user = "root";
$pass = "";
$bdd = "ghts";
$nom=$_POST['nom'];
$mail=$_POST['mail'];
$sujet=$_POST['sujet'];
$message=$_POST['message'];
$cnx= mysql_connect($host,$user,$pass) or die("Impossible de se connecter");
$db = mysql_select_db($bdd) or die("Impossible d'ouvrir la base de données ");
if (mysql_connect ($host,$user,$pass))
{
echo "Connexion réussie"; echo "<br>";
}
else
{
echo "Connexion impossible...".mysql_error(); echo "<br>";
}
$query=" INSERT INTO contact_bus
( nom, mail, sujet, message)
VALUES('$nom','$mail','$sujet','message')";
$requete = mysql_query( $query, $cnx ) or die(mysql_error());
mysql_close() ;
?>
j'ai le même problème: Notice: Undefined index: mail in C:\xampp\web\htdocs\g_h travelv1\demande_location.php on line 8.
Pouvez vous m'aidiez. voici mon code:
<?php
$host = "localhost";
$user = "root";
$pass = "";
$bdd = "ghts";
$nom=$_POST['nom'];
$mail=$_POST['mail'];
$sujet=$_POST['sujet'];
$message=$_POST['message'];
$cnx= mysql_connect($host,$user,$pass) or die("Impossible de se connecter");
$db = mysql_select_db($bdd) or die("Impossible d'ouvrir la base de données ");
if (mysql_connect ($host,$user,$pass))
{
echo "Connexion réussie"; echo "<br>";
}
else
{
echo "Connexion impossible...".mysql_error(); echo "<br>";
}
$query=" INSERT INTO contact_bus
( nom, mail, sujet, message)
VALUES('$nom','$mail','$sujet','message')";
$requete = mysql_query( $query, $cnx ) or die(mysql_error());
mysql_close() ;
?>