Ver Mensaje Individual
  #6 (permalink)  
Antiguo 08/12/2013, 12:33
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema con $_POST al enviar submit

Bueno voy a intentar aportar algo ya que como lo solucionaste se puede alterar , ahora mismo tu formulario podria ser enviado 2 veces ya que el campo time aunque lo escondas se puede alterar .

ejemplo, se parece mucho a lo que se utiliza para CSRF cross site request forgery

Código PHP:
Ver original
  1. <?php
  2.  
  3. if(isset($_POST['enviar']))
  4. {
  5.     if(isset($_POST['name']) and isset($_SESSION['TOKEN']) and isset($_GET['token']) and $_GET['token'] == $_SESSION['TOKEN'])
  6.     {
  7.         echo 'User name : <b> '.$_POST['name'].'</b>';
  8.  
  9.         unset($_POST['name']);
  10.     }
  11.     else
  12.     {
  13.         exit('error');
  14.     }
  15. }
  16.  
  17. $_SESSION['TOKEN'] = sha1(uniqid(mt_rand(), true)); // generas un token
  18.  
  19. ?>
  20.  
  21. <form method="post" action="<?php echo $_SERVER['PHP_SELF'].'?token='.$_SESSION['TOKEN']; ?>">
  22. <input type="text" name="name"><br>
  23. <input type="submit" id="enviar" name="enviar" value="Submit Form"><br>
  24. </form>

haber si te sirve ;::

Última edición por webankenovi; 08/12/2013 a las 13:28