Re-Notice, pas d'affichage avec isset()

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Re-Notice, pas d'affichage avec isset()

par Ish » 15 mai 2006, 17:05

Le probleme ici est que lorsque je passe dans la condition du ISSET(), ça ne marche plus.
Comme si le isset($_REQUEST[]) me renvoyer FAUX ... donc je ne pouvais plus acceder à la fonctionnalité de mes methodes

je comprends pas pourkoi ?

par Ish » 15 mai 2006, 15:55

ok ok ok ... voilà ce que me renvoie le print_r($_REQUEST) :

Code : Tout sélectionner

Array ( [id] => 1 [PHPSESSID] => 5ba4ce1de5f1fb2663d0d839f0c2c46e )
hein hein ...

par Ryle » 15 mai 2006, 15:40

Au début de ton script ajoute la commande print_r($_REQUEST);

Elle te permet de voir ce que contient ton objet request. Tu devrais y trouver quelque chose de la forme :

Code : Tout sélectionner

array ( 'id' => 'valeur', 'operation' => 'valeur', ...)
s'il manque les clés "id" ou "operation" c'est que ceux-ci ne sont pas envoyés à ta page. Le isSet() retournera alors la valeur faux. Cela dit, ta méthode operation() fonctionne peut être même si la valeur est absente, il te suffit alors de donner une valeur par défaut à ta variable :
$id = (isSet($_REQUEST['id'])) ? $_REQUEST['id'] : 0;
// si $_REQUEST['id'] est défini alors utilise la valeur de $_REQUEST['id'], sinon utilise 0

par Ish » 15 mai 2006, 14:43

Sinon quelle serait la solution pour enlever les NOTICE....

parceque ce sont des indications qui ne sont pas à prendre à la legere mais j'aimerais pouvoir regarder ce que ca donne sans !

par Ish » 15 mai 2006, 13:04

je comprends pas le coup de
tu initialise mal tes variables, ce qui produit par la suite une erreur sur tes methodes...
Normalement ya pas de probleme puisque si je mets pas de condition "isset()", ça marche très bien !!!

par Ish » 15 mai 2006, 11:58

Je comprend pas là ....

par jojolapine » 15 mai 2006, 11:41

la problème vient de l'initialisation de tes variables... tu le dits toi -même
Lorsque je fait un isset($_REQUEST['id']) && isset($_REQUEST['operation'])
la notice s'enleve
ça veut dire que tu initialise mal tes variables, ce qui produit par la suite une erreur sur tes methodes...

Re-Notice, pas d'affichage avec isset()

par Ish » 15 mai 2006, 11:33

Bonjour à tous,

je suis encore là avec mes problemes de "Notices" ...

Voilà, j'ai d'autre élement troublant concernant mon application...

Dans mon code j'ai une "Notice qui s'affiche" du style :

Code : Tout sélectionner

Notice: Undefined index: operation in c:\...\p1.php on line 158
Lorsque je fait un isset($_REQUEST['id']) && isset($_REQUEST['operation'])
la notice s'enleve, mais l'application ne marche plus car ...
J'ai un tableau qui reference beaucoup de note et lorsque je clique sur son "id" ... une popup de modification de note s'ouvre avec des champs pré-remplis que l'on peut modifier.

Mais dès que je fais cette condition IF avec les isset (ci-haut), les champs ne sont plus pré-remplis ...
voici une parie du code ;
//Opération et stockage des champs dans la structure note
$note = $form->operation($_REQUEST['id'], $_REQUEST['operation']);

//Affectation des valeurs dans les champs et taille des champs
$champcode_affaire->valeur($note->code_affaire);
$champcode_metier->valeur($note->code_metier);
$champcode_site->valeur($note->code_sites_note);
....
.... // ensemble des champs et propriété de la note