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

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


  Mostrar Mensajes
Páginas: 1 [2] 3 4 5 6 7 8
11  Programación / Programación General / Re: Programar un programa teoricamente inteligente. en: 24 Enero 2011, 02:03 am
Bueno mira para eso necesitas un agente inteligente que puede ser tu primera opcion, o la segunda con una red Neuronal que aprende de sus errores.. Y lo mas importante que no se debe de descartar algoritmos geneticos,Encadenamiento de reglas..  o si te gustaria mas en estos dias te puedo pasar informacion.. tengo algunos proyectos que realize en redes neuroanles e inteligencia artificial.

Saludos :P
12  Programación / PHP / Re: Consulta de logueo y manejo de usuarios en: 24 Enero 2011, 00:37 am
No es eso men yo solo lo hago por colaborar nada mas ok, y pues en parte si tienes razon no me di cuenta.. q puede ser q tenga aun mas dudas..


XD Saludos :P
13  Programación / PHP / Re: Consulta de logueo y manejo de usuarios en: 23 Enero 2011, 23:03 pm
Hola no se si este te sirva es el que casi en todos los proyectos que realizo lo uso.


Inicio de Sesion

En mi caso manejo un Header por area por ejemplo de la Administracion,

Carpeta: Adminis -> header.php

Código
  1. <?php
  2. //initialize the session
  3. if (!isset($_SESSION)) {
  4. }
  5.  
  6. // ** Logout the current user. **
  7. $logoutAction = $_SERVER['PHP_SELF']."?doLogout=true";
  8. if ((isset($_SERVER['QUERY_STRING'])) && ($_SERVER['QUERY_STRING'] != "")){
  9.  $logoutAction .="&". htmlentities($_SERVER['QUERY_STRING']);
  10. }
  11.  
  12. if ((isset($_GET['doLogout'])) &&($_GET['doLogout']=="true")){
  13.  //to fully log out a visitor we need to clear the session varialbles
  14.  $_SESSION['MM_Username'] = NULL;
  15.  $_SESSION['MM_UserGroup'] = NULL;
  16.  $_SESSION['PrevUrl'] = NULL;
  17.  unset($_SESSION['MM_Username']);
  18.  unset($_SESSION['MM_UserGroup']);
  19.  unset($_SESSION['PrevUrl']);
  20.  
  21.  $logoutGoTo = "../Pizzeria_Elis/index.php"; /// SI NO SE LOGUEA VUELVE A CAMBIARIAS
  22.  
  23.  
  24.  if ($logoutGoTo) {
  25.    header("Location: $logoutGoTo");
  26.    exit;
  27.  }
  28. }
  29. ?>
  30. <?php
  31. if (!isset($_SESSION)) {
  32. }
  33. $MM_authorizedUsers = "1"; /// aQUI ES DOND SE DA EL PERMISO EN MI CASO 1
  34. $MM_donotCheckaccess = "false";
  35.  
  36. // *** Restrict Access To Page: Grant or deny access to this page
  37. function isAuthorized($strUsers, $strGroups, $UserName, $UserGroup) {
  38.  // For security, start by assuming the visitor is NOT authorized.
  39.  $isValid = False;
  40.  
  41.  // When a visitor has logged into this site, the Session variable MM_Username set equal to their username.
  42.  // Therefore, we know that a user is NOT logged in if that Session variable is blank.
  43.  if (!empty($UserName)) {
  44.    // Besides being logged in, you may restrict access to only certain users based on an ID established when they login.
  45.    // Parse the strings into arrays.
  46.    $arrUsers = Explode(",", $strUsers);
  47.    $arrGroups = Explode(",", $strGroups);
  48.    if (in_array($UserName, $arrUsers)) {
  49.      $isValid = true;
  50.    }
  51.    // Or, you may restrict access to only certain users based on their username.
  52.    if (in_array($UserGroup, $arrGroups)) {
  53.      $isValid = true;
  54.    }
  55.    if (($strUsers == "") && false) {
  56.      $isValid = true;
  57.    }
  58.  }
  59.  return $isValid;
  60. }
  61.  
  62. $MM_restrictGoTo = "../Pizzeria_Elis/index.php";
  63. if (!((isset($_SESSION['MM_Username'])) && (isAuthorized("",$MM_authorizedUsers, $_SESSION['MM_Username'], $_SESSION['MM_UserGroup'])))) {  
  64.  $MM_qsChar = "?";
  65.  $MM_referrer = $_SERVER['PHP_SELF'];
  66.  if (strpos($MM_restrictGoTo, "?")) $MM_qsChar = "&";
  67.  if (isset($QUERY_STRING) && strlen($QUERY_STRING) > 0)
  68.  $MM_referrer .= "?" . $QUERY_STRING;
  69.  $MM_restrictGoTo = $MM_restrictGoTo. $MM_qsChar . "accesscheck=" . urlencode($MM_referrer);
  70.  header("Location: ". $MM_restrictGoTo);
  71.  exit;
  72. }
  73. ?>
  74.  
  75.  

Y para el cierre de Sesion en el mismo Header

Código
  1. <a href="<?php echo $logoutAction ?>" class="enlacenav"></a>
  2. <a href="<?php echo $logoutAction ?>" class="enlacenav">Usuario :
  3. <?=$_SESSION["nom"]?>
  4. (salir)</a>
  5.  


Esto me basta que tenga en uno ya que llamo el header y dentro de el su menu que es distinto para cada Usuario.


Este es en mi index.php ... Es decir donde pueden loguearse.


index.php

Código
  1. <?php require_once('Connections/apl.php'); ?>
  2. <?php
  3. if (!function_exists("GetSQLValueString")) {
  4. function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
  5. {
  6.  if (PHP_VERSION < 6) {
  7.    $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
  8.  }
  9.  
  10.  $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
  11.  
  12.  switch ($theType) {
  13.    case "text":
  14.      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
  15.      break;    
  16.    case "long":
  17.    case "int":
  18.      $theValue = ($theValue != "") ? intval($theValue) : "NULL";
  19.      break;
  20.    case "double":
  21.      $theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
  22.      break;
  23.    case "date":
  24.      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
  25.      break;
  26.    case "defined":
  27.      $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
  28.      break;
  29.  }
  30.  return $theValue;
  31. }
  32. }
  33.  
  34. mysql_select_db($database_Apl, $Apl);
  35. $query_Activos_Login_Usuario = "SELECT * FROM usuarios ORDER BY nivel ASC";
  36. $Apl_Login_Usuario = mysql_query($query_Activos_Login_Usuario, $Apl) or die(mysql_error());
  37. $row_Activos_Login_Usuario = mysql_fetch_assoc($Apl_Login_Usuario);
  38. $totalRows_Activos_Login_Usuario = mysql_num_rows($Apl_Login_Usuario);
  39. ?>
  40. <?php
  41. // *** Validate request to login to this site.
  42. if (!isset($_SESSION)) {
  43. }
  44.  
  45. $loginFormAction = $_SERVER['PHP_SELF'];
  46. if (isset($_GET['accesscheck'])) {
  47.  $_SESSION['PrevUrl'] = $_GET['accesscheck'];
  48. }
  49. /// LOS PERMISOS QUE LLEGO A DAR
  50. if (isset($_POST['usuario'])) {
  51.  $loginUsername=$_POST['usuario'];
  52.  $password=$_POST['password'];
  53.  $MM_fldUserAuthorization = "nivel";
  54.  $MM_redirectLoginSuccess = "../index.php";
  55.  $MM_redirectLoginSuccess2 = "../Cajero/index.php";
  56.  $MM_redirectLoginSuccess3 = "../Almacen/index.php";
  57.  $MM_redirectLoginSuccess4 = "../Cocina/index.php";
  58.  $MM_redirectLoginSuccess5 = "../Repartidor/index.php";
  59.  $MM_redirectLoginFailed = "index.php";
  60.  
  61.  $MM_redirecttoReferrer = false;
  62.  mysql_select_db($database_Apl, $Apl);
  63.  
  64.  $LoginRS__query=sprintf("SELECT usuario, clave, nivel FROM usuarios WHERE usuario=%s AND clave=%s",
  65.  GetSQLValueString($loginUsername, "text"), GetSQLValueString($password, "text"));
  66.  
  67.  $LoginRS = mysql_query($LoginRS__query, $Apl) or die(mysql_error());
  68.  $loginFoundUser = mysql_num_rows($LoginRS);
  69.  if ($loginFoundUser) {
  70.  
  71.    $loginStrGroup  = mysql_result($LoginRS,0,'nivel');
  72.  
  73.    //declare two session variables and assign them
  74.    $_SESSION['MM_Username'] = $loginUsername;
  75.    $_SESSION['MM_UserGroup'] = $loginStrGroup;      
  76.  
  77.    if (isset($_SESSION['PrevUrl']) && false) {
  78.      $MM_redirectLoginSuccess = $_SESSION['PrevUrl'];
  79.    }
  80.      if($loginStrGroup==1) { header("Location: " . $MM_redirectLoginSuccess ); }
  81.  if($loginStrGroup==2) { header("Location: " . $MM_redirectLoginSuccess2 ); }
  82.  if($loginStrGroup==3) { header("Location: " . $MM_redirectLoginSuccess3 ); }
  83.      if($loginStrGroup==4) { header("Location: " . $MM_redirectLoginSuccess4 ); }
  84.      if($loginStrGroup==5) { header("Location: " . $MM_redirectLoginSuccess5 ); }
  85.  }
  86.  else {
  87.    header("Location: ". $MM_redirectLoginFailed );
  88.  }
  89. }
  90. ?>
  91.  

y LO MAS IMPORTANTE EL FORM DE LOGIN:

Código
  1. <form action="<?php echo $loginFormAction; ?>" method="post" id="ingreso">
  2.  
  3.             <table width="100" border="0">
  4.               <tr>
  5.                 <td width="84" class="inserta_tablas1"><strong>Usuario:</strong></td>
  6.                 <td width="57"><input name="usuario" type="text" id="usuario" size="10" /></td>
  7.               </tr>
  8.               <tr>
  9.                 <td class="inserta_tablas1"><strong>Contrase&ntilde;a:</strong></td>
  10.                 <td><input name="password" type="password" id="password" size="10" /></td>
  11.               </tr>
  12.               <tr>
  13.                 <td class="inserta_tablas1">&nbsp;</td>
  14.                 <td><span class="inserta_tablas1">
  15.                   <input type="submit" name="button" id="button" value="Enviar" class="boton" onClick="return Ingreso();"/>
  16.                 </span></td>
  17.               </tr>
  18.             </table>
  19. </div>


La tabla que se usa es la siguiente:

Código
  1. --
  2. -- Estructura de tabla para la tabla `usuarios`
  3. --
  4.  
  5. CREATE TABLE IF NOT EXISTS `usuarios` (
  6.  `usuario` CHAR(100) COLLATE utf8_bin NOT NULL COMMENT 'Nombre de usuario',
  7.  `clave` CHAR(10) COLLATE utf8_bin NOT NULL COMMENT 'Clave de Usuario',
  8.  `nivel` INT(1) NOT NULL DEFAULT '1',
  9.  PRIMARY KEY (`usuario`)
  10. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin ROW_FORMAT=FIXED;
  11.  
  12.  

Cualquier duda me avisas...

Saludos :P
14  Programación / PHP / Re: Sistema de mensajeria en: 23 Enero 2011, 16:12 pm
De nada men aver si luego subes tu sistema de Usuarios que hasta ahora no tengo uno bueno siempre me piro con algo..

Saludos :P

PD: Solo Snifer porfavor
15  Programación / PHP / Re: Sistema de mensajeria en: 23 Enero 2011, 06:00 am
Código
  1. CREATE TABLE mensaje(
  2.       codigo             INT NOT NULL,
  3.       cod_tipo             INT NOT NULL,
  4.       remitente INT NOT NULL,
  5.       destinatario VARCHAR(100) NOT NULL,
  6.       titulo                 VARCHAR(100) NOT NULL,
  7.       texto                VARCHAR(100) NOT NULL,
  8.       fecha                DATE NOT NULL,
  9.       hora TIME NOT NULL,
  10.       CONSTRAINT pk_articulo PRIMARY KEY (codigo)
  11. ) TYPE = INNODB;
  12.  
  13.  
  14. DROP TABLE IF EXISTS tipo_mensaje;
  15.  
  16. CREATE TABLE tipo_mensaje(
  17.       codigo             INT NOT NULL,
  18.       tipo             VARCHAR(100) NOT NULL,
  19.       descripcion                VARCHAR(100) NOT NULL,
  20.       CONSTRAINT pk_articulo PRIMARY KEY (codigo)
  21. ) TYPE = INNODB;
  22.  
  23. DROP TABLE IF EXISTS mensaje_destino;
  24.  
  25. CREATE TABLE mensaje_destino(
  26.       codigo_mensaje             INT NOT NULL,
  27.       cod_destinatario             INT NOT NULL
  28. ) TYPE = INNODB;
  29.  
  30.  
  31. DROP TABLE IF EXISTS mensaje_respuesta;
  32.  
  33. CREATE TABLE mensaje_respuesta(
  34.       codigo_mensaje             INT NOT NULL,
  35.       cod_remitente                 INT NOT NULL,
  36.       fecha                DATE NOT NULL,
  37.       hora TIME NOT NULL,
  38.       texto VARCHAR(100) NOT NULL
  39. ) TYPE = INNODB;

Bueno yo tengo un sistema de Mensajeria que desarrolle estas son las tablas mas importantes aunque le agregue aun mas, tablas que permite enviar archivos y demas... con esto ya puedes tener una base.

Saludos :P

16  Programación / Desarrollo Web / Re: consejos en: 23 Enero 2011, 03:32 am
Miren es para ambos lo que les indico vean un poco de Action Script. y con eso podran hacer y para verificar por ejemplo :

Código
  1. <?php
  2. //Copyright © McAnam.com
  3.  
  4.    $sDirectorio = "/descargas/"; //Introducir directorio de descargas
  5.    $sUrlDescargas = $_SERVER["DOCUMENT_ROOT"].$sDirectorio;
  6.    $vBarras = array("/", "\\");
  7.    $sDocumento = $sUrlDescargas.str_replace($vBarras, "_", $_GET["doc"]);
  8.  
  9.    if (file_exists($sDocumento))
  10.    {
  11.        header("Content-type: application/force-download");
  12.        header("Content-Disposition: attachment; filename=".basename($_GET["doc"]));
  13.        header("Content-Transfer-Encoding: binary");
  14.        header("Content-Length: ".filesize($sDocumento));
  15.        readfile($sDocumento);
  16.    }
  17.    else
  18.    {
  19.        echo "<br>Ha sido imposible descargar el fichero";
  20.    }
  21.  
  22. ?>
  23.  
  24.  
17  Foros Generales / Foro Libre / Re: Hola buenas,que debería coger en: 23 Enero 2011, 03:16 am
Oblivion tienes razon!! se hace un masterado en Video Juegos, en donde llegas a comprender los detalles para el Desarrollo del Programa manejo de Colores, y demas como dices es mucho por aprender esto lo escuche en una charla que me dieron en la Tesina..

Ademas tienes que aspirar a mas ciberelfo !!!
18  Foros Generales / Dudas Generales / Re: como instalar winxp en una hp mini 110 en: 23 Enero 2011, 00:35 am
Bueno para gustos no hay disgustos jejeje yo recien me pase a 7 por que me sento mejor y tenias mas compatibilidad con algunos programas y lo mas importante en el XP nunca pude instalar SQL SERVER  :xD..

Pero lo mejor es que lo hagas desde un USB que lo puedas hacer correr como te indicaron mas arriba
19  Programación / Desarrollo Web / Re: consejos en: 22 Enero 2011, 22:14 pm
No se puede incluir pero si puedes hacer que obligue a descargar..
20  Programación / Programación General / Re: Extraer código fuente del navegador, no de la web. Ayuda por favor. en: 22 Enero 2011, 21:55 pm
Crear Marcador en Firefox..

= Los marcadores son accesos directos en la barra de navegacion.

La mejor solucion o creo que seria haciendo el uso de la funcion split y el control webbrowser
Páginas: 1 [2] 3 4 5 6 7 8
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines