Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/02/2012, 16h29   #1
Membre du Club
 
Inscription : juillet 2006
Messages : 150
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 150
Points : 40
Points : 40
Par défaut debugage envoi variable

Bonjour j'envoie par un formulaire plusieurs variables, l'une d'elle prend systématiquement un autre nom.
je ne vois pas ou est le bug quelqu'un sur ce forum peut surement m'aider.
merci.
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
echo'<form action="edl.php" enctype="application/x-www-form-urlencoded" method="post">';
        //fichiers multiple
        // affichage des fichiers du dossier
	while($file = readdir($dir)) { 
	if($file != "'.'" && $file != '..' && !is_dir($video.'/'.$file)){ 
	echo'<table ><tr><td><video width="520" controls="controls">
	<source src="'.$video.'/'.$file.'" type="video/mp4" /></video>';
 
	$nomdufichier2=substr($file, 0, -4);
	 echo'<br><b>'.$nomdufichier2;
 
 
   echo' <td><table bgcolor="#0099FF">
   <thead>
      <tr>
         <th width="80" ><center><b>TC IN</b></center></th>
         <th><center><b>TC OUT</b></center></th>
         <th><center><b>Commentaire</b></center></th>
      </tr>
   </thead>
   <tbody>';
 
echo'<input type="hidden" value='.$rush.' name="rush" />';
//ci dessous la variable qui déconne ele est normalement dans un hidden, ici j'affiche sa valeur pour vérifier que c'est bon.
	echo'<input type="text" value='.$file.' name="fichier2" />';
 
        for($i = 0; $i < 10; ++$i):
echo'<tr>
         <td width="80px"><input type="text" class="TC" name="timein[]" value="00:00:00" /></td>
         <td><input type="text" class="TC" name="timeout[]" value="00:00:00" /></td>
         <td ><input type="text" name="com[]"  /></td>
      </tr>';
      endfor;
   echo'</tbody>';
       echo'<td><center><input type="submit" value="enregistrer ce d&eacute;rushage"></tD></form>
</table></td></tr><tr>';
echo'<noscript>Le java sript n"est pas activ&eacute;</noscript>
 
		 <!-- Start VideoLightBox.com BODY section -->
 
	<script type="text/javascript">
 
	function onYouTubePlayerReady(playerId) { 
	ytplayer = document.getElementById("video_overlay"); 
	ytplayer.setVolume(100); 
	} 
 
	</script>';
 
	 echo'<td ><span id="videogallery">
 
		<a rel="#voverlay" href="engine/swf/player.swf?url='.$lienvideo.'/'.$file.'" >
		<img src="./images/popup.png" alt="video1" title="lire la vid&eacute;o dans une plus grande fen&ecirc;tre" /></a>
 
		</span>
		<!-- End VideoLightBox.com BODY section --></TD>';
 
	echo'</table>';
 
	}
	}
ici le début du code de la page de récupération
le echo me permet de m'afficher les valeurs
Code :
1
2
3
4
5
6
7
8
session_start();
  include 'base.php';
  $rush=$_POST['rush'];
  $rushnum=substr($rush, 1);
  $fichier=$_REQUEST['fichier'];
   $fichier2=$_POST['fichier2'];
  $iduser=$_SESSION['identifiant'];
  echo"fichier2".$fichier2."rush".$rush;
la variable $fichier2 prend systématiquement le nom de la variable $rush avec la terminaison .mp4 (terminaison normale du fichier)
rvm31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/02/2012, 19h30   #2
Membre Expert
 
Avatar de transgohan
 
Homme Baptiste ROUSSEL
Étudiant
Inscription : janvier 2011
Messages : 817
Détails du profil
Informations personnelles :
Nom : Homme Baptiste ROUSSEL
Localisation : France, Territoire de Belfort (Franche Comté)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : janvier 2011
Messages : 817
Points : 1 539
Points : 1 539
PHP ne modifie pas les variables transmises dans la requête.
Donc c'est que toi tu ne rentres pas ce qu'il faut dans le formulaire. (un second champ portant le même nom ? Il faut se souvenir que seul le dernier champ est pris en compte en cas de nom double)
Ou bien que tu as un script JS qui modifie les valeurs sur le submit du formulaire.
Ou encore que tu as un script PHP qui modifie la valeur dans $_POST ou avant affichage.
__________________
Toujours se souvenir que la majorité des ennuis viennent de l'espace occupé entre la chaise et l'écran de l'ordinateur.
transgohan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/02/2012, 22h03   #3
Membre du Club
 
Inscription : juillet 2006
Messages : 150
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 150
Points : 40
Points : 40
merci transgohan.
je savais bien qu'il s'agissait d'une erreur de ma part mais je ne voyais pas ou.
En recherchant je me suis rendu compte que le nom que je croyais être la variable rush envoyé 2 fois correspondait à la dernière variable fichier de la liste affiché avec un while.
mon <form> était mal placé.
il n'étais pas inclut dans la boucle il n'envoyait donc que la dernière valeur
Code :
1
2
3
4
5
6
7
8
9
10
echo'<form action="edl.php" enctype="application/x-www-form-urlencoded" method="post">';
        //fichiers multiple
        // affichage des fichiers du dossier
	while($file = readdir($dir)) { 
	if($file != "'.'" && $file != '..' && !is_dir($video.'/'.$file)){ 
	echo'<table ><tr><td><video width="520" controls="controls">
	<source src="'.$video.'/'.$file.'" type="video/mp4" /></video>';
 
	$nomdufichier2=substr($file, 0, -4);
	 echo'<br><b>'.$nomdufichier2;
maintenant il est dans la boucle j'ai donc la bonne valeur envoyé avec le submit
Code :
1
2
3
4
5
6
7
8
9
10
11
12
/fichiers multiple
        // affichage des fichiers du dossier
	while($file = readdir($dir)) {
	if($file != "'.'" && $file != '..' && !is_dir($video.'/'.$file)){
	echo'<table ><tr><td><video width="520" controls="controls">
	<source src="'.$video.'/'.$file.'" type="video/mp4" /></video>';
 
	$nomdufichier2=substr($file, 0, -4);
	 echo'<br><b>'.$nomdufichier2;
	$fichier2=$file;
 echo'  <form action="edl.php" enctype="application/x-www-form-urlencoded" method="post">';
   echo' <td><table bgcolor="#0099FF">
rvm31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h55.


 
 
 
 
Partenaires

Hébergement Web