Problème avec $_POST

Problème avec $_POST - PHP - Programmation

Marsh Posté le 08-02-2012 à 12:48:14    

Bonjour,
 
Je suis en train de faire une page qui permet de calculer sa moyenne en PHP. Le nombre de matières n'étant pas défini à l'avance, je veux que l'utilisateur puisse en rajouter ou en retirer. J'utilise le code suivant, qui ne marche pas (le problème vient apparemment de mon $_POST['lignes']) :
 
Fichier notes.php

Code :
  1. <p> Vous pouvez calculer votre moyenne grace &agrave; notre outil : entrez vos coefficients et vos notes pour chaque mati&egrave;re.<br/><br/>
  2. <center>
  3. <input type="submit" value="Ajouter une mati&egrave;re"  OnClick="add();" />
  4. <input type="submit" value="Retirer une mati&egrave;re"  OnClick="remove();" />
  5.  <form method="post" action="notes.php">
  6.  <?php
  7.  include "tableau.php";
  8.  ?>
  9.   <br/>
  10.   <input type="reset" value="Reinitialiser" /> <input type="submit" value="Envoyer" />
  11.   <br/><br/>
  12.  </form>
  13.  Votre moyenne est :
  14.  <?php
  15.  include "moyenne.php";
  16.  ?>
  17. </center>
  18. </p>
  19. <?php
  20. $_POST['lignes'] = 2;
  21. function add()
  22. {
  23. $_POST['lignes'] = $_POST['lignes'] + 1;
  24. }
  25. function remove()
  26. {
  27. $_POST['lignes'] = $_POST['lignes'] - 1;
  28. if($_POST['lignes'] < 2)
  29. {
  30.  echo "Il est inutile de calculer la moyenne de moins de deux matières.";
  31.  $_POST['lignes'] = 2;
  32. }
  33. }
  34. ?>


 
Fichier tableau.php

Code :
  1. <?php $nombre_ligne = $_POST['lignes']; ?>
  2. <table>
  3. <tr>
  4.  <th><label for="matiere">Mati&egrave;re</label></th>
  5.  <th><label for="note">Note (/20)</label></th>
  6.  <th><label for="coef">Coefficient</label></th>
  7. </tr>
  8. <?php for($i = 1; $i <= $nombre_ligne ; $i++){ ?>
  9. <tr> 
  10.  <td><input type="text" name="matiere" id="matiere" placeholder="Ex : Maths" /></td>
  11.  <td><input type="number" name="note" id="note" min="0" max="20" step="0.01" required /></td>
  12.  <td><input type="number" name="coef" id="coef" min="0" max="15" step="0.5" required /></td>
  13. </tr>
  14. <?php } ?>
  15. </table>

Reply

Marsh Posté le 08-02-2012 à 12:48:14   

Reply

Marsh Posté le 08-02-2012 à 13:51:31    

Le vrai problème, c'est que tu essaies d'appeler des fonctions php dans du javascript (onclick). C'est impossible de le faire de cette manière.


Message édité par Pc_eXPert le 08-02-2012 à 13:51:49
Reply

Marsh Posté le 08-02-2012 à 19:06:01    

Déjà, dans tes onclick, tu dois utiliser des fonctions d'un langage client (comme Javscript) et non serveur (PHP). Je pense que tu n'as pas compris la différence, qui est cruciale.
 
Ensuite, les variables les variables $_POST sont des superglobales, pas censées être utilisées comme tu le fais.


---------------
http://www.aideinfo.com/  Whois adresses IP/domaines le plus évolué !!  FAQ Free Mobile
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed