Administracion de usuario en PHP

23 julio 2009

1.pagina de login (index.php)

2.una de verificacion de login (verifica.php) // aki es donde haces una consulta a tu DB consultando el nivel de user que tiene el usuario que se esta loggiando, por ejemplo, nivel=0 si es admin, y nivel=1 cliente. y despues viene la redireccion.
2.1 Una web con el contenido de Administracion (admin.php //para nivel=0)
2.2 Una web con el contenido de Clientes (cliente.php//nivel=1)
//aki lo sintetizo mejor con un codigo q esta trabajando

<?php

include(“conecta.php”);

$link = Conectarse();

$rut = $_POST[“rut”];
$pass = $_POST[“pwd”];

if($rut == “” || $pass == “”){

echo”<h2>Debe ingresar su Rut y Contraseña</h2>”;
?><META HTTP-EQUIV=”Refresh” CONTENT=”5; URL=login2.php”><?
mysql_close($link);
}
else {

if (ereg(“^[a-zA-Z]+$”,$rut)){

echo”debe ingresar valores validos para un rut”;
mysql_close($link);
}
else{

$result = mysql_query(“SELECT clave, rut, nombre, id_nivel FROM usuario WHERE rut=$rut”);
$c = 0;

if($row = mysql_fetch_array($result)){

if($row[“clave”] == $pass && $row[“id_nivel”] == “1”){
session_start();
$c = 1;
$_SESSION[‘nombre_s’] = $row[“nombre”];
$_SESSION[‘rut_s’] = $row[“rut”];
$nombre1 = $row[“nombre”];
echo “<h1>Bienvenido “,$row[“nombre”], ” sera redireccionado breve” ?>
<META HTTP-EQUIV=”Refresh” CONTENT=”3; URL=cliente.php?nombre1=<?php echo
$nombre1 ?>”><?;

}

if($row[“clave”] == $pass && $row[“id_nivel”] == “0”){
session_start();
$c = 1;
$_SESSION[“nombre_s”] = $row[“nombre”];
$nombre1 = $row[“nombre”];
echo “<h1>Bienvenido “,$row[“nombre”], ” sera redireccionado en breve” ?>
<META HTTP-EQUIV=”Refresh” CONTENT=”2; URL=administrador.php?nombre1=<?php
echo $nombre1 ?>”><?;

}
if($c==0){echo”<h1>La Password no concuerda”?><META HTTP-EQUIV=”Refresh” CONTENT=”2; URL=index.php”><?;}
}else {echo”no se encontro registrado el Rut digitado”;}

}

}

?>


Llamar un SP de MySql con PHP

23 julio 2009

Perdon, tuve una omision. Se agradece al amigo Gustavo por la informacion al final viene el link del compañero.

Saludos

definir los script en php que se conectaran a esta BD y llamar el procedimiento, para ello primero creamos un archivo llamado BD.php que nos permitira configurar la conexion a la BD.

BD.php

01.<?php
02.
03.class BD{
04.var $servidor;
05.var $usuario;
06.var $clave;
07.var $bd;
08.var $conexion;
09.
10.function BD()
11.{
12.$this->servidor = "localhost";
13.$this->usuario  = "tu_user";
14.$this->clave    = "tu_clave";
15.$this->bd       = "ejemplos_mysql"; // asi se llama nuestro ejemplo
16.}
17.function conectar_li()
18.{
19.$this->conexion = mysqli_connect($this->servidor,$this->usuario,$this->clave,$this->bd);
20.return $this->conexion;
21.}
22.function getBD()
23.{
24.return $this->bd;
25.}
26.}
27.
28.?>

Lo siguiente es definir un script que nos permita llamar a todos los objetos creados en nuestra BD en mysql que en este caso contara con un solo procedimiento, el de registro, este script se llamara Servidor.php.

Servidor.php

01.<?php
02.class Servidor{
03.var $conexion;
04.
05.function registro($nick_var, $email_var, $mensaje_var){
06.$result = mysqli_query($this->conexion,"select registro('$nick_var', '$email_var', '$mensaje_var');");
07.$row = mysqli_fetch_array($result);
08.return $row[0];
09.}
10.}
11.?>

Como notaron, estamos usando quizas demasiados archivos para un ejemplo tan sencillo que puede hacerse todo en un script php, pero si entienden este ejemplo nos servira mucho para poder avanzar con el chat en ajax.

Ahora ejecutemos el ejemplo con un script de prueba

prueba.php

01.<?php
02.include("BD.php");
03.
04.$bd = new BD();
05.$conexion = $bd->conectar_li();
06.
07.include("Servidor.php");
08.
09.$servidor = new Servidor();
10.$servidor->conexion = $conexion;
11.
12.$nick = 'Gustavo Delgado';
13.$email = 'gustavo.uach@gmail.com';
14.$pregunta = 'esto deberia quedar en la BD no......¿?';
15.
16.$id_usr = $servidor->registro($nick, $email, $pregunta);
17.
18.echo "Tu id de la tabla de usuario es:  ".$id_usr;
19.?>

Al ejecutar el ejemplo deberiamos ver el id_usuario = 1 si es que no se han ingresado datos anteriormente, en caso contrario veremos el id correpsondiente a la nueva insercion.

Obs: Partimos del supuesto de que tienes un servidor http, con mysql y php instalado.

Autor Gustavo
codigox.tk
gustavo.uach@gmail.com

Fuente: http://www.inspiracion.cl/codigox/2009/04/llamar-un-sp-de-mysql-con-php/


Instalar Apache, MySql, Php5 y PhpMyAdmin en Debian

16 julio 2009

ápidamente como instalar lo básico para empezar a programar en php y MySql en una máquina con Debian.

Con apt-get podremos instalar facilmente todo lo que necesitamos. Si necesitas buscar otros paquetas, puedes uar :

# apt-cache search loquesea

Bueno empecemos :

Editar

#vi /etc/apt/source.list

deb http://ftp.us.debian.org/debian/ stable main non-free contrib

#apt-get update

Instalando Apache:

#apt-get install apache-common apache

Enable suExev ? ( provee a los usuarios de Apache la posibilidad de correr programas con interfaz común de acceso )

Responer <No>

Instalando MySQL:

#apt-get install mysql-common mysql-client mysql-server

Instalando Php 5.0:
#apt-get install php5 libapache-mod-php5 php5-mysql

#apt-get install php5-gd

#apt-get install phpmyadmin

Descomenta en el php.ini ( sacar el signo gato )

#extension=mysql.so
#extension=gd.so

reiniciamos Apache y MySQL:
#/etc/init.d/apache restart
#/etc/init.d/mysql restart

http://localhost/phpmyadmin

Listo