Foros del Web » Programando para Internet » PHP »

Estoy aprendiendo ahora.

Estas en el tema de Estoy aprendiendo ahora. en el foro de PHP en Foros del Web. Hey amigos del foro les pido que me tengan paciencia porque yo estoy nuevo en esto, apenas me se el manual pero no entiendo como ...
  #1 (permalink)  
Antiguo 04/07/2004, 01:05
 
Fecha de Ingreso: junio-2004
Mensajes: 7
Antigüedad: 20 años, 5 meses
Puntos: 0
Estoy aprendiendo ahora.

Hey amigos del foro les pido que me tengan paciencia porque yo estoy nuevo en esto, apenas me se el manual pero no entiendo como usar bases de datos con php..

Por lo pronto quiero que me ayuden a hacer un loging con php en una sola pagina y que se almacene el nombre y la clave ......

Gracias de antemano
  #2 (permalink)  
Antiguo 04/07/2004, 03:58
 
Fecha de Ingreso: julio-2004
Ubicación: Uruguay
Mensajes: 26
Antigüedad: 20 años, 4 meses
Puntos: 0
Mensaje

Bueno, algo así debería servirte para empezar.

el script se llama login.php

Código PHP:
<?

//Define la accion a tomar en el cuerpo de la pagina, si entras por primera vez le asigna a la variable $ref el valor "home"
if ($HTTP_GET_VARS["ref"]==""){$ref="home";}else{$ref=$HTTP_GET_VARS["ref"];}
//Aqui empiezo el case, el que sigue es el home, es cuando entràs por primera vez y es donde debe ubicarse la forma de login
//Observar que la accion que toma el formulario es el mismo archivo .php, pero se le agrega ?ref=log, eso es para que la variable $ref tome el 
//valor ref.
switch ($ref){ 
 case 
"home":    
 
?>
 <form name="form1" method="post" action="login.php?ref=log">
  <table width="200" border="0" cellspacing="0" cellpadding="0">
    <tr> 
      <td>Nombre</td>
      <td><input name="nombre" type="text" id="nombre"></td>
    </tr>
    <tr> 
      <td>Clave</td>
      <td><input name="clave" type="password" id="clave"></td>
    </tr>
    <tr> 
      <td>&nbsp;</td>
      <td><div align="right">
          <input name="Login" type="submit" id="Login" value="Submit">
        </div></td>
    </tr>
  </table>
</form>
<?
break;

case 
"log"// Inicia las acciones para la referencia log.

//nos conectamos a la base de datos
$sql mysql_connect("Host""User","password");
mysql_select_db("base de datos",$sql);

//realizamos una busqueda en la tabla donde tenemos almacenados los usuarios, restringiendola solamente a los usuarios con nombre igual al que se ingreso en la forma
$busqueda "SELECT * FROM usuarios WHERE usr_usr=\"" $HTTP_POST_VARS['nombre'] . "\"";
$res mysql_query($busqueda);

// Si la busqueda nos da un numero de resultados igual a cero, quiere decir que no existe ningun usuario con su nombre
if (mysql_num_rows($res)==0) {$error 'No se encontro nadie con ese nombre';}else{

//aqui hacemos la comparaciòn de las claves, ojo con el tema de las mayusculas, en este caso convierto las dos a mayusculas, entonces no importa como la hayas escrito. Compara sin diferenciar mayusculas de minùsculas
if (strtoupper(mysql_result($res,0,"usr_clave"))==strtoupper($HTTP_POST_VARS["clave"]))
// si todo saliò bien, aqui debe ir el código para los usuarios registrados

?>
<table width="268" border="0" cellspacing="0" cellpadding="0">
  <tr> 
    <td width="218" bgcolor="#CC6600">&nbsp;</td>
  </tr>
  <tr> 
    <td><div align="center"><font face="Arial, Helvetica, sans-serif"><strong>Bienvenidos 
        a la pagina privada!!</strong></font></div></td>
  </tr>
  <tr>
    <td bgcolor="#CC6600">&nbsp;</td>
  </tr>
</table>
<?
}else{Print "No es una clave válida";}
}
break;
}

?>


No dudes en consultar tus dudas

pbaldovi

Suerte!!
  #3 (permalink)  
Antiguo 05/07/2004, 08:35
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
Yo empezaría por ver manuales sobre Base de datos (que són, el SQL, "normalización" y demás términos):

Si usas Msyql .. podrías ver los de:
www.mysql-hispano.com

Y .. luego si conoces ya algo de PHP es cosa de usar las funciones de PHP sobre Base de datos (Msyql para tu caso) aplicando los conocimientos sobre BD que vas adquirir en esos manuales .. así tendras la "película" más clara y le sacaras más partido al tema.

Un saludo,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:11.