Passer un variable JS a un script PHP

Bonjour , aprés plusieur recherche sur les forum sur google , j'ai pas pu avoir une réponse à ma question , Bon , j'ai un select , et un champ readOnly , je veux que lorsque je selection un choix de mon select , la variable du champ se change , et ça a une relation avec des requetes de la base de données , je vais vous donner le code , mon probleme est que je sais pas comment recuper la valeur de script JS dans le script PHP , c'est evident dans le code... merci de m'aider parceque je peuxx plus maaintennaat

<?php
include("../util/config.php");

?>
<html>
<head>
<title>Etudiant - Inscription</title>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>

<meta charset="utf-8" />
<link rel="stylesheet" href="../css/style20.css" />
<script>
selectElem=0;
function changer(){

selectElem = document.getElementById('id_de_ton_select').value;

<?php

$sql = "select * from acte where idacte= ??? ";
// je dois remplacer les ??? par la valeur de selectElem , comment arriver a faire ca//
$result = mysqli_query($db, $sql);

if (mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_assoc($result)) {
$vari =$row["prixunitaire"];

}}
?>

document.infermier.champ.value= " <?php echo $vari ; ?> ";

}
</script>
</head>
<body>

<form class="infermier" method="POST" enctype="multipart/form-data">

<b>acte
:</b><br>
<?php
$sql = "select idacte, Description from acte";

$result = mysqli_query($db, $sql);
?>
<select name="acte" id="id_de_ton_select" onChange="changer()">
<optgroup label="les actes ">

<?php if (mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_assoc($result)) { ?>
?>
<option value="<?php echo $row['idacte'] ?>"><?php echo $row['Description'] ;?></option>
<?php }} ?>
</optgroup>
</select> <br> <br>

<input type="text" size="10" name="champ" id="id_de_ton_input">

<button type="submit" readonly name="enregister" value="enregistrer">
<b>Enregistrer</b>
</button>
</form>

</body>
</html>

1 réponse

  1. Modérateur
    Bonjour,

    Tu ne peux pas utiliser des variables JS directement dans du PHP...

    Pour faire ce que tu souhaites tu peux :
    - Soit mettre ton SELECT dans une balise FORM .. et déclencher via le onchange un submit du formulaire
    - Soit faire appel à un script AJAX.
    (pour faire de l'ajax, je te conseille d'utiliser la librairie JQUERY).

    PS: Le plus simple étant le SUBMIT de formulaire.

    1. Avrai dire je veux pas utliser un formulaire avec un submit séparé , j'ai lu quelque part ce code que des gens ont dit qu'il fonctionne

      <script>
      mavariable1=5;
      var xhr = new XMLHttpRequest();
      xhr.open("POST", "mapage.php", true);
      xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
      xhr.send("mavariable1=" + escape(mavariable1));

      <?php
      $mavariable2=$_POST['mavariable1'];
      echo $mavariable2;
      ?>
      </script>

      que j'execute ce code y'a pas d'erreurs mais surtout ya pas de résultat , c-à-d y'a pas d'affichage de la valeur du variable $mavariable2 ; pourquoi à votre avis??
    2. Modérateur
      Par ce que ton code js..ne l'affiche pas. ..

      il ne suffit pas de copier coller du code. ..il faut comprendre ce qu'il fait et comment il marche.
    3. D'accord , je suis un débutant je sais ça , pouver vous me dire comment faire?je vous remercie d'avance
    4. Modérateur
      Déjà, pour faire de l'ajax,
      Je te conseille de prendre JQUERY.
    5. je n'ai aucun idée a propos de JQUERY ni de ajax .. :( ! pouvez vous just me fait un plaisir et me donner la solution ? parceque j'ai cherché beaucoup et j'ai trouvé ce code que je vous ai donnée , et autre disent qu'il faut utilisé de l'ajax..