Foros del Web » Programando para Internet » PHP »

Ayuda con esto!!!

Estas en el tema de Ayuda con esto!!! en el foro de PHP en Foros del Web. Les tengo una nueva pregunta: y que a mi me seria de mucha utilidad. Se puede en php contar las veces que se clikea un ...
  #1 (permalink)  
Antiguo 08/12/2005, 08:05
 
Fecha de Ingreso: septiembre-2003
Mensajes: 197
Antigüedad: 14 años, 3 meses
Puntos: 0
Ayuda con esto!!!

Les tengo una nueva pregunta:
y que a mi me seria de mucha utilidad.
Se puede en php contar las veces que se clikea un boton en un formulario y si se clikeo tres veces que aparesca un mensaje de advertencia o que redireccione a otra pagina??
  #2 (permalink)  
Antiguo 08/12/2005, 08:20
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Según lo describes .. ese control lo deberías hacer con Javascript.

Recuerda que PHP se ejecuta en el "lado del servidor" .. así que el hecho de hacer "click" en un botón es un "evento" que sucede en el "cliente" (en tu página que estás viendo en tu navegador) .. para ese momento .. PHP todavía no ha recibido nada.

Ahora .. si cuando dices "hacer click en un botón" eso implica que el formulario por ejemplo se envia al script PHP de proceso .. o en general llamas con esa pulsación del botón a un script PHP .. ahí si, podrías ir registrando en una variable de sesión por ejemplo cuantos click's vas haciendo ..

Pero, .. insisto .. tal cual lo describes es taréa de Javascript. Pero aquí lo importante es que te aclares y veas que tipo de cosas (acciones) serían taréa de PHP (del lado del servidor) y cuales de "Javacript" (del lado del cliente), así . .preguntas similares a futuro tu mismo veras donde preguntar: si en el foro de PHP o en el de javascript/html por ejemplo.

Un saludo,
  #3 (permalink)  
Antiguo 08/12/2005, 08:30
 
Fecha de Ingreso: septiembre-2003
Mensajes: 197
Antigüedad: 14 años, 3 meses
Puntos: 0
Si no entiendo mal, lo que me explicaste, creo que seria en php, porque lo que pretendo lograr es enviar un mail usando ese boton (llamado modificar de un formulario de modificaciones), pero una sola ves, como veras al ser un formulario de modificaciones ese boton puede ser presionado varias veces. Y la verdad no se como realizarlo.
Espero que me haya explicado bien cual es mi inquietud. Gracias
  #4 (permalink)  
Antiguo 08/12/2005, 08:52
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Sólo para ir aclarando conceptos:

* Quien envia tu e-mail es tu script PHP .. no tu "formulario" ni ese botón. Tu formulario y datos de el son enviados al script PHP, este los toma y ahí hace su proceso, ahora, que todo sea en "cadena" OK, .. pero por alguna validación en el código PHP por ejemplo ya no se generaría tu e-mail por ejemplo ni su envio .... Parecerá una tontería .. pero si ves eso claro veras por qué te lo comento.

Igualmente el tema que planteas se resuelve con Javascript. Te paso una FAQ al respecto de dicho foro:

http://www.forosdelweb.com/showthrea...288#post503288

Se trata de controlar vía javascript que sólo se pulse una vez dicho botón, cuando se envie la página . tu script PHP generá otra por ende entre la pulsación del botón y que se ejecute el proceso del script PHP que se llamó + la salida que este genere y llegue de vuelta al cliente (navegador) no se permitirá más pulsaciones del botón.

Y cara a PHP .. lo importante es que cuando termines tu proceso de envio del e-mail .. redirecciones a una página cualquiera que muestre un mensaje de enviado exito/fallo .. pero no te quedes en el mismo script que haga el proceso:

Código PHP:
if (mail(....)){
  
header("Location: ok.php");
  exit;
} else {
  
header("Location: fallo.php");
  exit;

Así evitarás que si recargan la página que ejecuta ese script de envio del e-mail .. se repita el proceso con los mismos datos que llegaron de tu formulario.

Un saludo,
  #5 (permalink)  
Antiguo 08/12/2005, 09:09
 
Fecha de Ingreso: septiembre-2003
Mensajes: 197
Antigüedad: 14 años, 3 meses
Puntos: 0
Realmente no sabria que hacer sin personas como Cluster, que tienen la paciencia de explicar cada procedimiento para que nosotros (los novatos) entendamos mejor y podamos aprender como corresponde. Gracias por tu explicacion tan clara.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:42.