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 07/12/2007, 11h47   #1
Nouveau Membre du Club
 
Inscription : mai 2007
Messages : 215
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 215
Points : 32
Points : 32
Par défaut [PHP-JS] onclick sur une liste déroulante

Bonjour,

Voici mon petit probleme :
J'ai une liste déroulante :
Code :
1
2
3
4
5
6
7
  <select name="select">
    <option value="1">Contrat</option>
    <option value="2">Employe</option>
    <option value="3">Materiel</option>
    <option value="4">Prestataire</option>
    <option value="6">Verifiaction</option>
  </select>
Je voudrai que quand on selectionne MATERIEL dans la liste , on soit redirigé vers une autre page.

Je sais qu'il faut utilisé l'évènement onclick , mais je n'ai pas réussis

Merci d'avance
toma03 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2007, 12h07   #2
Membre actif
 
Avatar de JmL40
 
Inscription : mai 2007
Messages : 310
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : mai 2007
Messages : 310
Points : 191
Points : 191
Envoyer un message via MSN à JmL40
Bonjour,

bah avant tout, il faut que tu traite le choix effectué par l'utilisateur dans ton formulaire. Une fois le choix traité tu peut le redirigé vers ta page.

Une idée :

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
 
<form method = "post" action = "pageencours.php">
	<select name = "choix">
		<option value = "matos">Matériels</option>
		<option value = "2">2</option>	
		<option value = "3">3</option>	
		<option value = "4">4</option>	
		<option value = "5">5</option>							
	</select>
</form>
 
<?php
//TRAITEMENT DE TON FORMULAIRE
$choix = (isset($_POST["choix"]))?$_POST["choix"]:'';
 
if($choix == "matos")
{
	header('Location: matériel.php');
}
else if($choix == "2")
{
 
}
	//ainsi de suite
?>
c'est une proposition ... à toi de voir
JmL40 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2007, 12h15   #3
Modérateur
 
Avatar de ThomasR
 
Homme Thomas Rambaud
Développeur Web
Inscription : décembre 2007
Messages : 2 140
Détails du profil
Informations personnelles :
Nom : Homme Thomas Rambaud
Âge : 25
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : décembre 2007
Messages : 2 140
Points : 2 885
Points : 2 885
Entièrement d'accord avec la solution proposée, néanmoins si jamais tu avais des traitements javascript/Ajax a faire, ce n'est pas le onClick qu'il faut utiliser sur un select mais plutot un onChange.

le onChange correspond à un changement de choix d'element dans le menu déroulant.

Cheers, Thomas.
ThomasR est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2007, 12h26   #4
Nouveau Membre du Club
 
Inscription : mai 2007
Messages : 215
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 215
Points : 32
Points : 32
Dans ce cas la , on n'a donc pas besoin d'evenement javascript ??

Comment le formulaire est il validé ???
toma03 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2007, 12h52   #5
Membre Expert
 
Inscription : octobre 2002
Messages : 1 141
Détails du profil
Informations personnelles :
Âge : 32
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2002
Messages : 1 141
Points : 1 204
Points : 1 204
Envoyer un message via MSN à Raideman
Avec un bouton input type="submit", si tu veux te passer d'un bouton submit, tu devras passer par du javascript (avec l'évènement onChange comme cité ci-dessus).
Raideman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2007, 12h54   #6
Nouveau Membre du Club
 
Inscription : mai 2007
Messages : 215
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 215
Points : 32
Points : 32
OK , voila c'est exactement ça : je veux me passer d'un bouton submit .

Comment integré le onchange : je n'y arrive pas .

merci d'avance pour une aide
toma03 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2007, 13h01   #7
Membre chevronné
 
Avatar de |PaRa-BoL
 
Inscription : novembre 2003
Messages : 737
Détails du profil
Informations personnelles :
Âge : 25

Informations forums :
Inscription : novembre 2003
Messages : 737
Points : 782
Points : 782
<select onchange="func()">
__________________
http://www.ape-project.org/
|PaRa-BoL est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2007, 13h19   #8
Nouveau Membre du Club
 
Inscription : mai 2007
Messages : 215
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 215
Points : 32
Points : 32
j'ai cette fonction redir()
Code :
1
2
3
4
5
function redir($url){
	echo '<script language="JavaScript">
	setTimeout("window.location=\''.$url.'\'")
	</script>';
	}
ma liste déroulante :
Code :
1
2
3
4
5
6
7
8
9
 
<select name="choix"onChange="redir()">
 
  	<option value="1">Contrat</option>
    <option value="2">Employe</option>
    <option value="3">Materiel</option>
    <option value="4">Prestataire</option>
    <option value="6">Verifiaction</option>
  </select>
Comment inseré les url correspondante au choix de la liste .
toma03 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2007, 13h20   #9
Membre chevronné
 
Avatar de |PaRa-BoL
 
Inscription : novembre 2003
Messages : 737
Détails du profil
Informations personnelles :
Âge : 25

Informations forums :
Inscription : novembre 2003
Messages : 737
Points : 782
Points : 782
onChange="redir(this.value)" qui aura pour effet de passer le value de l'option choisie en paramètre de ta fonction
__________________
http://www.ape-project.org/
|PaRa-BoL est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2007, 13h26   #10
Nouveau Membre du Club
 
Inscription : mai 2007
Messages : 215
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 215
Points : 32
Points : 32
Ceci ne fonctionne pas :

Code :
1
2
3
4
5
6
7
8
9
 
 <select name="choix" onChange"redir(this.value)" >
 
  	<option value="test.php">Contrat</option>
    <option value="2">Employe</option>
    <option value="3">Materiel</option>
    <option value="4">Prestataire</option>
    <option value="6">Verifiaction</option>
  </select>
toma03 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2007, 13h30   #11
Membre chevronné
 
Avatar de |PaRa-BoL
 
Inscription : novembre 2003
Messages : 737
Détails du profil
Informations personnelles :
Âge : 25

Informations forums :
Inscription : novembre 2003
Messages : 737
Points : 782
Points : 782
Le "=" apres le onChange
__________________
http://www.ape-project.org/
|PaRa-BoL est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2007, 13h34   #12
Nouveau Membre du Club
 
Inscription : mai 2007
Messages : 215
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 215
Points : 32
Points : 32
Pardon pour cette erreur .

Mais après correction cela ne marche pas non plus

Merci de ton aide
toma03 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2007, 14h24   #13
Modérateur
 
Avatar de ThomasR
 
Homme Thomas Rambaud
Développeur Web
Inscription : décembre 2007
Messages : 2 140
Détails du profil
Informations personnelles :
Nom : Homme Thomas Rambaud
Âge : 25
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : décembre 2007
Messages : 2 140
Points : 2 885
Points : 2 885
le onChange et tous les attributs de ce type ne peuvent appeler que des fonctions JAVASCRIPT, attention le PHP est un langage côté serveur, cette disinction est très importante.
Code :
1
2
3
4
5
6
7
8
 
<script type="text/javascript">
   function redir(url)
          {
           window.location(url);
          }
</script>
onChange="redir('url.php')";
ou
Code :
onChange="window.location('url');"
Mais bon ce que je comprends pas c'est que après tu ne veux pas récupérer la valeur du menu déroulant ?

Si oui

Code :
1
2
3
onChange="window.location('url.php?valeur='+this.options[this.selectedIndex].value);"
dans url.php :
$valeur = $_GET['valeur'];
Enfin, personnellement je te conseillerai de garder le bouton, rien que pour l'experience utilisateur et l'ergonomie, un utilisateur ne devrait jamais être envoyé vers une page sans sa propre volonté.
ThomasR 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 16h30.


 
 
 
 
Partenaires

Hébergement Web