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 - #!drvy

#6701
La ley sopa "sera" aprobada. Pero no lo esta todavía.



Saludos
#6702
PHP / Re: Seguridad en ajax
4 Enero 2012, 13:50 PM
2 soluciones.

1. Con un .htaccess para restringir la ejecución de archivos .PHP o ciertos archivos.

Para restringir los archivos PHP (que no puedan ser ejecutados), debes crear un .htaccess en la carpeta donde están alojados y introducir lo siguiente:
Código (apache) [Seleccionar]
<FilesMatch "\.(php)$">
Order Allow,Deny
Deny from all
</FilesMatch>


Si lo que quieres es restringir un determinado archivo, haz el mismo procedimiento de antes, solo que introduciendo lo siguiente:
Código (apache) [Seleccionar]
<files nombre.php>
order allow,deny
deny from all
</files>


2. Usar un token.
Me explico, un token es un numero (normalmente cifrado en md5) aleatorio, que se suele guardar en una cookie o en sessiones.

Este "token" permite comprobar si se ha pasado antes por un procedimiento, o la función/archivo ha sido solicitado directamente.

El código que generaría el token puede ser este:

Código (php) [Seleccionar]

<?php
function generar_token(){
   @
session_start();
   
$token md5(mt_rand(11,99999));
   
$_SESSION['token']=$token;
   return 
$token
}


Puedes incluirlo o solicitarlo al principio de la pagina y luego llamarlo cada vez que necesites ejecutar una función para que lo compruebe.

El código para que lo compruebe seria este:

Código (php) [Seleccionar]

<?php
function comprobar_token($token){
    @
session_start();
    if(
$_SESSION['token']===$token){return true;}else{return false;}
}
?>



Si necesitas mas ayuda o explicación solo comenta   :)

Saludos
#6703
Tu y yo no nos hemos llevado muy bien desde un principio  :P Pero comparto tu opinión. La verdad es que no es lo mismo.. yo tuve una cuenta que registre allá en 2006 (RIP)  y desde siempre he seguido este foro con mucha atención (muchas veces trolleando, otras veces intentando ayudar xD)... pero esta claro que no es lo mismo que hace unos años. Pero bue, todo cambia, las personas cambian, los pinguinos cambian, gente que se va, otros que vienen.. la vida es así y no hay que culpar a nadie de ello.

Lo que si que no comparto es que la gente se vaya por unos cuantos memos.. pero es lo que hay. Cada uno es libre de hacer lo que le de la gana al fin y al cabo.

Suerte.


Saludos
#6704
18º Si no puedes dejar de hacerte gayolas, manda a las mujeres a tomar por **** y métete en un chat como el de Terra para pedir sexo por cam, es mucho mas h4x0r que salir con tias de verdad.



Saludos
#6705
Desarrollo Web / Re: Ayuda con un menú
4 Enero 2012, 07:27 AM
Hola, la verdad es que me rompí la cabeza hasta que me di cuenta del fallo tonto este  :xD
Esta mal hecho porque actúa ante un click general en el div en el que se aloja, en vez de en un área concreto.

Te dejo el JS con la solución y la lineas corregidas para que lo veas.
Código (javascript,13,15) [Seleccionar]

$(document).ready(function(){
/*expandir todos los bloques con la clase clsActivo y agregar la clase clsArriba a los
titulos de cada uno de esos bloques*/
$('.clsActivo').stop(true,true).slideToggle().parent().find('.clsSeccion').addClass('clsArriba');
/*buscamos el ultimo li, del ultimo ul y le agregamos la clase clsUltimo para redondear el
borde inferior*/
$('.clsContenedor').last('ul').find('li:last-child').addClass('clsUltimo');
/*agregamos la clase clsAbajo a todos los elementos del acordeon, que inicialmente
se muestren cerrados (sin la clase clsActivo)*/
$(".clsContenedor .clsSeccion ").not('[class$="clsArriba"]').addClass('clsAbajo');

/*evento que se dispara al hacer clic en cualquiera de los contenedores del acordeon*/
$('.clsContenedor span').click(function(){
/*mostramos u ocultamos la lista (ul) utilizando slideToggle*/
$(this).next().find('ul').stop(true,false).slideToggle('fast',function(){
//verificar la clase que tiene el titulo del contenedor
if($(this).parent().find('.clsSeccion').hasClass('clsAbajo')){
//eliminamos la clase clsAbajo y agregamos la clase clsArriba (para los iconos)
$(this).parent().find('.clsSeccion').removeClass('clsAbajo').addClass('clsArriba');
}else{
//eliminamos la clase clsArriba y agregamos la clase clsAbajo (para los iconos)
$(this).parent().find('.clsSeccion').removeClass('clsArriba').addClass('clsAbajo');
}
});
});

});


En vez de esperar a un click general del la clase .clsContenedor, este esperara a una click de un span que se aloje en un elemento que tenga esa clase. Así no actúa sobre todo el div, sino solo sobre el titulo.

La linea 15 he añadido el next(), para que seleccione el siguiente y así no se confunda consigo mismo xD.

También, te recomiendo que le añadas al CSS una linea con el siguiente contenido.

Código (css) [Seleccionar]
.clsContenedor ul li a {outline:none !important;}

La razón es, que al no cerrarse (que es lo que queremos), deja el focus sobre el link y queda un tanto feo.

Espero que te haya ayudado.

EDIT: Ahora si que me tengo que romper la cabeza por no leer a fondo el comentario de @lipman  :xD

Saludos
#6706
Dudas Generales / Re: Contratar Programador
3 Enero 2012, 04:46 AM
Hola, tendrías mejores resultados si especificaras.

Por ejemplo..

CitarTipo: escritorio / web / movil
Lenguaje: C++ , Java , PHP


Saludos
#6707
NO, aquí nadie (espero) te va a dar eso. La idea es aprender a hacerlo, no copiar/pegar y listo...



Saludos
#6708
PHP / Re: problemas con PHP
3 Enero 2012, 01:06 AM
Hola, me parece que te esta tirando errores pero no los ves.
Eso seguramente es porque PHP tiene configurado no mostrar los errores que ocurren y que solo los guarde en un log.

Comprueba aver en el php.ini, como esta tu linea de error_reporting y display_errors.

Si has instalado limpiamente apache y php, tu php.ini deberia estar en la carpeta /etc/php5/apache2/php.ini. Si no consulta el manual o directorio de instalacion de tu LAMP.

Las lineas respectivamente tendrían que ser así: (y no comentadas)

error_reporting = E~ALL
display_errors = On

Si no lo están, cámbialas y reinicia Apache.


Saludos
#6709
Si lo vas a hacer por dias, lo mejor seria utilizar PHP. Con la función date y unos cuantos IF's lo consigues perfectamente.


Consulta cualquier manual básico de PHP. Si tienes mas dudas solo pregunta.


Saludos
#6710
Veo que utilizas jquery así que no es muy difícil...

La idea es meter un intervalo de tiempo + una funcion para que cargue los datos.

Por ejemplo

Código (javascript) [Seleccionar]

function actualizarDatos(){
   $('#div_datos').load('index1.php');
}
setInterval("actualizarDatos()", 10000 );


Esto hará que cada 10 segundos (10000 mili segundos) se llame a la función actualizarDatos que a su vez cargara en un div con id "div_datos" el contenido de index1.php.


Saludos