Précédent   Forum des professionnels en informatique > PHP > Langage > Syntaxe
Syntaxe Forum d'entraide sur la syntaxe de PHP et la POO. Avant de poster -> FAQ syntaxe, Cours d'initiation et cours de POO
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/10/2007, 16h06   #1
Invité de passage
 
Inscription : avril 2005
Messages : 6
Détails du profil
Informations forums :
Inscription : avril 2005
Messages : 6
Points : 1
Points : 1
Par défaut [PHP-JS] Pb concernant les ancres

Bonjour,

Je suis confrontée à un petit problème que je n'arrive pas à résoudre.
Comme un petit exemple vaut mieux qu'un long discours voici un fichier de test :

fichier : test.php
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
62
63
64
65
66
67
<script type = 'text/javascript'>
    function modifInterface(actionVoulue, formulaire)
    {
        document.getElementById(formulaire).action = actionVoulue ;
        return true;
    }
</script>
<form name = "creationChiffrage" id = "creationChiffrage"  action = "test.php" method = "post" >
	<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
	<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
	<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
	<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
	<table>
		<tr>
			<td align = "center" id = "topActiv">
				Nombre d&rsquo;activit&eacute;s &agrave; saisir : 
	<?php
				$nbActiv = 0;
				if (isset($_POST['nbActiv'])) {
					$nbActiv = $_POST['nbActiv'];
				}
 
	?>
				<select name = "nbActiv" id = "nbActiv" onChange = "modifInterface('test.php#topActiv', 'creationChiffrage'); return submit();">
				<?php 
					for ( $i = 0 ; $i < 100 ; $i++ ) {
					?>
					<option value = "<?php echo $i;?>" <?php if ($i == $nbActiv) {echo ' selected ';}?> ><?php echo $i;?></option> 
					<?php		
					}
				?>
				</select>
			</td>
		</tr>
	</table>
	<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
	<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
	<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>	
	<table bgcolor = "red">
		<tr>
			<td align = "center" id = "topAppli">
				Nombre d&rsquo;applications &agrave; saisir : 
	<?php
				$nbAppli = 0;
				if (isset($_POST['nbAppli'])) {
					$nbAppli = $_POST['nbAppli'];
				}
 
	?>
				<select name = "nbAppli" id = "nbAppli" onChange = "modifInterface('test.php#topAppli', 'creationChiffrage'); return submit();">
				<?php 
					for ( $i = 0 ; $i < 100 ; $i++ ) {
					?>
					<option value = "<?php echo $i;?>" <?php if ($i == $nbAppli) {echo ' selected ';}?> ><?php echo $i;?></option> 
					<?php		
					}
				?>
				</select>
			</td>
		</tr>
	</table>
	<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
	<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
	<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
	<br/><br/><br/><br/><br/><br/><br/><br/><br/>
	<p> ici </p>	
</form>

=> principe de l'action :
sur modification de l'une des listes déroulantes le fichier doit être soumis et l'on doit revenir sur le même fichier en présélectionnant les données envoyés et en se remplaçant auprès de la liste venant d'être modifiée.

=> pb : si je modifie plusieurs fois les listes, aléatoirement ça ne fonctionne pas mais je n'arrive pas à comprendre d'où vient le problème.

=> pb bis : ce code est ensuite placé dans des frames (no comment ce n'est pas mon choix) et là c'est encore pire !

Si quelqu'un trouve une solution, trouve l'erreur ou a une explication...

Merci
Youlie2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/10/2007, 17h20   #2
Rédacteur/Modérateur
 
Avatar de _Mac_
 
Inscription : août 2005
Messages : 8 306
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 8 306
Points : 8 590
Points : 8 590
Ca ressemble fort à un pb de JavaScript au vu du comportement que tu décris. Tu peux nous donner le code de ta fonction submit ?

Perso, j'aurais fait la fonction modifInterface légèrement différement :
Code :
1
2
3
4
5
    function modifInterface(actionVoulue, formulaire)
    {
        document.getElementById(formulaire).action = actionVoulue ;
        document.getElementById(formulaire).submit();
    }
Du coup, le select ressemble à ça :
Code :
<select name = "nbActiv" id = "nbActiv" onChange = "modifInterface('test.php#topActiv', 'creationChiffrage');">
On vire le submit mais je ne suis pas sûr de moi car je ne sais pas ce que fait submit.
__________________

Du détail, du détail, du détail !!!
Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
_Mac_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/10/2007, 17h32   #3
Invité de passage
 
Inscription : avril 2005
Messages : 6
Détails du profil
Informations forums :
Inscription : avril 2005
Messages : 6
Points : 1
Points : 1
Par défaut suite

La fonction submit est une fonction existante de javascript qui soumet le formulaire => je n'ai pas de code
Youlie2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/10/2007, 08h53   #4
Invité de passage
 
Inscription : avril 2005
Messages : 6
Détails du profil
Informations forums :
Inscription : avril 2005
Messages : 6
Points : 1
Points : 1
Par défaut La solution proposée ne fonctionne pas

La solution proposée ne fonctionne toujours pas, le comportement de mon interface est toujours aléatoire !
quelqu'un aurait-il une solution s'il vous plaît !

Merci
Youlie2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h20.


 
 
 
 
Partenaires

Hébergement Web