Ver Mensaje Individual
  #3 (permalink)  
Antiguo 21/09/2008, 17:39
lathix
 
Fecha de Ingreso: diciembre-2007
Ubicación: C:\Escritorio\Frente al Pc
Mensajes: 47
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: Ingresar Datos a Una Base de Datos

bueno si dices altas de usuario con eso no basta, debes leer un poco de sesiones en php si es a lo que va tu codigo...aca te dejo una forma super simple de hacer un sistema de usuarios:

login.php
Código PHP:
<?
session_start
();
if(isset(
$SESSION)){
header("location: index.php"); /* Si ha iniciado la sesion, vamos a user.php */
} else { 
/* Cerramos la parte de codigo PHP porque vamos a escribir bastante HTML y nos será mas cómodo así que metiendo echo's */
?>
<?
session_start
();
$server="localhost"/* Nuestro server mysql */
$database="tubase"/* Nuestra base de datos */
$dbpass="tupass"/*Nuestro password mysql */
$dbuser="tuuser"/* Nuestro user mysql */
$query="SELECT * FROM usuarios WHERE login='$login'";
$link=mysql_connect($server,$dbuser,$dbpass);
$result=mysql_db_query($database,$query,$link);
if(
mysql_num_rows($result)==0){
echo 
"No existe el login introducido";
} else {
$array=mysql_fetch_array($result);
if(
$array["password"]==crypt($pass,"semilla") ){
/* Comprobamos que el password encriptado en la BD coincide con el password que nos han dado al encriptarlo. Recuerda usar la misma semilla para encriptar los dos passwords. */
$SESSION["login"]=$login;
$SESSION["nombre"]=$array["nombre"];
$SESSION["apellidos"]=$array["apellidos"];
session_register("SESSION");
header("location: master.php");

} else {
echo 
"Password incorrecto!";
/* Cerramos este ultimo else */
/* Cerramos el else que corresponde a la comprobación de que el login existe */

?> 
<html><head><title>Necesita identificación! </title></head>
<body>
<center><h1>Identificate! :D </h1></center>
<form action="login.php" method="POST">
Login: <input type="text" name="login"><br>
Password: <input type="password" name="pass"><br>
<input type="submit" value="Entrar">
</form>
</body></html>
<?
/* Y cerramos el else */ 
?>
logout.php

Código PHP:
<?
session_start
();
if(!isset(
$SESSION)){
header("location: login.php");
} else {
session_unset();
session_destroy();
echo 
"Las variables de sesión han sido eliminadas, y la sesión se ha dado por finalizada correctamente ;-)";
}
?>
register.php

Código PHP:
<?
include "config.php";
if (
$adduser) {

$query="SELECT * FROM usuarios WHERE login='$login'";
$link=mysql_connect($host,$user,$pass);
$result=mysql_db_query($dbname,$query,$link);
if(
mysql_num_rows($result)){
echo 
"El usuario ya existe en la BD";
} else {
mysql_free_result($result);
/* Ahora comprovamos que los dos pass coinciden */
if($pass1!=$pass2) {
echo 
"Los passwords deben coincidir<br>";
echo 
'Clica <a href="page.php?modulo=adduser">aquí</a> para volver al formulario';
} else {
$pass1=crypt($pass2"semilla"); 

/* Encripatmos el password, con la clave "semilla" que debes sustituirpor la que mas les guste. Hay otros metodos de encriptacion, mirad en php.net si quieres conocerlos. */

$query="INSERT INTO usuarios (login, nombre, apellidos, password, email) VALUES ('$login','$nombre','$apellidos','$pass1','$email')";

$result=mysql_db_query($dbname,$query,$link);
if(
mysql_affected_rows($link)){
echo 
"
<meta http-equiv="
refresh" content= "5url=index.php">
Usuario introducido correctamente"
;
} else {
echo 
"
<meta http-equiv="
refresh" content= "1url=register.php">Error introduciendo el usuario";
/* Cierre del else */
/* Cierre del else que corresponde a if(mysql_affected_rows.....) */
/* Cierre del else que corresponde a if(mysql_num_rows...) */
}

?>
<table width="500" cellpadding="0" cellspacing="0">
<!--DWLayoutTable-->
<form action="register.php" method="POST">
<tr>
<td width="213">
Login:</td>
<td width="281">
<input type="text" name="login"></td>
</tr>
<tr>
<td>
Password:</td>
<td>
<input type="password" name="pass1"></td>
</tr>
<tr>
<td>
Repite Password:</td>
<td>
<input type="password" name="pass2"></td>
</tr>
<tr>
<td>Nombre:</td>
<td><input type="text" name="nombre"></td>
</tr>
<tr>
<td>Apellidos:</td>
<td><input type="text" name="apellidos"></td>
</tr>
<tr>
<td>E-mail:</td>
<td><input type="text" name="email"></td>
</tr>
<tr>
<td height="24" colspan="2" align="center" valign="top">
  <input type="submit" name="adduser" value="Agregar Usuario"></td>
</tr>
</form>
</table>
index.php

Código PHP:
<?
session_start
();
if(!isset(
$SESSION)){
echo 
"Usted no ha iniciado sesión en el sistema.";
} else {
echo 
"<html><body>";
echo 
"Bienvenido " $SESSION["nombre"] . " " $SESSION["apellidos"]." ";

echo 
"<a href='logout.php' target='_top'>Cerrar Sesión</a>";
echo 
"</body></html>";
}
?>
la base de datos

/////////////////////////////////////////////////////////

CREATE TABLE IF NOT EXISTS `usuarios` (
`id` tinyint(4) NOT NULL auto_increment,
`nombre` text,
`apellidos` text,
`login` varchar(40) default NULL,
`password` varchar(20) default NULL,
`email` text,
UNIQUE KEY `id` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;


///////////////////////////////////////////////////////////////////////

y el config.php

Código PHP:
<?php
// DB Configuracion


$host "localhost";
$user "root"
$pass "tupas"
$dbname "db"
$conecta = @mysql_connect($host$user$pass) or die("No se ha podido conectar con el servidor MySQL. Inténtalo mas tarde.");
@
mysql_select_db($dbname$conecta);

?>
y eso lee mas sobre sesiones en php para mostrar contenido a tus usuarios y no a los invitados :P saludos cualkier error me dices porke los estaba modificando no estaba muy bien el code esop :P