
25/10/2009, 02:53
|
| | Fecha de Ingreso: mayo-2009
Mensajes: 200
Antigüedad: 15 años, 9 meses Puntos: 7 | |
Respuesta: php+mysql problemita les dejo los codigos completos para que los revisen a ver si ven algo mal por que el de no pasar el valor de ID a otra ID:
creacion de un usuario: Código PHP: <?php
//Primero comprovamos datos que no esten vacion
session_start();
if(isset($_POST['username']) && !empty($_POST['username']) &&
isset($_POST['password']) && !empty($_POST['password']) &&
isset($_POST['password2']) && !empty($_POST['password2']) &&
isset($_POST['nombre']) && !empty($_POST['nombre']) &&
isset($_POST['apellido']) && !empty($_POST['apellido']) &&
isset ($_POST['telefono']) && !empty($_POST['telefono']) &&
isset ($_POST['email']) && !empty($_POST['email'])) {
//pasamos las variables:
$username=$_POST['username'];
$password=$_POST['password'];
$password2=$_POST['password2'];
$nombre=$_POST['nombre'];
$apellido=$_POST['apellido'];
$telefono=$_POST['telefono'];
$email=$_POST['email'];
$check=0;
//entrando a la base de datos
include("config/config.php");
$link = mysql_connect($dbhost, $dbusername, $dbuserpass);
mysql_select_db($dbname,$link) or die('No se puede seleccionar la base de datos');
//Seccion de funciones y demas
//añadimos la funcion que se encargara de generar un numero aleatorio
/* function genera_random($longitud){
$exp_reg="[^A-Z0-9]";
return substr(eregi_replace($exp_reg, "", md5(rand())) .
eregi_replace($exp_reg, "", md5(rand())) .
eregi_replace($exp_reg, "", md5(rand())),
0, $longitud);}*/
// Comprobamos si el nombre de usuario o la cuenta de correo ya existían
$checkuser = mysql_query("SELECT username FROM user WHERE username='$username'");
$username_exist = mysql_num_rows($checkuser);
$checkemail = mysql_query("SELECT email FROM user WHERE email='$email'");
$email_exist = mysql_num_rows($checkemail);
if ($email_exist>0) {
header('refresh:10; url=/regedit.html');
echo "La cuenta de correo estan ya en uso.<br>";
echo "Utilice otra Cuenta de correo electronico.<br>";
}else{
if ($username_exist>0) {
header ('refresh:10; url=/regedit.html');
echo "El nombre de usuario esta ya en uso.<br>";
echo "Utilice otra Nombre de Usuario.<br>";
}else{
//agregamos la variable $activate que es un numero aleatorio de
//20 digitos crado con la funcion genera_random de mas arriba
// $activate = genera_random(20);
//aqui es donde insertamos los nuevos valosres en la BD activate y el valor 1 que es desactivado
//Comprobacion de la password
if($password!=$password2) {
header('refresh:10; url=/regedit.html');
echo "Las contraseñas no coinciden<br>";
echo "Por Favor utilice una Contraseña valida<br> <br>";
echo "Si tiene algun problema en crear su cuenta por favor enviar un correo a [email protected].<br>";
}else{
//comprobar Correo electronico
$cemail=($_POST['email']);
if ( filter_var($cemail, FILTER_VALIDATE_EMAIL) == TRUE){
//pasamos la password a encriptacion:
$encript = md5($_POST['password']);
// con esta sentencia insertamos los datos en la base de datos XD
mysql_query("INSERT INTO user (username,password,nombre,apellido,telefono,email,ucheck,mcheck)
VALUES ('{$username}','{$encript}','{$nombre}','{$apellido}','{$telefono}','{$email}','{$check}','{$check}')",$link);
// Ahora comprobaremos que todo ha ido correctamente
$my_error = mysql_error($link);
if(!empty($my_error)){
header('refresh:10; url=/regedit.html');
echo "Ha habido un error al insertar los valores. $my_error";
}else{
$idpj = mysql_query("SELECT id FROM user WHERE username='$username'");
$ids = $idpj;
mysql_query("INSERT INTO pj (id) VALUES ('{$idpj}')",$link);
header('refresh:5; url=/create.html');
echo "Los datos han sido introducidos satisfactoriamente.<br>";
echo "Bienvenido no hay partida en estos momentos pero puedes entrar y solicitarlas.<br>";
echo "ID: $idpj<br>";
echo "Usuario: $username<br>";
echo "Nombre: $nombre<br>";
echo "Apellido: $apellido<br>";
echo "Telefono: $telefono<br>";
echo "E-mail: $email<br>";}
}else{
header('refresh:10; url=/regedit.html');
echo "Direccion de correo invalida, Por Favor utilice un correo con el siguiente formato:<br> <br>";
echo "[email protected] <br><br>";
echo "Sugerimos los siguientes proveedores:<br><br>";
echo "Hotmail<br>";
echo "Gmail<br>";
echo "Yahoo<br>";
}
}
}
}
}else{
header('refresh:10; url=/regedit.html');
echo "Error, no ha introducido todos los datos";}
?> creacion del personaje primera parte: Código PHP: <?php
ob_start();
session_start();
if(isset($_POST['namepj']) && !empty($_POST['namepj'])){
$user=$_POST['user'];
$namepj=$_POST['namepj'];
$raza=$_POST['raza'];
$prof=$_POST['prof'];
if($prof==0000){
header('refresh:10; url=/create.html');
echo "Error, no ha introducido una Profecion correcta";
}else{
$hibrid=$_POST['hibrid'];
$edad=$_POST['edad'];
$apa=$_POST['apa'];
$check=0;
include("config/config.php");
// ya puedes acceder a la seccion de ".'<a href="members.php">Miembros</a>'."
// Conectar a la base de datos
mysql_connect ($dbhost, $dbusername, $dbuserpass);
mysql_select_db($dbname) or die('No se puede seleccionar la base de datos');
$cnamepj = mysql_query("SELECT namepj FROM pj WHERE namepj='$namepj'");
$namepj_exist = mysql_num_rows($cnamepj);
$cid = mysql_query("SELECT id FROM pj WHERE namepj='$namepj'");
$id_exist = mysql_num_rows($cnamepj);
$act = mysql_query("SELECT activate FROM pj WHERE namepj='$namepj'");
if (act>0){
header('refresh:20; url=/create.html');
echo "Ya existe un personaje activado a esta cuenta.<br>";
}else{
if ($namepj_exist>0) {
header('refresh:20; url=/create.html');
echo "El nombre del personaje esta en uso.<br>";
echo "Por favor utilice otro.<br>";
echo "Por favor mandar un correo electrónico a [email protected] con la siguiente información:<br>";
echo "Nombre de la Cuenta.<br>";
echo "Nombre del personaje a utilizar.<br>";
}else{
if ($id_exist>0) {
header('refresh:20; url=/index.html');
echo "El numero de ID esta colapsado.<br>";
echo "Por favor mandar un correo electrónico a [email protected] con la siguiente información:<br>";
echo "Nombre de la Cuenta.<br>";
echo "Nombre del personaje a utilizar.<br>";
}else{
$idpj = mysql_query("SELECT id FROM user WHERE username='$user'") or die(mysql_error());
$ids = $idpj;
$activate = mysql_query("SELECT activate FROM pj WHERE id='$ids'");
if($activate == 1){
echo "Ha habido un error al insertar los valores.";
echo "Por favor mandar un correo electrónico a [email protected] con la siguiente información:<br>";
echo "Error ya existe un personaje creado a su Cuenta<br>";
echo "Nombre de la Cuenta.<br>";
echo "Nombre del personaje a utilizar.<br>";
}else{
mysql_query("UPDATE pj SET id = '{$ids}', namepj = '{$namepj}', raza = '{$raza}', prof = '{$prof}', hibrid = '{$hibrid}', edad = '{$edad}', apa ='{$apa}' WHERE id='$ids' ") or die(mysql_error());
// Ahora comprobaremos que todo ha ido correctamente
if(!empty($my_error)){
header('refresh:20; url=/create.html');
echo "Ha habido un error al insertar los valores. $my_error";
echo "Por favor mandar un correo electrónico a [email protected] con la siguiente información:<br>";
echo "Este ERROR: $my_error<br>";
echo "Nombre de la Cuenta.<br>";
echo "Nombre del personaje a utilizar.<br>";
}else{
header('refresh:10; url=/create2.html');
echo "Almacenando Informacion...Por favor espere.<br>";
echo "ID: $ids<br>";
echo "namepj: $namepj<br>";
echo "raza: $raza<br>";
echo "prof: $prof<br>";
echo "hibrid: $hibrid<br>";
echo "edad: $edad<br>";
echo "apa: $apa";
}
}
}
}
}
}
}else{
echo "<meta http-equiv='refresh' content='20;url=/create.html' />";
echo "Error, no ha introducido todos los datos";}
ob_end_flush();
?> |