Page 1 sur 1

Fonction $_POST mal interpretée

Posté : 21 avr. 2007, 23:33
par sylvaing26
bonsoir,
j'ai ce code

Code : Tout sélectionner

$_POST['nom']=trim($_POST['nom']); $_POST['mots']=trim($_POST['mots']); $_POST['dossier']=trim($_POST['dossier']); $_POST['titre']=trim($_POST['titre']); if(empty($_POST['nom']) || empty($_POST['mots']) || empty($_POST['titre'])) { echo "<meta http-equiv=\"refresh\" content=\"0;url=ajout.php?result=error&rubrique=$rub\">\n "; } else if($_POST['dossier'] == NULL) { echo "<meta http-equiv=\"refresh\" content=\"0;url=ajout.php?result=error&rubrique=$rub\">\n "; }
Lorsque ma valeur dossier est NULL ma boucle else if n'est pas prise en compte et le script continue.
D'ou ca peut venir j'ai tout essayé

Posté : 21 avr. 2007, 23:40
par @rthur
Bonsoir,

Qu'entends tu par la valeur de la variable dossier est NULL?
Si c'est toi qui indique NULL en paramètre alors il faut que tu utilises les guillemets:
else if($_POST['dossier'] == "NULL") 
Sinon essaye la fonction isset:
else if(!isset($_POST['dossier'])) 
http://fr.php.net/isset

Posté : 21 avr. 2007, 23:45
par sylvaing26
bien en fait ya rien a faire, même si à la place de NULL en valeur de mon champ de formulaire je met "rien" et que dans mon code je met

Code : Tout sélectionner

else if($_POST['dossier']== "rien") { echo "<meta http-equiv=\"refresh\" content=\"0;url=ajout.php?result=error&rubrique=$rub\">\n "; }
ca marche pas non plus
J'y pige rien ! lol

Posté : 21 avr. 2007, 23:55
par @rthur
Et tu es sûr que ta première condition est fausse (c'est à dire que nom, mots et titre sont tous les 3 renseignés) ?

Posté : 22 avr. 2007, 00:10
par sylvaing26
oui j'ai même essayer de faire ceci

Code : Tout sélectionner

if(empty($_POST['nom']) || empty($_POST['mots']) || empty($_POST['titre']) || $_POST['nom'] == "rien") { echo "<meta http-equiv=\"refresh\" content=\"0;url=ajout.php?result=error&rubrique=$rub\">\n "; }
mais rien n'y fait non plus

Posté : 22 avr. 2007, 00:12
par charabia
Quel est le résultat d'un echo $_POST['dossier']; ?

Posté : 22 avr. 2007, 00:16
par sylvaing26
NULL

Posté : 22 avr. 2007, 00:18
par charabia
Il te met null alors que tu as affecté la valeur "rien" ?

Quel est le type de ton champ ?

Posté : 22 avr. 2007, 00:19
par sylvaing26
ok c'es bon ca marche c'est que en fait, lorsque le formulaire possede un menu deroulat ou un item ne possede pas de nom et que par contre il possede une valeur ; il envoie tout le temps NULL pour ce champ
Merci d'avoir eclairci ce sujet !