pb de undefined

Eléphanteau du PHP | 37 Messages

20 oct. 2005, 13:55

Bonjour,
sur un INSERT INTO de données je reçois ce message d'erreur:

Code : Tout sélectionner

Notice: Undefined index: IDFACUSAGE in c:\easyphp\www\friends\ajout\ajconfirm.php on line 14
sur plusieur données dans le cas ou je ne rentre rien dessu dans la base SQL.

Avez vous une idée d'où cela vient?

ViPHP
pjl
ViPHP | 2119 Messages

20 oct. 2005, 13:59

sans le code, :roll:

Eléphanteau du PHP | 37 Messages

20 oct. 2005, 14:04

voici le code
  $CP = $_POST["CP"] ;
  $ville = $_POST["ville"] ;
  $email = $_POST["email"];

$sql = "INSERT  INTO client (CP, ville, email) 
            VALUES ( '$CP', '$ville', '$email') " ;
			
$requete = mysql_query($sql, $cnx) or die( mysql_error() ) ; 

Eléphanteau du PHP | 37 Messages

20 oct. 2005, 14:16

en fait j'explique:
j'ai une 1ere page avec un formulaire avec un choix par case à cocher.
3 cases une pour CP, une pour ville et une pour email
si je coche que sur CP, dans la seconde page je vois donc uncase CP à remplir avec un bouton envoyer
Lorsque je fais mon envoi, cela ouvre une nouvelle page dans laquelle il y a le code du dessus, donc dans le code j'envoi à la base sql mes 3 variable mais il n'y en a qu'une, dans notre cas CP, qui est alimenté et donc cela me renvoi pour les 2 autres l'erreur, sachant que la donnée CP est bien mise dans la base sql et que les 2 autres données sont vides (et non à null).

Avez vous une piste?

Merci

Eléphanteau du PHP | 37 Messages

20 oct. 2005, 14:47

en fait la question c'est comment faire envoyer du vide dans mes donnée non visible?

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

20 oct. 2005, 15:01

Salut, il faut tester l'existence des variables correspondant aux cases a cocher. Les variables correspondant aux cases ne sont crées que si la case est cochée:
$CP     = isset($_POST["CP"]) ? $_POST["CP"]: NULL ;
$ville   = isset($_POST["ville"]) ? $_POST["ville"]: NULL ;
$email = isset($_POST["email"]) ? $_POST["email"]: NULL ; 
explication (pour CP):
si $_POST["CP"] existe , donc coché $CP sera égal au contenu de cette dernière dans le cas contraire sera égal a NULL.

par contre étant donné que le code postal est la clé primaire, d'apres ta structure il va y avoir des probleme en cas de doublons ou de case CP non cochée

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Invité
Invité n'ayant pas de compte PHPfrance

20 oct. 2005, 17:13

nickel le coup des isset, ça fonctionne impeccable.
Merci beaucoup pour le coup de main.