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ú

Temas - Leguim

#46
Hola,

bueno tengo para mostrarles hoy, dos funciones que hacen llamadas a código del servidor por medio de AJAX.

El problema que tengo es que si estas funciones ajax se ejecutan de manera "Secuencial" es decir, primero una y después la otra no va a haber ningún problema. Pero si las ejecuto al mismo momento se me bugean por lo menos la primer llamada de la siguiente manera.

Cuando digo que se bugean me refiero a que cuando la intento volver a llamar a dicha función esta no se ejecuta (no pasa absolutamente nada)

Para el ejemplo que les tengo, Un sistema donde tengo dos cajas donde en principio son de color gris pero al ejecutar "Ajax_Colour_A();" o "Ajax_Colour_B();" por medio de la consola del navegador va a modificar el color de las cajas. Si es Ajax_Colour_A modificará con color ROJO la primer caja pero si es Ajax_Colour_B modificará con color azul la segunda caja.

Además, abajo de todo habrá un mensaje en texto plano, de "Ejecutando..." cuando se este ejecutando el archivo php que este mensaje ayudará a que vean que no se ejecuta el archivo cuando se bugea su función correspondiente.

- test.php (tendrá las dos cajas y las definiciones de las funciones necesarias)
- ajax_colour_a.php (este archivo php será el que tendrá un script para modificar el color de la caja A con color ROJO)
- ajax_colour_b.php (este archivo php será el que tendrá un script para modificar el color de la caja B con color AZUL)

Aclaración: No hace falta verle el sentido al código, es solamente un ejemplo lo más básico posible para poder entender el problema.

test.php
Código (html) [Seleccionar]

<div id="box_a" style="background: #f2f2f2; border: 1px solid #e6e6e6; height: 300px; width: 300px; padding: 10px;">
        <h2 style="text-align: center; margin-top: 70px;">AJAX #1</h2>
        <h6 style="text-align: center; margin-top: 10px;">Ajax_Colour_A();</h6>
</div>
<div id="box_b" style="background: #f2f2f2; border: 1px solid #e6e6e6; height: 300px; padding: 10px;">
        <h2 style="text-align: center; margin-top: 70px;">AJAX #2</h2>
        <h6 style="text-align: center; margin-top: 10px;">Ajax_Colour_B();</h6>
</div>

<script type="text/javascript">
    var ajax_file_used = null;
   var ajax_files = ['ajax_colour_a.php', 'ajax_colour_b.php'];
   var ajax_enviando = [];
   var ajax_solicitud = [];

   for(var i = 0; i < ajax_files.length; i++)
   {
       ajax_enviando[ajax_files[i]] = false;
       ajax_solicitud[ajax_files[i]] = null;
   }

   function Ajax_Colour_A()
   {
       ajax_file_used = 'ajax_colour_a.php';

       if(ajax_enviando[ajax_file_used] == false)
       {
           ajax_enviando[ajax_file_used] = true;

           ajax_solicitud[ajax_file_used] = $.ajax({
               url: (ROOT_URL)+'/ajax/'+(ajax_file_used),
               type: 'POST',
               dataType: 'html',

               success: function()
               {
                   ajax_enviando[ajax_file_used] = false;
               }
           })

           .done(function(results)
           {
               $('body').append(results);
           })

           .fail(function()
           {
               ajax_enviando[ajax_file_used] = false;
           })
       }
   }

   function Ajax_Colour_B()
   {
       ajax_file_used = 'ajax_colour_b.php';

       if(ajax_enviando[ajax_file_used] == false)
       {
           ajax_enviando[ajax_file_used] = true;

           ajax_solicitud[ajax_file_used] = $.ajax({
               url: (ROOT_URL)+'/ajax/'+(ajax_file_used),
               type: 'POST',
               dataType: 'html',

               success: function()
               {
                   ajax_enviando[ajax_file_used] = false;
               }
           })

           .done(function(results)
           {
               $('body').append(results);
           })

           .fail(function()
           {
               ajax_enviando[ajax_file_used] = false;
           })
       }
   }
</script>



ajax/ajax_colour_a.php
Código (php) [Seleccionar]

<!-- ajax_colour_a.php -->
<?php
echo "<br>ejecutando...<br>";

?>

<script type="text/javascript">
document.getElementById('box_a').style.background = 'red';
</script>


ajax/ajax_colour_b.php
Código (php) [Seleccionar]

<!-- ajax_colour_b.php -->
<?php
echo "<br>ejecutando...<br>";

?>

<script type="text/javascript">
document.getElementById('box_b').style.background = 'blue';
</script>


La verdad no puedo entender que es lo que está mal con el código porque todo debería de funcionar de 10, estuve todo el día de el porque de esto pero no se entiende.
#47
Buenas noches,

me refiero a tener los siguientes campos en una base de datos:

- number_int // representa un numero entero
- number_dec // representa un numero decimal (solo la parte después de la coma)

Ejemplos:

- number_int // por ejemplo: 9
- number_dec // por ejemplo: 34 donde 34 es "x, 34"

Mi pregunta es que en una consulta SQL yo pueda juntar tanto el number_int como el number_dec y formen un valor, en este caso el valor formado sería el 9.34 o 9,34

Creo que con eso ya me pude dar a entender correctamente, pero por las dudas agrego otro ejemplo:

Código (php) [Seleccionar]

"SELECT * FROM tabla WHERE Juntar(number_int y number_dec) >= x and Juntar(number_int y number_dec) <= y"


Gracias.

#48
Hola,

uso las consultas "prepare" que tengo entendido ayudan a prevenir las inyecciones SQL, ahora bien también escuche que no es recomendable por este tema concatenar datos a una consulta.

No estoy del todo seguro si en este caso existe una vulnerabilidad de inyección:

Código (php) [Seleccionar]

class x
{
    static function Consulta($x, $y)
    {
           $con = Connection(username, password);
           $query = $con->prepare('SELECT x_campo, y_campo FROM x_tabla WHERE '.($x).' = '.($y));
           $query->execute();
   $results = $query->fetchAll();

   return $results;
    }
}


aclarar que tanto los parametros $x, como $y son constantes y no son datos que el usuario envía, un ejemplo:

Código (php) [Seleccionar]
$datos = x::Consulta('id_user', 61); // son constantes, no datos que un usuario ingresa
#49
Hola,

pasa que hay información como lo puede ser un nombre, apellido que un administrador le puede modificar a un usuario... pero hay otra información como el correo electrónico (acceden a la plataforma con el email + password) que también puede ser modificada por un administrador, en un principio lo hice por si a un usuario le ocurría algún problema y por cosas de la vida necesitara que se le modifique el correo electrónico...

"métodos de seguridad"
- Cuando un admin modifica un correo electrónico queda registrado en un log especial que solamente puede ser visualizado por todo el staff. Donde se dice a que usuario se le modifico el email, cual fue el anterior email, cual es el nuevo, la fecha, la ip, y que admin fue el que modificó... además para que se concrete el cambio hay que esperar 48 horas, y además se le avisa al usuario por medio de un mail explicandole que un admin inició una solicitud para modificar el email del usuario, tamb en dicho email se le aclara que el usuario puede cancelar este cambio antes de esas 48 horas...

Pero igualmente con todo esto todavía no me convence de que tan legal sea esto, primero que nada porque como son "credenciales de acceso" es decir, uno se logea con el email + la contraseña (ya la contraseña sí no se puede editar, solamente el mismo usuario)
podría pasar que las credenciales de acceso fueran un "nombre de usuario" + "password", y tendría la misma pregunta de que tan legal sea que un admin pueda modificar el nombre de usuario por tratarse de una credencial de acceso.

Creo que me explique bien...
#50
Hola!

Varias veces me pasó que cuando modifico una parte de mi código de javascript o algún estilo, para que sea aplicado en la aplicación web es necesario borrar la cache con el tradicional (CTRL+F5) para que se vean los cambios. Mi pregunta viene siendo, entonces como le hago para que cuando yo agregue una nueva versión, imaginemos que mi aplicación web esta en fase de producción (ya la están usando las personas) entonces yo al modificar un script para que estas personas puedan ver los cambios van a tener que borrar la cache, pero no todo el mundo sabe lo de CTRL+F5 y nunca vi a una aplicación notificar que como hay una nueva versión hay que tocar CTRL+F5 para que se vean los cambios entonces como hacen para poder implementar la versión/cambios y ya estén a la vista sin tener que reiniciar la caché?
#51
Desarrollo Web / Lógica "Cambiar contraseña"
19 Noviembre 2020, 17:43 PM
Hola!

Quería saber cómo debería funcionar un algoritmo para que un usuario pueda modificar la contraseña...

La forma más segura posible (aunque creo que sería más simple de lo esperado)

Lo que tengo en mente es:

1. Input para pedir contraseña nueva
2. Input para pedir que repita la contraseña nueva
3. Input para pedir contraseña actual para poder validar la autenticidad del usuario que cambiara su propia clave

¿Sería todo, no?
#52
Desarrollo Web / [Pregunta]: ¿mb_explode?
9 Noviembre 2020, 04:58 AM
Hola,

bueno estaba por usar explode para delimitar una cadena a partir de una coma... algo como las etiquetas que pones..

Código (php) [Seleccionar]

$string = "Esta, es, mi, cadena";
$array_string = explode(',', $string);
$array_string; // es un arreglo con 4 celdas
/*
[0] => 'Esta',
[1] => 'es',
[2] => 'mi',
[3] => 'cadena'
*/


Por lo que veo no hay una función mb_explode para multibytes, ¿entonces si PHP no tiene una de estas funciones no hay problema si uso explode no?
#53
No hay muchas vueltas, si alguien usa un dominio que yo quiero tendré que usar otro nombre. La excepción de este caso es que vi la página que está usando el dominio y es una autentica porong* un diseño asqueroso, todo así nomás, se bugea sola, un asco. Tengo entendido de que hay "personas" pongo entre parentesis porque son unos hijo de put**  :¬¬ que lo que hacen es comprar muchos dominios (los que tendrían potencial para ser usados) y después revenderlos más caros de lo que son.

¿No hay nada que hacer? Que es una aplicación berreta la que tienen usando ahí, que desperdicio  :xD
#54
Hola,

estaba viendo y parece que es innecesario usar $(document).ready... en un fichero php de ajax, es decir digamos que debo ejecutar un script en un fichero php que es llamado por medio de ajax, no sería necesario porque el DOM ya estaría cargado no?

Código (javascript) [Seleccionar]

function Llamar_AJAX(x)
{
  $.ajax({ // etc, etc
}


Código (php) [Seleccionar]

// fichero php de ajax

// [... codigos php]

?>
<script>
$(document).ready(function()
{
   alert('Hola');
});</script>
<?php


No sería necesario ese document .ready ya que la página ya estaría cargada en principio..

¿verdad?

No sé si tuviera .html en la llamada ajax deba usarlos ya que como que estaría agregando nuevos elementos al DOM entonces nose si jquery detectaria la carga de estos nuevos elementos o los ignoraría y la única carga que detecaría sería cuando se abre la página...
#55
Hola,

bueno quisiera poder convertir un arreglo que tengo definido en php a javascript, esto si ya sé como poder hacerlo pero quiero hacerlo de la siguiente manera:

Código (php) [Seleccionar]

$array = array('A', 'B', 'C', 'D'); // defino mi arreglo php


Código (javascript) [Seleccionar]

var array = <?php echo json_encode($array); ?>; // de esta manera voy a estar convirtiendo el arreglo php a un arreglo en javascript


Ahora lo que devolverá ese arreglo será..
Código (javascript) [Seleccionar]

["A", "B", "C", "D"]


Y yo quiero que no lo haga de esa manera, quiero que lo convierta de esta forma...
Código (javascript) [Seleccionar]

['A', 'B', 'C', 'D']


Es posible que no lo hayan notado pero la diferencia está en el uso de las comillas simples en lugar de las comillas dobles que me vienen por defecto, ¿Cómo podría hacer esto? ¿y todavía mejor, se puede hacer algo?
#56
Hola,

tengo problemas al eliminar todos los datos/vaciar un formdata ya que solamente se elimina el primer dato y yo quiero que se eliminen todos los datos que contengan dicha variable:

Código (javascript) [Seleccionar]

var formdata_test = new FormData();
formdata_test.append('a', 'letra a');
formdata_test.append('b', 'letra b');

formdata_test.get('a');
formdata_test.get('b');

        for(var key of formdata_test.keys())
{
formdata_test.delete(key);
}

formdata_test.get('a');
formdata_test.get('b');


Si ustedes prueban este código en la consola de su navegador van a ver que el dato "b" con el valor "letra b" sigue vigente pero no el primer dato que sería "a" con el valor "letra a". Y yo quiero que se eliminen todos los datos, no solamente el primero.

Gracias.
#57
En un tema anterior se había resuelto de un método diferente, pero quería ver si se podía hacer de esta manera que sería una manera más corta para mí.

Recibo un archivo a partir de un FormData, este archivo es una imagen.

(no sé como podría redimensionar la imagen, para ahorrarle la tarea al mod)


Código (javascript) [Seleccionar]

formdata.get('photo_1'); // devolverá el archivo/imagen


Ahora yo quiero que ese dato que tengo con JS mandarlo por medio de AJAX pero por medio de un parametro, es decir.

Código (javascript) [Seleccionar]

function Enviar_Imagen(image)
{
                      $.ajax({
url: 'archivo.php',
type: 'POST',
dataType: 'html',
data: {image},

success: function()
{
// proceso terminado
}
})

.done(function(results)
{
$('body').append(results);
})
}


Su aplicación sería...

Código (javascript) [Seleccionar]

Enviar_Imagen(formdata.get('photo_1')); // si existe el dato enviará lo anterior que mostré por consola, pero si no existe enviará NULL


Tengo un problema/error, que dice algo de ilegal blob...

¿Alguna ayuda?

Gracias.
#58
Tengo un sistema donde un usuario por medio de un formulario creará un nuevo registro en la base de datos, pero al crearlo no será visible en la aplicación dicho registro sino que primero pasará por la aprobación de un administrador. Entonces, dicho registro tendrá una fecha (marca de tiempo unix) que será la que fue tomada en el momento en el que el usuario envió el formulario.

Los registros de los usuarios se mostrarán de forma DESCENDIENTE, es decir primero se mostrarán los más recientes.

Teniendo esto en cuenta, tengo el dilema de si mantengo que la fecha del registro sea la del momento en que el usuario envió el formulario o el otro camino sería actualizar ese unix al unix que se tomará cuando se apruebe dicho registro para que sea visible en la plataforma.




Mod: Resolución máxima de imágenes: 800x600
#59
Hola,

tengo...

Código (javascript) [Seleccionar]

$('#div_cualquiera').html('<p>este parrafo</p><script>alert('aquel parrafo');</script>');


No busquen sentido al código que puse de ejemplo, el problema que da error cuando quiero hacer esto al insertar los tags de <script></script> que puedo hacer para solucionar este problema?

Gracias.
#60
Bueno, puede parecer una pregunta media estúpida pero igual me parece interesante preguntarlo.



Básicamente tengo una variable ($number) que estará inicializada con el valor 1, entonces tengo un ciclo do while donde la primera iteración va a incrementar dicha variable a +1 entonces para las siguientes iteraciones se va a preguntar si el numero es diferente de 8, si ese es el caso entonces va a ir incrementando hasta llegar a dicho valor.

Ahora mi pregunta es, ese ciclo que se va repitiendo (en este caso unas 7 veces) recién cuando finalice va a ejecutar la siguiente instrucción de enviar un mensaje por pantalla?

Es decir a mi me parece que esto es síncrono y se va a mostrar el mensaje cuando terminen todas las iteraciones pero me parecía que era bueno preguntarlo.

Gracias.
#61
Hola!

Bueno hace meses que tengo el siguiente "problema" y es que cuando trato de modificar el estilo de el cursor con javascript no lo hace de una forma muy "óptimo" y esto es un problema que todos tienen (probé el código en varias páginas y el resultado es el mismo de asqueroso)

Código (javascript) [Seleccionar]

document.body.style.cursor = 'progress';


si escribieran esto en una consola del navegador van a notar que para que se realice el cambio, ustedes van a tener que mover un poco el cursor. Sino, no lo hace y la idea es que se cambie sin tener que estar moviendo aunque sea un milímetro el cursor.

¿Qué puedo hacer? ¿Hay solución?
#62
Bueno, siempre estuve usando...

Código (javascript) [Seleccionar]

grecaptcha.getResponse(); // obtengo la respuesta de un recaptcha con JS


pero esta función permite un parametro que es el ID del recaptcha, como norma general parece que el poner la función sin parametros es lo mismo que ponerle un cero. Es decir:

Código (javascript) [Seleccionar]

grecaptcha.getResponse(0); // obtengo la respuesta de un recaptcha con JS


Entonces imaginemos que tenemos dos formularios en la misma página y cada uno tiene un recaptcha (generalmente no trabajo con dos formularios y en la misma página y todavía peor no me gusta tener dos recaptcha en la misma página, quedaría muy cargada... pero ahora van a ver cuál es mi problema)

Entonces suponiendo que tendría dos recaptchas en la misma página debería...
Código (javascript) [Seleccionar]

grecaptcha.getResponse(0); // obtengo la respuesta de un recaptcha A con JS
grecaptcha.getResponse(1); // obtengo la respuesta de un recaptcha B con JS


Okay, entonces cada vez que se inserta un recaptcha a la página por lo que pude ver, se le inserta un id único que se va incrementando como si fuera una id de una base de datos AUTO_INCREMENT.

Mi problema es el siguiente, como dije no me gusta poner dos recaptchas en la misma página (no lo hago, directamente) pero existen excepciones donde lo que hago es insertar en un "popup o ventana modal" un formulario y en este hay un recaptcha "temporal" donde cuando el usuario cierre/oculte dicho popup este recaptcha va a ser estruido, es decir agarro dicho popup y con jquery le pongo ventana_popup.html(''); de esta manera saco todo el formulario y todo el recaptcha.

Ahora cuando el usuario vuelva a darle clic a dicho botón (que no lo mencioné, lo que se hace es una petición AJAX donde se va a insertar todo el código HTML del formulario y el mismo recaptcha entonces lo pega todo en dicho popup)

Entonces cada vez que el usuario vaya dandole click al boton que muestra el popup, click para ocultar y otra vez el mismo proceso, lo que va a estar pasando con ese recaptcha es que siempre va a tener una ID diferente, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 y así... como dije funciona como un ID de una base de datos que se va auto incrementando.

Entonces yo necesito saber cual es el id más grande que hay actualmente, en ese caso sería 13 pero es que tampoco sé si puedo obtener si quiera una lista con todas las IDS hasta ahora.
Si pudiera hacer eso se resolvería mi problema (es un poco complicado hacerme entender, es un problema un poco jodido)

Pero la pregunta es esa ¿Como puedo obtener una lista con los IDS que fue generando grecaptcha hasta ahora? o ¿Como puedo obtener el último ID que fue generado por grecaptcha?

Estuve buscando funciones con,

grecaptcha.etc pero no encuentro nada que diga id, ¿alguien que me haya entendido  :xD?
#63
Hola.

primero que nada no sé si este tema es indicado en esta sección del foro, la verdad no estoy muy seguro.
Mi pregunta es saber si se puede tabular de una forma más rápida un código, (uso sublime text 3) y para tabular (de izquierda a derecha) lo que hago es seleccionar todo el fragmento de código que necesito re ordenar y luego mientras esta eso marcado es presionar TAB y se va a ir tabulando todo el código sin necesidad de ir línea por línea que eso es recontra pesado y cansa a cualquiera, más si son cientos de líneas de códigos. Pero lo que yo quería saber es hacer dicha TAB automática pero al revés, es decir (de derecha a izquierda) digamos volver una tabulación anterior.

Espero haberme dado a entender, gracias.
#64
Hola,

hipotéticamente si un día  el almacenamiento de mi servidor se desborda (muchísimos registros en la base de datos, archivos subidos, etcétera) ¿Qué mostrará PHP? ¿Qué hará cuándo un usuario intenté subir un archivo nuevo o registrar un nuevo dato a la bd.

¿Debería validarlo de alguna manera antes de hacer cualquiera de estas acciones o PHP ya mostrará un mensaje por default o algo, "Ya no hay más espacio disponible" (por ejemplo)?
#65
Desarrollo Web / Pregunta rápida
24 Septiembre 2020, 04:14 AM
Hola,

como puedo obtener la cadena o lo que este dentro de src="x" en este caso sería 'x' el dato...
a partir de un iframe.

Código (html) [Seleccionar]

<iframe src="x"></iframe> // el dato que la función debería devolver sería 'x'


No importa si es JS o PHP, es para automatizar algo que estoy haciendo y me toma más tiempo tener que estar copiando esa parte de forma manual y después pegarla donde necesito. En cambio de esta manera se me aligera la carga.

Grarcias.
#66
Parece ridículo como una boludes tan simple me está dando tantos problemas tontos...
ando hace rato intentando..

Código (javascript) [Seleccionar]

$(document).ready(function()
{
      var sidebar_offset_top = $('.sidebar_left').offset().top;
      alert(sidebar_offset_top); // devuelve cero pero cuando envío esto por consola me devuelve 305, es decir es ridículo que me devuelva cero.
});
#67
Hola,

estoy mejorando mi sistema de box desplegables y estoy tratando de que si el box sobrepasa el final de la ventana este se ponga al otro lado.

Es decir,



No estoy buscando (por ahora :3) que me digan como invertirlo, solamente los valores que necesitaré... estuve probando un poco intentando obtener la altura del box desplegable y la altura de la ventana con jQuery y preguntar si la altura del box desplegable es mayor o igual a la altura de la ventana con jquery pero se me estropea si hay contenido arriba... ¿alguna idea? ando un poco bloqueado..

Gracias.
#68
Hola,

¿Como podría desactivar el click derecho cuando se le está haciendo a una imagen? Es que quiero que a los usuarios se les resulte más difícil descargar imágenes desde mi aplicación web. (Entiendo que evitar al 100% es imposible, pero de todas formas para limitar al usuario común MESSIrve  :xD)

Estuve viendo varios temas pero siempre es lo mismo, te terminan diciendo como desactivar el click derecho a nivel general cuando yo solamente quiero desactivarlo cuando se le hace click derecho a una imágen.

¿Alguna idea?

Gracias.
#69
Estoy teniendo problemas, quiero validar del lado del cliente si un valor ingresado es un numero y si ese numero es un entero pero está este problema.

digamos que el dato es '27' o "27",
las función que uso dirá que esto no es un entero, probé y la función que uso para saber si es un numero si funciona pero para saber si es un entero no funciona.

Código (javascript) [Seleccionar]

var value = '27';

if(!is_NaN(value)) // si es un numero
{
     if(Number.isInteger(value)) // si es un entero (acá me vienen los problemas porque me devuelve false cuando todos sabemos que 27 si es un entero.
     {
              // [...]
     }
}


La solución que se me ocurre es ver si existe una función que convierta el "27" a 27 (int) con javascript.
#70
Desarrollo Web / [Pregunta]: $.getscript lo opuesto
12 Septiembre 2020, 00:29 AM
Hola,

$.getScript('x.js'); // load script

Quería saber si existe algo opuesto a getscript, es decir con esto cargo un archivo js pero quiero tamb. quitarlo/eliminarlo/ "descargarlo" ¿se podrá?
#71
Hola,
estoy haciendo el sistema que se usa generalmente que lo que dice es si una contraseña es segura al momento de estar escribiendo.

Estaba haciendo la lógica, más precisamente la parte de la distribución de los porcentajes de seguridad:

Código (javascript) [Seleccionar]

                Tiene letras: +10%
                Tiene números: +5%
                Tiene símbolos: +10%
                Tiene mayúsculas y minúsculas: +35%
                Tiene entre 5 y 10 caracteres: +5%
                Tiene entre 11 y 40 caracteres: +35%


¿Qué opinan? ¿Como distribuirían los porcentajes ustedes?
#72
Hola,

estoy teniendo problemas con un código, defino una variable con una cadena ("texto") antes de una llamada ajax, pero después cuando quiero usar esa variable de javascript en el fichero php de ajax no me está dejando y me dice que no está definida.

Código (php) [Seleccionar]

// page.php
<?php
if($x >= $y)
{
         
?>

        <script>
        $(document).ready(function()
        {
              var my_variable = 'texto'; // defino la variable
              Ejecuta_Ajax();
        });
        </script>
        <?php
}
?>



Código (php) [Seleccionar]

// voy a saltarme la llamada de ajax en javascript/jquery ($.ajax) y paso directamente al fichero php que será llamado en dicha solicitud
// fichero_ajax.php
<?php
//
          
?>

         <script>
         $(document).ready(function()
         {
                   console.log(my_variable); // va a decirme que no está definida dicha variable.
         });
         </script>
         <?php
//
?>



Entiendo que puedo enviar "my_variable" como parámetro en la función "Ejecuta_Ajax(my_variable);" y recibirla en el fichero ya como un dato PHP pero para este caso no aplica para lo que estoy intentando.

Simplemente saber si existe alguna manera o no de poder definir esa variable de una forma más global porque no tengo muy en claro que es lo que está pasando.

Gracias.
#73
Estoy usando unbind de jQuery para eliminar eventos, por ejemplo cuando se hace scroll pero quisiera ver si existe una forma de poder diferenciar estos eventos para luego desactivarlos ya que si tengo dos eventos scroll que hacen cosas totalmente diferente no quiero que con el unbind me desactive las dos solamente una... será con el uso de una variable? ¿como podría?
#74
Estoy tratando de hacer un sidebar "pegajoso/sticky" pero la siguiente formula como que no me funciona del todo bien, en un principio si funciona bien pero se estropea si al documento se le agregan nuevos elementos (append) es decir, la altura de la página aumenta entonces se me estropea...

Código (javascript) [Seleccionar]

if($(this).scrollTop() > $('.sidebar_nav_left').offset().top - $(window).scrollTop())
{
         // le agrego al sidebar un estilo de position "fixed" para hacer el efecto de sticky
         // y modifico el marginTop del sidebar a "-45px"
}
else
{
        // le agrego al sidebar un estilo de position "relative" para hacer el efecto de que se despegó ya que llegó nuevamente arriba de todo.
}


Pero como dije esta formula tiene ese problema, y no soy muy bueno para estas cosas...
#75
Tengo un input y quiero saber cuando la tecla que se presiona es un "caracter de escritura", es decir...

una "a", "A", "z", "5", "7", "(tecla de borrar)" un punto "." una coma "," comillas... " etcétera...
todo lo que se pueda escribir...

quedaría exceptuado la tecla Bloq Mayús ya que no escribe algo a no ser que luego presiona una letra... lo mismo la tecla CTRL no escribe nada si la presiono... no se si me estoy dando a entender...

Gracias!

EDIT: el input es un buscador para que se den una idea..
#76
Quiero que se pueda..

Código (javascript) [Seleccionar]

console.log(arreglo['texto']); // que imprima el valor 7


traté de definir así..

Código (javascript) [Seleccionar]

var arreglo = ['texto' => 7];


pero no funciona, si me funciona si hago así..

Código (javascirpt) [Seleccionar]

var arreglo = [];
arreglo['texto'] = 7;


pero quiero hacerlo de una manera más ordenada como la que mencioné más arriba de todo aunque no se si es posible...
#77
Hola,

tengo un buscador (input) que al momento de escribir (keyup) va a realizar la petición AJAX y este va a devolver con similitudes respecto al texto que ingreso.

El "problema" si se quiere decir es que si un usuario escribe muy rápido "fjsakdnfkasndfjkasd" no digo que funcione mal, pero como que creo que se puede mejorar.. digo me da la sensación que se estarían haciendo peticiones innecesarias...

por eso se me ocurrió hacer lo siguiente...

Este "parche" consistirá en que si un usuario deja de escribir durante 2 segundos entonces se va a realizar la petición AJAX. Pero en el caso de que vuelva a escribir durante estos 2 segundos (es decir interrumpa el temporizador) voy hacer que reinicie nuevamente a 2 segundos.

También pensaba en "disfrazar" y hacer creer al usuario que se está buscando dicho texto mientras pasan los dos segundos para que no me quede mal estéticamente.

¿Opiniones?
#78
Adjunto el código que encontré en otro foro..

Código (php) [Seleccionar]

if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
   $ip = $_SERVER['HTTP_CLIENT_IP'];
} elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
   $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
} else {
   $ip = $_SERVER['REMOTE_ADDR'];
}


EDIT: me sale ::1
y en la otra pc me sale 192.168.1.102 pero no me sale la dirección pública que me da en la pagina de "cualesmiip"...

'Por qué el mio no se ve así?
#79
Buenas noches,

¿Está mal si dejo que todos puedan ver la dirección IP Pública de un usuario? ¿Existe algún problema?
#80
Estoy teniendo un problema y es que se dice que la formula es...

Código (php) [Seleccionar]

$bytes / 1024 => $kilobytes
/code]

pero cuando uso el conversor de google ellos dicen que la formula es...
[code=php]
$bytes / 1000 => $kilobytes


¿Entonces en que quedamos?[/code]
#81
Estoy teniendo problemas para poder obtener el tamaño de una tabla determinada, según el post que pude ver en otra página web esto me devolvería el tamaño en bytes...

Código (php) [Seleccionar]

'SELECT (data_length + index_length) AS tamano_tabla FROM information_schema.TABLES WHERE table_schema = "nombre_bd" AND table_name = "nombre_table"'


Pero no devuelve valores reales, si quiero ver el tamaño de una tabla x que tiene muchos registros me dice... "32000" obviamente ustedes no van a tener idea si está bien o no porque no saben la cantidad de registros que hay en la tabla y cuantos campos tiene pero me doy cuenta que marcha mal porque tengo otra tabla que prácticamente está casi vacía y digo casi porque solamente tiene 2 registros en cambio la otra tabla tiene muchos y esto me dice que la tabla que tiene dos registros es "más pesada" que la que tiene muchos...

Gracias!
#82
Hola,

estuve viendo la documentación de PHP de las funciones, is_int($x) y is_float($x)...

Código (php) [Seleccionar]

is_int($x) // devuelve true si un número es entero
is_float($x) // devuelve true si un número es flotante


De entrada se podría decir que tengo un inconveniente con estas dos funciones que tiene PHP, vendría siendo que si...

Código (php) [Seleccionar]

$number = '34.7';

is_float($number) // devolverá false ya que está en una cadena, lo mismo me pasaría con is_int pero cuando uso "is_numeric" que sería simplemente para ver si un valor es un número no tiene problema si es un número en una cadena o un número "normal".. pero acá hace diferencia...


Ese vendría siendo el primer problema que tengo,

el segundo ya vendría siendo una pregunta para poder "redondear" un número flotante...

EDIT:
Código (php) [Seleccionar]

// Había una función "round" que sirve para eso...
echo round(3.4);         // 3
#83
Buenos días,

quería saber como podría obtener el tamaño de archivos de una aplicación... quiero decir... no me refiero a los ficheros... index, registro, password_lost, no a  las páginas sino que a los archivos que están guardados por ejemplo en la base de datos, en imágenes que se subieron y que están alojadas en una carpeta (o en un servidor aparte para alojarlas)...

Algo así...

(uso php)

Código (php) [Seleccionar]

// digamos que hay 446 usuarios...
"Usuarios registrados: 446"
"Tamaño utilizado: 144kb"
"Tamaño disponible: 4gb"


Código (php) [Seleccionar]

// digamos que hay 26 imágenes subidas...
"Imágenes subidas: 26"
"Tamaño utilizado: 4,18mb"
"Tamaño disponible: 4gb"


No se si me estoy dando a entender, espero que sí.

Gracias!
#84
Buenos días,

tenía pensado hacer un sistema que guarde un log de acceso para cada usuario y un log de acciones para cada miembro del staff.

Explico,

Log de acceso, el sistema sería guardar la IP del usuario que inicia sesión, la hora, y lógicamente el id del usuario. Este registro nuevo se guardaría en una tabla (base de datos) donde irían todos los logs de acceso de usuarios.

Un usuario podría ver su log cuando lo deseé (solo él) y un administrador.

Log de acciones,

bueno sería algo similar pero esto iría registrando las acciones de un miembro del staff, si bloquea a un usuario, si lo advierte, si edita cierta información, etcétera... que quede todo guardado...


¿Qué les parece a simple vista? ¿En qué se podría mejorar? (aunque no haya nada de código mostrado me estoy refiriendo a la idea básica)
#85
Buenos días,

ando un poco bloqueado en cuanto a una lógica, estoy tratando de diseñar un algoritmo que me permita conocer el valor numérico más grande dentro de 4 variables que pueden ser nulas o tener el número pero no sé bien como poder arrancar.

Tenía pensado usar puras condicionales pero tampoco creo que sería recomendable ya que proyecto que tendré que usar muchas condicionales cuando con un ciclo for puede ser más llevadero, la verdad no estoy muy seguro..

Código (javascript) [Seleccionar]

var a = 3;
var b = 5;
var c = 6;
var d = 10;

// "El valor más grande es 10."


Pero también dicha variable puede ser nula por lo que no necesariamente es requerido que tenga un valor numérico.

Código (javascript) [Seleccionar]

var a = null;
var b = 5;
var c = 6;
var d = null;

// "El valor más grande es 6."


Mientras tanto voy a estar pensando una solución y si llego a dar con una la publico acá.
Gracias.
#86
Hola,

estoy cifrando mis contraseñas con el siguiente hash...

Código (php) [Seleccionar]

$2y$10$..Hx9kyFSNiMn/O7btOsKeYYjOwhSCtuzdohvqcDpEhcqCuTzm06u


Tengo entendido de varias fuentes que este tipo de hasheo es uno de los más seguro que existe actualmente... mi pregunta es si en algun momento muestro un hasheo en la página donde cualquier usuario pueda ver el hash existe algun riesgo real?

debo aclarar que no voy a estar mostrando el hasheo de una contraseña de algún usuario, eso nunca... pero me refiero a que digamos que hasheo la palabra "hola" => y si yo muestro el hasheo en la página existe alguna "vulnerabilidad" a simple vista nose si representa una vulnerabilidad real.
#87
Hola,

quería saber si era no se si buena práctica porque no creo que sea muy común, pero veo que puede resultar más fácil y la verdad no veo mucha diferencia... Tampoco quiero que por hacer algo fácil el "sistema" quede horrendo...

como en el post anterior, había dicho que cuando una cadena tiene "hola ' mi nombre es..." esa comilla simple puede dar problemas, y también al reves si fuera unas comillas dobles...

¿Habrá algún problema si decido transformar todo lo que se reciba de esta manera?

Código (php) [Seleccionar]

$x = str_replace("'", "'"); // cambió ' por '
$x = str_replace('"', '"'); // cambió " por "


No veo mucha diferencia hasta en estilo puede quedar un poquito mejor (creo)

¿Qué opinan?

EDIT: Me fijé que habría un problema si el usuario registra una contraseña como por ejemplo...

micontraseña'123

entonces su contraseña sería

micontraseña'123

pero voy a prohibir las contraseñas con comillas simples y dobles y ya...
#88
Hola,

tengo la siguiente cadena..
Código (php) [Seleccionar]

$string = "ves aquella esquina? ' tu madre y tu hermana ahí trabajan!"; // la cadena podemos ver que tiene una comilla simple '


va a ver problemas cuando quiera hacer esto con jQuery
Código (javascript) [Seleccionar]

$(selector).html('<p><?php echo($string); ?></p>');


me quedará en el html...
Código (javascript) [Seleccionar]

$(selector).html('<p>ves aquella esquina? ' tu madre y tu hermana ahí trabajan!</p>');


¿Se dieron cuenta del error? Comprendo que hay que escapar esto, pero no se de que manera puedo lograrlo. Tengo un nudo en la cabeza ya, probé un par de cositas pero no me funcionaron.
#89
Hola,

estoy intentando hacer una función con javascript que agegue/cree un elemento <span></span> en la parte donde  se uso la función... es decir...

Código (javascript) [Seleccionar]

function Agregar_Span()
{
      // [...]
}


Código (html) [Seleccionar]

<p><script>Agregar_Span();</script></p>


Me va a quedar...

Código (html) [Seleccionar]

<p><span></span></p>


#90
Quisiera por medio de javascript sacarle el foco a cualquier input si lo tuviera...

Código (javascript) [Seleccionar]

if(¿El foco está dentro de un input?)
{
     [Eliminar/Sacar foco del input]
}