2009-11-13 5 views
0

comment puis-je créer une liste déroulante avec une action qui me permet de créer un lien vers une autre page? J'utilise cakephp pour faire un système, que je veux avoir une liste déroulante pour permettre à l'utilisateur de sélectionner. lorsque l'utilisateur a sélectionné la valeur, je voulais appeler une fonction dans le contrôleur .. izit disponible que je peux utiliser une $ form-> entrée pour effectuer cela ?? Comment appeler une fonction dans un contrôleur dans cette situation? puis-je appeler une fonction pendant que l'utilisateur a sélectionné une donnée et que j'envoie les données au contrôleur?Comment appeler la fonction du contrôleur lorsque l'utilisateur a sélectionné une valeur dans la liste déroulante?

tout 1 peut aider? merci ..

Répondre

0

Ceci est résolu sur le client avec Javascript. PHP n'est pas directement utile pour ça, pas plus que CSS.

+0

mais mon système utilise cakephp pour le construire, tout ce que je reçois et publie est nécessaire pour récupérer le code php. Je suis confus de la façon dont les données courent sur mon cakephp. parce que je suis encore nouveau dans cakephp. –

2

Comme mentionné, vous devrez le faire via javascript. Je vais vous donner un exemple rapide et j'espère que cela vous aidera. La clé est le formulaire dans lequel la boîte de sélection est, l'action de ce formulaire et d'autres entrées aideront à diriger votre script. Par exemple:

<form action="<?=$_SERVER['PHP_SELF']?>" method="POST"> 
    <select name="selectbox" size=1 onchange="this.form.submit();"> 
    <option value="">Please choose your page</option> 
    <option value="1">Page option 1</option> 
    <option value="2">Page Option 2</option> 
    </select> 
</form> 

Dans l'exemple ci-dessus chaque fois que la zone de sélection est modifié, il appellera le formulaire action de soumission, qui présentera le formulaire par la poste à l'action, dans ce cas elle-même. Une fois que la page est rechargée dans votre script PHP, vous pouvez regarder la variable $ _POST et voir quelle page ils ont choisie, puis les rediriger.

switch($_POST['selectbox']) { 
    case 1: 
    //Redirect or include page 1 
    break; 
    case 2: 
    //Redirect or include page 2 
    break; 
} 

J'espère que cela aide.

+0

génial !!! c'est m'aider beaucoup et arriver à effectuer cette action .. MERCI !!! –

Questions connexes