Comunidad PHPeros
Lenguajes => PHP => Mensaje iniciado por: Rastrillox en 17 de Mayo de 2012, 06:13:58 am
-
Wenas, ps como saben he vuelto a esto de la programación ya que la había dejado hace tiempo, bueno el caso es que hize un registro, ok me va perfectamente, me inserta los datos en la BD este es el codigo.
<?php
// Si pulsa regístrar
if(isset($_POST['submit'])) {
// Procesamos los datos del formulario
$nick = FiltrarTexto($_POST['account']);
$nombre = FiltrarTexto($_POST['nombre']);
$passw = FiltrarTexto($_POST['pass']);
$passw2 = FiltrarTexto($_POST['rpass']);
$email = FiltrarTexto($_POST['email']);
$borrado = FiltrarTexto($_POST['cborrado']);
$coins = 0;
// Comprobamos si hay campos en blanco
if(empty($nick) || empty($nombre) || empty($passw) || empty($passw2) || empty($email) || empty($borrado)){
echo '
<div class="content-bg">
<div class="content-bg-bottom">
<div class="inner-form-border">
<div class="inner-form-box">
Registro Fallido: Debes rellenar todos los campos.
</div>
</div>
</div>
</div>
';
} else {
// Comprobamos si las contraseñas no coinciden
if($passw != $passw2){
echo '
<div class="content-bg">
<div class="content-bg-bottom">
<div class="inner-form-border">
<div class="inner-form-box">
Registro Fallido: Las contraseñas no coinciden.
</div>
</div>
</div>
</div>
';
} else {
// Comprobamos si el nick tiene caracteres no deseados
$comp = array('¬','`','\"','£','$','%','^','&','*','(',')','_','+','[',']','{','}',';','@','\'','#','~','<','>',',','/','?','\\','|',' ');
$check = str_replace($comp,"",$nick);
if($check < $nick) {
echo '
<div class="content-bg">
<div class="content-bg-bottom">
<div class="inner-form-border">
<div class="inner-form-box">
Registro Fallido: Su IDcontiene caracteres no válidos.
</div>
</div>
</div>
</div>
';
} else {
// Comprobamos si la contraseña tiene menos de 6 carecteres
$pw_check = strlen($passw);
if($pw_check < 6) {
echo '
<div class="content-bg">
<div class="content-bg-bottom">
<div class="inner-form-border">
<div class="inner-form-box">
Registro Fallido: Su contraseña es demasiado corta. Tiene que ser de 6 o más caracteres.
</div>
</div>
</div>
</div>
';
} else {
// Comprobamos que el email contenga @
if(!strpos($email, "@")){
echo '
<div class="content-bg">
<div class="content-bg-bottom">
<div class="inner-form-border">
<div class="inner-form-box">
Registro Fallido: Escribe un e-mail válido.
</div>
</div>
</div>
</div>
';
}else{
// Comprobamos si el usuario ya exíste en la bd
$n_check = mysql_num_rows(mysql_query("SELECT * FROM `account` WHERE `login`='" . $nick . "'"));
if($n_check >= 1) {
echo '
<div class="content-bg">
<div class="content-bg-bottom">
<div class="inner-form-border">
<div class="inner-form-box">
Registro Fallido: Ese ID ya está siendo utilizado.
</div>
</div>
</div>
</div>
';
} else {
mysql_select_db('account');
$query = 'SELECT login FROM account WHERE login =\''.$nick.'\'';
if($resultado = mysql_query($query)){
if(mysql_num_rows($resultado) == 0){
$create = 1;
mysql_query("INSERT INTO account SET login = '".$nick."', coins = ".$coins.", password = PASSWORD('".$passw."'), real_name = '".$nombre."',email = '".$email."', social_id = '".$borrado."'");
} else {
echo '
<div class="content-bg">
<div class="content-bg-bottom">
<div class="inner-form-border">
<div class="inner-form-box">
Registro Valido: Usted se ha registrado correctamente.
</div>
</div>
</div>
</div>
';
}
}
}
}
}
}
}
}
}
if(isset($create)){
echo ' <table width="396">
<tr>
<td width="83"> </td>
<td width="139">Nombre</td>
<td width="158">'.$nick.'</td>
</tr>
<tr>
<td> </td>
<td>Contraseña</td>
<td>***********</td>
</tr>
<tr>
<td> </td>
<td>Re. Contraseña</td>
<td>***********</td>
</tr>
<tr>
<td> </td>
<td>Email</td>
<td>'.$email.'</td>
</tr>
<tr>
<td> </td>
<td>Codigo Borrado</td>
<td>'.$borrado.'</td>
</tr>
</table>
';
}
?>
Bien pero tengo un pequeño problema, quiero mostrar los datos del registro, ocultando asi mismo el formulario, e intente hacerlo de la siguiente manera colocandole un else.
<?php
// Si pulsa regístrar
if(isset($_POST['submit'])) {
// Procesamos los datos del formulario
$nick = FiltrarTexto($_POST['account']);
$nombre = FiltrarTexto($_POST['nombre']);
$passw = FiltrarTexto($_POST['pass']);
$passw2 = FiltrarTexto($_POST['rpass']);
$email = FiltrarTexto($_POST['email']);
$borrado = FiltrarTexto($_POST['cborrado']);
$coins = 0;
// Comprobamos si hay campos en blanco
if(empty($nick) || empty($nombre) || empty($passw) || empty($passw2) || empty($email) || empty($borrado)){
echo '
<div class="content-bg">
<div class="content-bg-bottom">
<div class="inner-form-border">
<div class="inner-form-box">
Registro Fallido: Debes rellenar todos los campos.
</div>
</div>
</div>
</div>
';
} else {
// Comprobamos si las contraseñas no coinciden
if($passw != $passw2){
echo '
<div class="content-bg">
<div class="content-bg-bottom">
<div class="inner-form-border">
<div class="inner-form-box">
Registro Fallido: Las contraseñas no coinciden.
</div>
</div>
</div>
</div>
';
} else {
// Comprobamos si el nick tiene caracteres no deseados
$comp = array('¬','`','\"','£','$','%','^','&','*','(',')','_','+','[',']','{','}',';','@','\'','#','~','<','>',',','/','?','\\','|',' ');
$check = str_replace($comp,"",$nick);
if($check < $nick) {
echo '
<div class="content-bg">
<div class="content-bg-bottom">
<div class="inner-form-border">
<div class="inner-form-box">
Registro Fallido: Su IDcontiene caracteres no válidos.
</div>
</div>
</div>
</div>
';
} else {
// Comprobamos si la contraseña tiene menos de 6 carecteres
$pw_check = strlen($passw);
if($pw_check < 6) {
echo '
<div class="content-bg">
<div class="content-bg-bottom">
<div class="inner-form-border">
<div class="inner-form-box">
Registro Fallido: Su contraseña es demasiado corta. Tiene que ser de 6 o más caracteres.
</div>
</div>
</div>
</div>
';
} else {
// Comprobamos que el email contenga @
if(!strpos($email, "@")){
echo '
<div class="content-bg">
<div class="content-bg-bottom">
<div class="inner-form-border">
<div class="inner-form-box">
Registro Fallido: Escribe un e-mail válido.
</div>
</div>
</div>
</div>
';
}else{
// Comprobamos si el usuario ya exíste en la bd
$n_check = mysql_num_rows(mysql_query("SELECT * FROM `account` WHERE `login`='" . $nick . "'"));
if($n_check >= 1) {
echo '
<div class="content-bg">
<div class="content-bg-bottom">
<div class="inner-form-border">
<div class="inner-form-box">
Registro Fallido: Ese ID ya está siendo utilizado.
</div>
</div>
</div>
</div>
';
} else {
mysql_select_db('account');
$query = 'SELECT login FROM account WHERE login =\''.$nick.'\'';
if($resultado = mysql_query($query)){
if(mysql_num_rows($resultado) == 0){
$create = 1;
mysql_query("INSERT INTO account SET login = '".$nick."', coins = ".$coins.", password = PASSWORD('".$passw."'), real_name = '".$nombre."',email = '".$email."', social_id = '".$borrado."'");
} else {
echo '
<div class="content-bg">
<div class="content-bg-bottom">
<div class="inner-form-border">
<div class="inner-form-box">
Registro Valido: Usted se ha registrado correctamente.
</div>
</div>
</div>
</div>
';
}
}
}
}
}
}
}
}
}else{
?>
<div class="boxui box-title">
<h3>Registrate</h3>
</div>
<div class="boxui box-con">
<div class="wrap">
<form action="index.php?id=register" method="POST">
<input style="opacity: 0.7;" class="bar curved5" name="account" id="account" onfocus="if(this.value=='USER ID') this.value='';" onblur="if(this.value=='') this.value='USER ID';" value="USER ID" type="text">
<br><div class="sb-sep"></div>
<input style="opacity: 0.7;" class="bar curved5" name="nombre" onfocus="if(this.value=='Nombre real') this.value='';" onblur="if(this.value=='') this.value='Nombre real';" value="Nombre real" type="text" id="nombre">
<br><div class="sb-sep"></div>
<input style="opacity: 0.7;" class="bar curved5" name="pass" onfocus="if(this.value=='Palavra-Passe') this.value='';" onblur="if(this.value=='') this.value='contraseña';" value="contraseña" type="password" id="pass">
<br><div class="sb-sep"></div>
<input style="opacity: 0.7;" class="bar curved5" name="rpass" onfocus="if(this.value=='Palavra-Passe') this.value='';" onblur="if(this.value=='') this.value='contraseña';" value="contraseña" type="password" id="rpass">
<br><div class="sb-sep"></div>
<input style="opacity: 0.7;" class="bar curved5" name="email" onfocus="if(this.value=='E-mail') this.value='';" onblur="if(this.value=='') this.value='E-mail';" value="E-mail" type="text" id="email">
<br><div class="sb-sep"></div>
<input style="opacity: 0.7;" class="bar curved5" name="cborrado" onfocus="if(this.value=='Código de borrado') this.value='';" onblur="if(this.value=='') this.value='Código de borrado';" value="Código de borrado" type="text" id="cborrado">
<br><div class="sb-sep"></div>
<input style="opacity: 0.7;" class="bar curved5" name="captcha" onfocus="if(this.value=='Captcha') this.value='';" onblur="if(this.value=='') this.value='Captcha';" value="Captcha" type="text" id="captcha">
<br><div class="sb-sep"></div>
<img src="./captcha/captcha.php" title="Captcha"/>
<br><div class="sb-sep"></div>
<center><input id="submitBtn" type="submit" name="submit" value="Registar" class="btn s2" /></center>
</form>
<textarea class="cgd">TERMINOS DE USO
Este sitio es probable que tenga un contenido que no está de acuerdo o no pueden entender. Si usted insiste en navegar por este sitio, por favor, tenga en cuenta que cualquier persona o empresa / socio de la entidad de Gameforge, Ymir, Ongame, NCSoft no se les permite ver nuestro contenido. Cualquier persona que revele información privada en este sitio web para una empresa o entidad será inmediatamente bloqueado. Esta área es de propiedad privada y operada sin ningún tipo de beneficio comercial o para. Si usted utiliza nuestros enlaces o nuestras descargas, está confirmando y aceptando plenamente con todas las condiciones de este sitio. Mediante la aceptación de las condiciones de uso, también está de acuerdo en que las normas, las opiniones y el contenido puede ser modificado en cualquier momento a discreción de nuestro equipo.
AVISO DE LA LEGALIDAD
Si la información contenida en este sitio web se da a conocer a una empresa de la entidad / empresa u otra violación de los términos y condiciones de este sitio. La información obtenida será ilegal y por lo tanto no es admisible en la corte.
ADVERTENCIA vulgaridad
Parte de la información mostrada en este sitio web puede contener información que no saben o quieren estar al tanto. Usted acepta que es al menos 12 años o que tenga el consentimiento de sus padres a visitar este sitio.
AVISO DE USO PERSONAL
Al aceptar este acuerdo, se trata de una pensión privada de este sitio, ya que viola los términos de uso, como se indica. Usted también se compromete a cumplir con todo el personal en este sitio. El incumplimiento de estas normas dará lugar a la pérdida de servicio.
ADVERTENCIA SOBRE DONACIONES
Donaciones para el servidor, que acepta los términos y condiciones de uso del servicio que se describe a continuación, no realizamos reembolsos a menos que tenga un problema técnico con una donación. Nos reservamos el derecho a rechazar, eliminar o tomar cualquier acción necesaria si uno de sus personajes de manera explícita o implícita viola las reglas que figuran en la resolución del juego / foro. Si desea donar, pero no quiere nada a cambio, por favor háganoslo saber por e-mail. Por favor, no envíe dinero para GM, sólo tiene que utilizar nuestra página web, este es el único lugar donde sus donaciones ayudarán al desarrollo de nuestra Comunidad.
DERECHOS DE AUTOR
Por favor, tenga en cuenta que cualquier cuenta creada para el uso de MT2Portugalia y todos sus servicios, incluyendo pero no limitado al foro, cuentas de juego, son propiedad exclusiva de MT2Portugalia puede ser suspendido en cualquier momento con o sin causa. Al crear una cuenta a través de nuestro servicio y nos reservamos el derecho a recuperar la cuenta en cualquier momento, si queremos. También tenga en cuenta que hacer una donación, no compre cualquier servicio, sólo muestra su aprecio por nuestro proyecto y, como tal, aún está sujeto a reglas y regulaciones establecidas por el MT2Portugalia equipo.
ADVERTENCIA DE SEGURIDAD
Al crear una cuenta en MT2Portugalia, está de acuerdo en que la seguridad es su responsabilidad y será responsable de todas las acciones que tienen que ver con su cuenta. También estamos de acuerdo que usted es consciente de que para dar su contraseña puede comprometer la seguridad de su cuenta, y dar su contraseña a terceros acepta plenamente todas las consecuencias.
Cconcorda reconocer que si recibe un archivo desde cualquier lugar, excepto el MT2Portugalia sitio web oficial, este archivo puede contener software malicioso conocido como "key logger" no nos hacemos responsables de las consecuencias que se producen después de la descarga del software de fuentes externas.
Advertencia sobre la seguridad
El "fraude" que puede ocurrir en el caso de un comercio o la venta no serán reembolsados, y las cuentas que están siendo vendidos o intercambiados será suspendido de manera indefinida y todos los involucrados en esta venta puede ser objeto de enjuiciamiento.
AVISO DE PROTECCIÓN DE LA PRIVACIDAD
Toda la información recogida en nuestros servidores no será revelada a terceros. Nosotros respetamos su privacidad y la promesa de no comprobar su diálogo o de sus transacciones, a menos que exista un conflicto sobre su cuenta o su carácter.</textarea>
<!--- fin content--->
</div>
<?
if(isset($create)){
echo ' <table width="396">
<tr>
<td width="83"> </td>
<td width="139">Nombre</td>
<td width="158">'.$nick.'</td>
</tr>
<tr>
<td> </td>
<td>Contraseña</td>
<td>***********</td>
</tr>
<tr>
<td> </td>
<td>Re. Contraseña</td>
<td>***********</td>
</tr>
<tr>
<td> </td>
<td>Email</td>
<td>'.$email.'</td>
</tr>
<tr>
<td> </td>
<td>Codigo Borrado</td>
<td>'.$borrado.'</td>
</tr>
</table>
';
}
}
?>
Pero lo que sucede, es que no solo se oculta el formulario, si no tambien los boxes restantes.
Alguien podría decirme como solo oculto el formulario del box?
Saludos.