Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: janliu en 16 Julio 2014, 16:29 pm



Título: Ayuda con PHP
Publicado por: janliu en 16 Julio 2014, 16:29 pm
Soy novato y estoy empezando un curso de PHP, estoy realizando un ejercicio y no se como resolver este error     Notice: Undefined index: a in C:\xampp\htdocs\sueldo.php on line 23

el programa es el seguiente:

Código
  1. <html>
  2. <head>
  3. <title>sueldo</title>
  4. </head>
  5. <body>
  6. <form action="" method="post">
  7. <label>Digite el Sueldo</label>
  8. <br>
  9.  
  10. <p>$<input type="text" value="" name="a"></p>
  11.  
  12. <br>
  13. <label>Digite el Incremento %</label>
  14. <br>
  15. <p>%<input type="text" value="8" name="b"></p>
  16. <br>
  17. <input type="submit" name="incremento" value="Calcular" />
  18. </form>
  19. <br>
  20.  
  21. <?php
  22.  
  23. $a = $_POST['a'];
  24. $b = $_POST['b'];
  25.  
  26. $incremento = $a / 100 * $b;
  27.  
  28. echo "<br>";
  29. echo "Suledo  $".$a;
  30. echo "<br>";
  31. echo "Incremento %".$b;
  32. echo "<br>";
  33. echo "El Nuevo suldo con el incremento es   $" . $incremento;
  34.  
  35. ?>
  36. </body>
  37. </html>


Título: Re:
Publicado por: balalaika en 16 Julio 2014, 17:27 pm
Prueba a escapar el dolar /$


Título: Re: Ayuda con PHP
Publicado por: MinusFour en 16 Julio 2014, 18:07 pm
Código
  1. <html>
  2. <head>
  3. <title>sueldo</title>
  4. </head>
  5. <body>
  6. <form action="" method="post">
  7. <label>Digite el Sueldo</label>
  8. <br>
  9.  
  10. <p>$<input type="text" value="" name="a"></p>
  11.  
  12. <br>
  13. <label>Digite el Incremento %</label>
  14. <br>
  15. <p>%<input type="text" value="8" name="b"></p>
  16. <br>
  17. <input type="submit" name="incremento" value="Calcular" />
  18. </form>
  19. <br>
  20.  
  21. <?php
  22.  
  23. $a = $_POST['a'];
  24. $b = $_POST['b'];
  25.  
  26. $incremento = $a / 100 * $b;
  27.  
  28. echo "<br>";
  29. echo "Suledo  $".$a;
  30. echo "<br>";
  31. echo "Incremento %".$b;
  32. echo "<br>";
  33. echo "El Nuevo suldo con el incremento es   $" . $incremento;
  34.  
  35. ?>
  36. </body>
  37. </html>

El dato post no existe hasta que se envie el formulario. Al cargar el archivo inicialmente no existen las variables $_POST por lo que tienes que checar si hay algo ahí, para cargas subsequentes.

Código
  1. <?php
  2.  
  3. if(isset($_POST['a'] && isset($_POST['b']){
  4. $a = $_POST['a'];
  5. $b = $_POST['b'];
  6.  
  7. $incremento = $a / 100 * $b;
  8.  
  9. echo "<br>";
  10. echo "Suledo  $".$a;
  11. echo "<br>";
  12. echo "Incremento %".$b;
  13. echo "<br>";
  14. echo "El Nuevo suldo con el incremento es   $" . $incremento;
  15.  
  16. }
  17. ?>