Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Leguim

#301
Buenas tardes,

Hace un tiempo había publicado un tema donde preguntaba sobre como podía evitar que un usuario haga varios clicks a un botón "submit" que registre a un usuario... si va algo lento el servidor el usuario por apurado o porque tenga poca paciencia va a hacer click como 10 veces haciendo así unos 10 registros.. los "registros" no necesariamente son solamente cuando se registra un usuario ya que en este caso no va a haber problema ya que dos usuarios con el mismo correo no se pueden registrar...

A lo que voy es...

¿Como evito el "insistente" envío de un formulario?

Esto lo había solucionado perfectamente con el uso de javascript, pero todos sabemos que Seguridad + javascript = Peligro
Así que lo quiero hacer pero con PHP un lenguaje del lado del servidor...

Lo que tengo es:

Formulario:
Código (html) [Seleccionar]

<form method="post" onsubmit="return CheckSubmit();">
        <input type="text" name="texto">
        <button type="submit" name="enviar">enviar</button>
</form>


javascript
Código (javascript) [Seleccionar]

var sending_post = false;

// functions
function CheckSubmit()
{
if(sending_post == false)
{
sending_post = true;
// Acá se puede mostrar una ventana modal o un mensaje de "Cargando..."
   
          return true;
}
else
{
                 return false;
}
}


La idea es pasar eso pero a PHP? ¿Como lo harían?
#302
alguna idea?
#303
Los demás pueden hacer con sus vidas lo que quieran pero ya cuando se meten con temas religiosos así es una provocación, piden respeto, igualdad y nose cuanto otro circo más pero les gusta fomentar el quilombo... doble moral...
#304
Buenas tardes,

voy a ir directamente a el tema y es que tengo un sistema de comentarios, voy a usar de ejemplo a facebook que tiene las publicaciones una abajo de la otra y en cada publicación se pueden ver los comentarios por lo que si son 5 publicaciones van a haber 5 input's para comentar... No probé todavía pero como aplico con la V2? ¿Es como se hace en los formularios? ¿No va a ir más lento la pagina al cargar, ya que va a tener que cargar más de 1 recaptcha?

Una solución quizá sea usar la V3 (que es posiblemente una solución que tampoco probé)

Pero como quiero tener más opciones decidí preguntarles si para este caso se podría...

Agregar un sistema de que para volver a comentar un nuevo comentario el usuario deba esperar 20 segundos o 15 segundos... también cuento con anti CSRF

Este va a ser posiblemente el ultimo tema que abro de esto, aunque quien sabe...  :xD

¡FELICIDADES!
#305
Pero que pasa si a el usuario le da un score bajo... entiendo que al pasar eso no se van a enviar los datos y va a mostrar un error... pero como sigue?... al momento de detectar una puntuación baja va a mostrar también un captcha para completar?... lo pregunto porque vi que esta pagina aveces pide un captcha (V2) y otras no
#306
¿Se pueden usar las 2? pasa que tengo un sistema hecho con ajax de comentarios y no se si me va a funcionar la v2 entonces usar la v3... igual todavía no probé
#307
Buenas noches,

actualmente estoy usando la versión 2 de google recaptcha que vendría siendo esa que hay que hacer click en un box y aveces sale una tarea para hacer... pero la v3 supuestamente está invisible y no pasa esto... es con un puntaje... sin necesidad de completar ninguna tarea ya que esto si bien la v2 no me esta dando problemas y esta todo perfecto... si es cierto que es algo tedioso estar completando tareas por más simples que sean..

¿Que me recomiendan?
#308
Cita de: @?0!,5^34 en 19 Diciembre 2019, 23:20 PM
Te estás complicando la vida mucho. Y lo que comentas ahora no tiene relación con la pregunta inicial.

Agrega a la tabla los permisos que tiene el usuario. Por ejemplo número del 1 al 5.

1 usuario baneado.
2 visitantes.
3 usuario loggeado común.
4 moderadores, administradores.
5 webmaster (tú).

En base a esto cuando se solicite una acción compruebas si el usuario que la solicita tiene permisos para realizar la acción.

emm nose experimenta lo que te dije y te vas a dar cuenta del hueco de "vulnerabilidad" o bugeaso que puede haber con lo que dije... con lo de los permisos... nose ya que tengo una tabla aparte donde se almacenan todos los usuarios baneados, donde va a guardar razón de baneo, la id del admin que lo bloqueo, la fecha, etcétera... después permiso visitantes? por ahí para lo que estoy trabajando no me sirva de mucho porque no es un blog, después 4. moderadores, adeministradores y 5. webmaster eso lo tengo en la tabla pero se llama rango... donde 1. va a ser ayudante, 2. X, y 3. Z
#309
Hice así y funciona, ¿qué les parece?

Código (php) [Seleccionar]

                        $data = htmlspecialchars($data);
$data = trim($data);
$data = preg_replace('/\r/m', '', $data);
$data = preg_replace('/\n{3,}/m', "\n\n", $data);
#310
Buenos días tengo un formulario muy simple:

Esto viene de un tema pasado para que puedan entender mejor: https://foro.elhacker.net/desarrollo_web/pregunta_iquestcomo_puedo_hacer_que_si_son_4_espacios_seguidos-t501708.0.html

La idea básica es que si son 3 saltos de líneas o más seguidos que están vacíos estos se conviertan en 2, por lo que si me mandan

"T







M"

esto se convierta en

"T


M"

No entiendo porque en el primer código donde lo hago de una forma más "estática" si funciona, pero si ya lo hago con un formulario usando un textarea ya no...

estática
Código (php) [Seleccionar]

<?php
$string 
'• Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod.'."\r\n\n\n\n\n\n\n\n\n".'• Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod.'."\r\n".'• Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod.';
$string Clearn_Data('textarea'$string);

echo 
nl2br($string);
?>



dinámica
Código (php) [Seleccionar]

<form method="post">
<textarea name="texto" placeholder="texto"></textarea>
<button type="submit" name="enviar">enviar</button>
</form>

if(isset($_POST['enviar']))
{
$texto = Clearn_Data('textarea', $_POST['texto']);

echo nl2br($texto);
}


La función es:
Código (php) [Seleccionar]

function Clearn_Data($type, $data)
{
      if($type === 'textarea')
{
$data = htmlspecialchars($data);
$data = trim($data);
$data = preg_replace('/\n{3,}/m', "\n\n", $data);
}

     return $data;
}