elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 9 10 11 [12] 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 ... 66
111  Programación / Desarrollo Web / [Pregunta]: ¿Como puedo reemplazar una función en onclick=""? en: 20 Julio 2020, 23:11 pm
Buenas tardes,

tengo lo siguiente...

HTML
Código
  1. <button type="button" class="the_button" onclick="alert(1);">Mostrar 1</button>
  2.  

y quiero hacer lo siguiente...
Código
  1. document.querySelectorAll('.the_button')[0].onclick = console.log(1);
  2.  

Es decir, reemplazar la función... en vez de mostrar el 1 con un alert mostrarlo por consola... ¿Como podría hacer esto?

EDIT:
Solución:

Código
  1. document.querySelectorAll('.the_button')[0].onclick = function()
  2. {
  3.       console.log(1);
  4. };
  5.  
112  Programación / Desarrollo Web / [Pregunta]: Enviar recaptcha google por ajax en: 18 Julio 2020, 17:45 pm
Buenas,

estoy intentando enviar un recaptcha de google que creo que es la v2 por medio de ajax, realmente no se bien como puedo enviar y luego recibir los datos correspondientes.

Para un ejemplo, la manera en que valido los recaptcha si es un formulario es hacerlo de la siguiente manera:

HTML
Código
  1. <form method="post">
  2.        <input type="text" name="texto">
  3.        <div class="g-recaptcha input_captcha" data-sitekey="<?php echo(SITE_KEY); ?>"></div>
  4.        <button type="submit" name="enviar">enviar</button>
  5. </form>
  6.  

PHP
Código
  1. <?php
  2. if(isset($_POST['enviar'])
  3. {
  4.      $captcha_response = $_POST['g-recaptcha-response'];
  5.  
  6.      if(!empty($captcha_response))
  7.      {
  8.               $captcha_results = Get_Captcha($captcha_response);
  9.  
  10.               if($captcha_results['success'] == true)
  11.               {
  12.                       echo "el dato fue enviado correctamente!";
  13.               }
  14.               else
  15.               {
  16.                        echo "el captcha no se completó de una forma correcta.";
  17.               }
  18.      }
  19.      else
  20.     {
  21.             echo "es requerido que completes el captcha";
  22.     }
  23. }
  24. ?>
  25.  

Como puedo entonces hacer una función JS que envíe una solicitud hacia un fichero por medio de ajax donde por parametro se envíe el captcha a evaluar?

Código
  1. function Enviar_Captcha(captcha_response)
  2. {
  3.                         $.ajax({
  4. url: 'fichero.php',
  5. type: 'POST',
  6. dataType: 'html',
  7. data: {captcha_response},
  8. })
  9.  
  10. .done(function(results)
  11. {
  12. $('body').append(results);
  13. })
  14. }
  15.  

Como dije antes, no se como enviarlo por parametro en una función que realizará la petición por ajax y luego como puedo recibir ese "captcha_response" para evaluarlo en dicho fichero..

Gracias!
113  Programación / Desarrollo Web / [Pregunta]: ¿Obtener cantidad de elementos con un style especifico?(JS o JQuery) en: 14 Julio 2020, 00:51 am
Buenas,

quería saber como podría obtener la cantidad de elementos mediante el tipo de estilo que tengan... es decir obtener la cantidad de elementos con una determinada clase que tengan un display: block

gracias!
114  Programación / Desarrollo Web / Re: [Pregunta]: ¿Como hacer una alerta cuando se pierda la conexión con el servidor? en: 8 Julio 2020, 03:11 am
Por eso descarte el método de ajax, mi idea no es hacerlo en "tiempo real" sino que hacerlo cuando el usuario haga una petición... por ejemplo cuando un usuario cargue un formulario (hasta ahí tiene conexión) pero luego cuando el presione un botón submit que es para enviar dicho formulario (en ese momento ya perdió la conexión) entonces se valida si tiene conexión o no... realmente nose si lo que yo estoy planteando tiene sentido ya que si ya no tiene conexión no se hasta que punto va a poder validarse algo si lógicamente ya no tiene conexión..  :-\
115  Programación / Desarrollo Web / [Pregunta]: ¿Como hacer una alerta cuando se pierda la conexión con el servidor? en: 7 Julio 2020, 18:57 pm
Hola,

la idea es esa, mostrar un mensaje cuando un usuario pierda la conexión con el servidor... ya sea que el servidor se haya caído o que el usuario haya perdido la conexión a internet..

hace un tiempo había preguntado lo mismo, no me acuerdo bien pero en aquel momento alguien me dijo que podía hacerlo con ajax... la idea es hacerlo cuando el usuario haga una petición al servidor y entonces en ese momento detectar el estado de la conexión...

Espero estar haciendome entender, gracias...
Tampoco sé bien que clase de condicional se debe poner para saber el estado de conexión, imagino que no debe ser algo tan complicado de hacer...

EDIT:
¿esto me servirá para eso?

Código
  1. {
  2.   // [...]
  3. }
  4.  
116  Programación / Desarrollo Web / Re: [Pregunta]: Optimización de una consulta. en: 6 Julio 2020, 02:05 am
Lo que tendrías que hacer es reducir la consulta en sí. No sacar todos los datos sino solo la cuenta total.

No es lo sacar todo y luego contar.
Código
  1. SELECT * FROM usuarios


Que contar directamente.
Código
  1. SELECT COUNT(*) as count FROM usuarios

Con ese ultimo, haces que MySQL (u otro motor) solo cuente y no tenga que sacar cada cell ende reduces enormemente la carga.

Saludos

Gracias! ya tengo todo funcionando...
117  Programación / Desarrollo Web / Re: [Error]: Google siempre rompe pelotas nunca "in-rompe pelotas" en: 6 Julio 2020, 02:04 am
Voy a revisar eso, si hay mejores maneras... pero voy poco a poco...
118  Programación / Desarrollo Web / [Error]: Google siempre rompe pelotas nunca "in-rompe pelotas" en: 3 Julio 2020, 09:04 am
Hola!

estaba usando hace unos meses PHPMailer para el envío automático de mensajes por correo electrónico y google (que se había tardado) comenzó a romper las pelotas bloqueando la aplicación... La volví a activar a la aplicación y después de unas semanas me encuentro que la bloqueó otra vez...

No puedo estar a cada rato revisando si google bloquea la aplicación o no...

¿Existe una alternativa de una aplicación "más segura"? ¿Qué puedo hacer?
119  Programación / Desarrollo Web / [Pregunta]: Optimización de una consulta. en: 3 Julio 2020, 05:14 am
Buenas noches,

básicamente tengo una consulta que llama de una base de datos todos los registros, generalmente uso este tipo de consultas para obtener la cantidad total y no para otra cosa, que tampoco hago un foreach (recorro cada dato) imaginensen 75,000 registros... me explota la computadora y de paso el servidor  :xD

por ejemplo..
Código
  1. $cantidad_total = count(registros::Todos());
  2. echo 'En total hay '.($cantidad_total).' registros!';
  3.  

¿Habrá algún problema si un día hay 500,000 registros u obviamente muchos más?
120  Programación / Desarrollo Web / Re: [Pregunta]: ¿Como puedo hacer esto equivalente con javascript? en: 1 Julio 2020, 13:51 pm
Generalmente no tiene nada de malo utilizar librerías de terceros. Te ahorras tiempo, dolores de cabeza, y casos en los que no has pensado. Por ejemplo, enla funcion PHP que muestras, que pasa si le paso un string como este:

<p>http://google.com</p>

Te va a devolver esto:

Código
  1. <p><a target="_blank" href="http://google.com</p>">http://google.com</p></a>

Lo cual obviamente esta rotisimo... E incluso no tenemos que ir tan lejos, basta con que el texto incluya comillas:

Puedes leer más sobre tortugas en "https://es.wikipedia.org/wiki/Testudines"

Código
  1. Puedes leer más sobre tortugas en "<a target="_blank" href="https://es.wikipedia.org/wiki/Testudines"">https://es.wikipedia.org/wiki/Testudines"</a>

Ahí rompes todo el HTML con una simple camilla doble. Ya que usas ReGeX, te puedes asegurar de capturar solo lo que consideraríamos como una URL valida.

https://regexr.com/3e6m0

Eso sacado de StackOverflow con más de 600 votos.. Y aun así, no es válido porque no aceptaría dominios perfectamente válidos como:

https://hello.amsterdam/
https://barça.cat
http://ñoño.com


Porque limita el TLD a un máximo de 6 caracteres y solo espera a-z sin caracteres UTF-8. Tampoco acepta todo mayúsculas...

Código:
((http|https)\:\/\/)?[\w0-9\-\.]{1,255}\.[\w]{2,63}(\/[\w_\.\/\#]*)?

Este más o menos cumple con su cometido... Aunque si no lleva http/https delate, habría que ponerlo y eso implica comprobar antes de hacer el replace. En PHP seria algo así:

Código
  1. function makeLinks(string $string): string
  2. {
  3.    $regex = '/((http|https)\:\/\/)?[\w0-9\-\.]{1,255}\.[\w]{2,63}(\/[\w_\.\/\#]*)?/iu';
  4.    $links = preg_match_all($regex, $string, $output);
  5.  
  6.    foreach ($output[0] as $link) {
  7.        $url = strtolower($link);
  8.  
  9.        // Comprobar si empieza por http/https
  10.        if (strpos($url, 'http://') !== 0 && strpos($url, 'https://') !== 0) {
  11.            $url = 'http://' . $url;
  12.        }
  13.  
  14.        // Creamos un enlace valido manteniendo el formato original.
  15.        $anchor = sprintf('<a href="%s" target="_blank">%s</a>', $url, $link);
  16.        $string = str_replace($link, $anchor, $string);
  17.    }
  18.  
  19.    return $string;
  20. }


Donde un texto como este:

Puedes leer más sobre tortugas en "https://es.wikipedia.org/wiki/Testudines" y para todo lo demás google.com

Se convierte en esto:

Código
  1. Puedes leer más sobre tortugas en "<a href="https://es.wikipedia.org/wiki/testudines" target="_blank">https://es.wikipedia.org/wiki/Testudines</a>" y para todo lo demás <a href="http://google.com" target="_blank">google.com</a>


Ahora, en javascript hay un problema enorme, hasta ES6 javascript no tenía soporte para unicode en regex. Ende, no podemos utilizar el importantísimo flag /u (unicode) y por lo tanto, no podemos targetear dominios como ñoño.com sin añadir parafernalias como \0-\t\x0B\f\x0E-\u2027\u202A-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF]) . Hay 3 opciones, o nos saltamos los dominios unicode... no muy recomendable, o solo soportamos navegadores con ES6 (tampoco muy recomendable) o toca transpilar ( https://github.com/mathiasbynens/regexpu )  y con suerte sacar algo funcional…

Yo este paso me lo salto y voy a quitarme unicode de por medio, más que nada para ahorrar tiempo:

Código
  1. function makeLinks(string) {
  2.    var regex = /((http|https)\:\/\/)?[\w0-9\-\.]{1,255}\.[\w]{2,63}(\/[\w_\.\/\#]*)?/ig;
  3.    var output = string.match(regex);
  4.  
  5.    if (!output || output.length < 1) {
  6.        return string;
  7.    }
  8.  
  9.    for (var i = 0, t = output.length; i < t; ++i) {
  10.        var link = output[i];
  11.        var url  = link.toLowerCase();
  12.  
  13.        if (!/^https?:\/\//.test(url)) {
  14.            url = 'http://' + url;
  15.        }
  16.  
  17.        var anchor = '<a href="' + url + '" target="_blank">' + link + '</a>';
  18.        string = string.replace(link, anchor);
  19.    }
  20.  
  21.    return string;
  22. }

Con ES6 quedaría un poco más bonito:

Código
  1. function makeLinks(string) {
  2.    const regex = /((http|https)\:\/\/)?[\w0-9\-\.]{1,255}\.[\w]{2,63}(\/[\w_\.\/\#]*)?/ig;
  3.    const output = string.match(regex);
  4.  
  5.    if (!output || output.length < 1) {
  6.        return string;
  7.    }
  8.  
  9.    output.forEach((link) => {
  10.        let url = link.toLowerCase();
  11.            url = (!/^https?:\/\//.test(url) ? `http://${url}` : url);
  12.  
  13.        string = string.replace(link, `<a href="${url}" target="_blank">${link}</a>`);
  14.    });
  15.  
  16.    return string;
  17. }


Código
  1. console.log(makeLinks('Puedes leer más sobre tortugas en "https://es.wikipedia.org/wiki/Testudines" y para todo lo demás google.com'));


Y todo esto, te lo puedes ahorrar con:

Código
  1. <script src="linkify.min.js"></script>
  2. <script src="linkify-html.min.js"></script>
  3. <script>
  4.    console.log(linkifyHtml('Puedes leer más sobre tortugas en "https://es.wikipedia.org/wiki/Testudines" y para todo lo demás google.com', {
  5.        className: '',
  6.        defaultProtocol: 'http'
  7.    }));
  8. </script>

... pero no quieres usar librerías de terceros xD


Saludos

jaja me encanta como me decis al final "pero no quieres usar librerias de terceros" jaja... no, el tema es que las liberias de terceros (no se si todas) te ofrecen más cosas de las que quizás en mi proyecto necesito... yo se que jquery es una libreria de terceros que ofrece más cosas por ahí que yo vaya a necesitar pero es diferente... veo que es muy engorroso esto de detectar una url plana y pasarla a html y no me va a quedar de otra que usar linkify xD pero no porque no use... uso si no hay más remedio.. GRACIAS! xD
Páginas: 1 2 3 4 5 6 7 8 9 10 11 [12] 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 ... 66
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines