Bonjour,
voila, bien que n'étant pas à mon premier projet web, je viens de rencontrer une situation plutôt étrange lors de l'exécution de mon code, et même si, à priori, tout fonctionne bien, je ne comprends pas pourquoi cela ne plante pas... .
Vous me direz tant mieux, mais histoire d'essayer d'avoir une explication, je poste quand-même le tout sur ce forum.
Alors en fait, j'ai un formulaire qui se trouve sur une page qui s'appèle 'show_sent.php'
puis j'ai 'del_sent.php' qui traite les $_POST envoyés par 'show_sent.php'.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 <input type="hidden" name="type3" value="sent"> <input type="hidden" name="id_sent3[]" value="<?php echo $id_sent; ?>"> <input type="hidden" name="from3[]" value="<?php echo $from; ?>"> <input type="hidden" name="date3[]" value="<?php echo $date; ?>"> <input type="hidden" name="subject3[]" value="<?php echo $subject; ?>"> <input type="hidden" name="message3[]" value="<?php echo $message; ?>">
dans ma page 'del_sent.php' se trouve d'abord le code suivant :
puis plus bas dans le code se trouve
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 $id_sent3=$_POST['id_sent3']; $type3=$_POST['type3']; $from3=$_POST['from3']; $date3=$_POST['date3']; $subject3=$_POST['subject3']; $message3=$_POST['message3'];
Maintenant, si je change $subject3=$_POST['subject3']; en $subject3=$_POST['subject'];, ma variable $subject3 ne contient plus rien et c'est complètement normal.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 for($i = 0; $i < sizeof($emails)-1; $i++) { //echo 'emakil='.$emails[$i].'<br>'; //echo 'sizeofemails='.sizeof($emails).'<br>'; $nova_check=$emails[$i]-1; //echo 'i='.$i.'<br>'; echo 'chk='.$emails[$i].'<br>'; echo 'nova_chk='.$nova_check.'<br>'; echo 'type='.$type3.'<br>'; echo 'id_sent='.$id_sent3[$nova_check].'<br>'; echo 'from='.$from3[$nova_check].'<br>'; echo 'date='.$date3[$nova_check].'<br>'; echo 'subject='.$subject3[$nova_check].'<br>'; echo 'message='.$message3[$nova_check].'<p>'; etc..... }
Mais la ou cela devient étrange, c'est que, si je commente cette partie là, à savoir :
j'obiens toujours de quoi alimenter mon ma boucle for, avec donc les variables $type3, $from3, etc... bien chargées.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 /*$id_sent3=$_POST['id_sent3']; $type3=$_POST['type3']; $from3=$_POST['from3']; $date3=$_POST['date3']; $subject3=$_POST['subject3']; $message3=$_POST['message3'];*/
Vous me direz, jusque là, c'est parceque ce sont les données du cache, et je serais également du même avis.
J'ai donc repassé mon disk cleaner préféré plusieurs fois, toujours rien, pas de variables vides.
Là, une seule chose à faire à priori, redémarrer easyphp, ce que j'ai fait plusieurs fois, et donc toujours rien, tout marche impécable.
Un redémarrage de PC plus tard, toujours rien.
Bien évidement, il n'y a aucun autre endroit dans tout le code complet ou sont initialisé ses variables.
A priori, la seule explication rationnelle serait que PHP, fait directement le lien entre les $_POST du formulaire et les variables du fichier dans lequel le formulaire est soumis, mais là, j'aurais du mal à y croire...
J'ai, comme la plupart des développeurs php au fils de projets, vécu des stituations de codage inédites voir ufologiques, mais là, cela dépasse toutes mes ambitions... .
N'hésitez donc pas à proposer vos explications si vous en avez.
Merci d'avance,
JSK
Partager