2009-07-16 6 views
1

J'ai recadré ma question:Comment passer une variable jQuery au code PHP?

J'ai une liste déroulante qui est remplie avec une liste d'utilisateurs.

<a href="#" class="Share<?=$r['Form']['id'];?>">Share</a> 
    <form action="/FormBuilder/index.php/forms/share/<?=$r['Form']['id']?>/<?=$userid?>" method="post" id="shareform<?=$r['Form']['id'];?>" class="shareform"> 
      <p>Select the users with whom you want to share the Form</p> 
      <select id="userList" name="userList" multiple> 
        <?php foreach($users as $user){ ?> 
          <option value=<?=$user['User']['id'];?>><?=$user['User']['name'];?></option>   
        <?php }?> 
      </select> 
      <input type="submit" class="button" value="Share"/> 
    </form> 

Lorsque je sélectionne l'utilisateur et donne présenter, le champ d'accès de formulaire dans la base de données est mise à jour « partagée ».

Maintenant, j'ai besoin d'afficher le nom de formulaire qui a été partagé dans la page d'accueil de l'utilisateur que j'ai sélectionné. C'est le code pour afficher les noms de formulaire qui ont été marqués comme "partagés".

<?php if (!empty($formsShared)){ 
    foreach ($formsShared as $shared): 
     echo $shared['Form']['name']; 
    endforeach; 
    } 
    else{ 
     echo "There are no shared Forms !"; 
    }?> 

je dois obtenir les valeurs sélectionnées dans le menu déroulant, afin que je puisse avoir une autre boucle pour afficher la forme partagée uniquement dans la page d'accueil des utilisateurs sélectionnés. Comment puis-je obtenir l'option: valeur?

+0

Pourquoi avez-vous voté bas la question? Ai-je demandé quelque chose de mal? – Angeline

Répondre

4

Vous voudrez leur envoyer un script PHP en utilisant AJAX.

$.post("file.php", { data: selected_value[i] }); 

et dans votre script PHP:

$data = $_POST['data']; 

Si la chute est en baisse seulement une partie du formulaire, vous créez un champ de formulaire caché, avec la valeur selected_value [i] .

2

Je ne pense pas que ce soit possible dans la page. Vous devez soumettre dans le formulaire ou le transmettre via un message xhr/get.

Ensuite, vous pouvez l'évaluer en PHP via les paramètres habituels.

3

Chaque fois que vous souhaitez récupérer des données de JavaScript dans PHP, vous consultez une demande + réponse.

XHR serait la voie à suivre. Vous n'êtes évidemment pas obligé de renvoyer quoi que ce soit si tout ce que vous faites est de recevoir des informations ou de mettre à jour dites ... état de la session.

+0

XHR? Qui l'appelle comme ça? – mpen

1

Vous voudrez leur envoyer un script PHP en utilisant AJAX.

$.post("file.php", { data: selected_value[i] }); 

Et dans votre script PHP:

$data = $_POST['data']; 

avec ce script, donnez-moi un exemple simple valide.

je vous remercie ...

Questions connexes