todos_ocupados
Usuario Novato
Usuario Novato

Miren pues aqui tengo una duda/problema

Despues de bastantes problemas y de solucionarlos todos me ha salido uno que no puedo solucionar.

He creado un formulario (conectando a la DB.... [todo lo necesario]) para que la gente se registre. Esta aqui: planetgame.serverus.org/register.php

Bueno, el tema es que si rellenas el form y lo envias te redirige al /registrar.php (bien), sale que la conexion con la DB se ha hecho correctamente pero no se ha efectuado el registro en la DB, ni hay nuevo usuario ni nada.....

Este sistema esta sacado de aqui: http://www.maestrosdelweb.com/editorial/phpreusr/

En el primer codigo php hay un fallo:
----
[SIZE="7"]<[/SIZE]FORM ACTION="registrar.php" METHOD="post">
Nick : <INPUT TYPE="text" NAME="nick" SIZE=20 MAXLENGTH=20>
<BR>
Email: <INPUT TYPE="text" NAME="email" SIZE=28 MAXLENGTH=100>
<BR>
Password: <INPUT TYPE="password" NAME="password"
SIZE=28 MAXLENGTH=20>
<BR>
Nombre: <INPUT TYPE="text" NAME="nombre" SIZE=28
MAXLENGTH=255>
<BR>
<INPUT TYPE="submit" CLASS="boton" VALUE="Registrar">
</FORM>[/code]
----
Se les habia olvidado poner la flechita que inicia el form...

Avatar Image
@man / @woman
@man / @woman

A ver... ese es el formulario... que en principio funciona.

Así que el fallo estara en registrar.php, tienes que ver si primero llegan los datos, después si realmente hace la conexión, después ver que devuelve la llamada a la base de datos...

todos_ocupados
Usuario Novato
Usuario Novato

Pero es que he revisado 54545456 veces el registrar.php, el ingresar.php, el include y todos los archivos pero no consigo hallar la solucion...

Saludos!!

Avatar Image
@man / @woman
@man / @woman

Pero no se basa en revisar... sino en saber que va haciendo el script... por ejemplo que reciba bien los datos ¿en que variable guardas el mail? por ejemplo... pues después un echo de esa variable para ver que llega correctamente....

Ir paso a paso para ver hasta donde es correcto.

Avatar Image
Machacateclados
Machacateclados

Pon un print mysql_error(); despues de la consulta... así te mostrará el error. A mime pasa muy seguido que es por un error de dedo en los nombres de las tablas.

Avatar Image
Machacateclados
Machacateclados

Eso es pones:
[Como hagas tu el quey]
or die ("Error: ".mysql_error())

Avatar Image
Come y duerme en el foro
Come y duerme en el foro

Te lo arreglo yo.

En register.php (o el formulario) pon esto:

<FORM ACTION="registrar.php" METHOD="post">
Nick : <INPUT TYPE="text" NAME="nick" SIZE=20 MAXLENGTH=20> <BR> Email: <INPUT TYPE="text" NAME="email" SIZE=28 MAXLENGTH=100><BR>
Password: <INPUT TYPE="password" NAME="password" SIZE="28 MAXLENGTH=20> <BR>
Nombre: <INPUT TYPE="text" NAME="nombre" SIZE=28 MAXLENGTH=255> <BR> <INPUT TYPE="submit" name="form" CLASS="boton" VALUE="Registrar">
</FORM>



Y en el registrar.php pon esto:

<?
if($_POST[form]) {

conec = mysql_connect(host,user,contraseña)
conec1 = mysql_select_db(BD,$conectar) or exit('No existe la base de datos.') ;
function quitar($texto) {
$texto = trim($texto) ;
$texto = htmlspecialchars($texto) ;
$texto = str_replace(chr(160),'',$texto) ; return $texto ;
}
$nick = quitar($_POST[nick]) ;
$email = quitar($_POST[email]) ;
$con = mysql_query("select count(id) from usuarios where nick='$nick' or email='$email'") ;
if(mysql_result($con,0,0)) {
echo 'El nick ya existe en la base de datos o ya está registrado el email. Haz click <a href="javascript:history.back()">aquí</a> para regresar.' ;
}
else {
$nick = quitar($_POST[nick]) ;
$email = quitar($_POST[email]) ;
$password = md5(md5(quitar($_POST password]))) ;
$nombre = quitar($_POST[nombre]) ;
mysql_query("insert into usuarios (nick,email,password,nombre) values ('$nick','$email','$password','$nombre')") ;
echo 'Has sido registrad@.' ;
}
}
else {
?>
<?
}
?>

Avatar Image
Machacateclados
Machacateclados

Que es la función quitar() ??

Avatar Image
Come y duerme en el foro
Come y duerme en el foro

Es una funcion que te quita los espacios:

Si escribis en nombre: G e r m a n; deposita en la base de datos German.

Avatar Image
Machacateclados
Machacateclados

German yo había puesto lo del mysql_error() para que mysql te dijera que error daba, no un mensaje preparado para que cuando falle salga.

carlitos_mel
Usuario Novato
Usuario Novato

Ola buenas noches.....yo queria preguntar a ver si alguien me puede ayudar con un tema que no entiendo mucho, mira yo ya tengo mi pagina web casi creada pero tengo un problema, que kiero que asta que no estes registrado en la pagina e identificado no puedas ver nada de la pagina ni precios ni nada vale?? me comprendeis lo que kiero decir??

aka adjunto el codigo para ver si alguien me puede ayudar vale?? gracias.

clientes.php

<body>
<form name="EnvioDatos" method="post" action="clientes1.php">
<table width="376" height="215" border="0">
  <tr>
    <td width="296"><strong>Usuario:
    <input type="text" name="usu" size="30" /></strong></td>
  </tr>
  <tr>
    <td><strong>Contrasena: <input type="text" name="pass" size="30" /></strong></td>
  </tr>
  <tr>
    <td><input type="submit" value="enviar" />&nbsp;</td>
  </tr>
  <tr>
    <td><input type="reset" value="limpiar" />&nbsp;</td>
  </tr>
</table>
</form>
</body>

clientes1.php

<?
session_start();
$usuario=$_POST['usu'];
$contrasena=$_POST['pass'];
$link = mysql_connect("localhost", "root");
mysql_select_db("moviles", $link);
$consulta="SELECT contrasena FROM registro WHERE usuario='$usuario';";
$result = mysql_query($consulta);
$valor=mysql_num_rows($result);
if ($valor==0)
{
header("Location:clientes.php");
}
else
{
$contra=mysql_result($result,0);
if ($contra==$contrasena)
{
$_SESSION['usuario']=$usuario;
header("Location:index/Marco3.php");
}
else
{
// usuario existe contraseña mal
{
header("Location:clientes.php");
}
}
}
?>

comprobar.php

<body>
<?
session_start();
if (!isset($_SESSION['usuario']));
{
    $usuario=$_POST['usu'];
    $contrasena=$_POST['pass'];
    $c=mysql_connect("localhost","root","");
    mysql_select_db("moviles",$c);
    $consulta= "SELECT pass FROM registro WHERE usu='".$usuario."';";
    $result = mysql_query($consulta,$c);
    $final=mysql_result($result,0);
    if($contrasena==$final)
    {
    $_SESSION['usuario']=$usuario;
    header('Location:comprobar.php ')
    }
    else
    {
    header('Location:comprobar.php ')
    }
    else
    {
    $usuario=$_SESSION['usuario'];
    echo "<h1>";
    echo "usted esta identificado como $usuario compruebe que ahora ya puede ver el resto de la pagina";
    echo "</h1>";
    }
}
?>
</body>

formulario.html

<body>
<form name="EnvioDatos" method="post" action="formulario.php">
<table width="365" border="0">
  <tr>
    <td width="359"><strong>Nombre:   
        <input type="text" name="nombre" /></strong></td>
  </tr>
  <tr>
    <td><strong>Apellidos: <input type="text" name="apellidos" /></strong></td>
  </tr>
  <tr>
    <td><strong>Usuario: <input type="text" name="usu" /></strong></td>
  </tr>
  <tr>
    <td><strong>Contrasena:
        <input type="text" name="pass" /></strong></td>
  </tr>
  <tr>
    <td><strong>Nif: <input type="text" name="nif" /></strong></td>
  </tr>
  <tr>
    <td><strong>Domicilio Entrega: <input type="text" name="domicilio" /></strong></td>
  </tr>
  <tr>
    <td><strong>Codigo Postal: <input type="text" name="codigo" /></strong></td>
  </tr>
  <tr>
    <td><strong>Poblancion: <input type="text" name="poblacion" /></strong></td>
  </tr>
  <tr>
    <td><strong>Provincia:</strong>      <select name="provincia" id="provincia">
    <option selected="selected" value="0">Provincia </option>
    
    
    <option value="A Coruña">A Coruña</option>
<option value="Albacete">Albacete</option>
<option value="Alicante">Alicante</option>
<option value="Almería">Almería</option>
<option value="Andorra">Andorra</option>
<option value="Araba">Araba</option>
<option value="Asturias">Asturias</option>
<option value="Ávila">Ávila</option>
<option value="Badajoz">Badajoz</option>
<option value="Barcelona">Barcelona</option>
<option value="Bizkaia">Bizkaia</option>
<option value="Burgos">Burgos</option>
<option value="Cantabria">Cantabria</option>
<option value="Castellón">Castellón</option>
<option value="Ceuta">Ceuta</option>
<option value="Ciudad Real">Ciudad Real</option>
<option value="Cuenca">Cuenca</option>
<option value="Cáceres">Cáceres</option>
<option value="Cádiz">Cádiz</option>
<option value="Córdoba">Córdoba</option>
<option value="Girona">Girona</option>
<option value="Granada">Granada</option>
<option value="Guadalajara">Guadalajara</option>
<option value="Guipuzkoa">Guipuzkoa</option>
<option value="Huelva">Huelva</option>
<option value="Huesca">Huesca</option>
<option value="Illes Balears">Illes Balears</option>
<option value="Jaén">Jaén</option>
<option value="La Rioja">La Rioja</option>
<option value="Las Palmas de GC">Las Palmas de GC</option>
<option value="León">León</option>
<option value="Lleida">Lleida</option>
<option value="Lugo">Lugo</option>
<option value="Madrid">Madrid</option>
<option value="Melilla">Melilla</option>
<option value="Murcia">Murcia</option>
<option value="Málaga">Málaga</option>
<option value="Navarra">Navarra</option>
<option value="Ourense">Ourense</option>
<option value="Palencia">Palencia</option>
<option value="Pontevedra">Pontevedra</option>
<option value="Portugal">Portugal</option>
<option value="Salamanca">Salamanca</option>
<option value="Segovia">Segovia</option>
<option value="Sevilla">Sevilla</option>
<option value="Soria">Soria</option>
<option value="Sta Cruz de Tenerife">Sta Cruz de Tenerife</option>
<option value="Tarragona">Tarragona</option>
<option value="Teruel">Teruel</option>
<option value="Toledo">Toledo</option>
<option value="Valencia">Valencia</option>
<option value="Valladolid">Valladolid</option>
<option value="Zamora">Zamora</option>
<option value="Zaragoza">Zaragoza</option>        </select>    </td>
  </tr>
  <tr>
    <td><strong>Correo Electronico: <input type="text" name="correo" /></strong></td>
  </tr>
  <tr>
    <td><strong>Telefono: <input type="text" name="telefono" /></strong></td>
  </tr>
  <tr>
    <td><strong>Movil: <input type="text" name="movil" /></strong></td>
  </tr>
  <tr>
    <td><input type="submit" value="Enviar" />&nbsp;</td>
    <td><input name="reset" type="reset" value="Limpiar" /></td>
  </tr>
</table>
</form>
</body>

formulario.php

<body>
<?
$nombre=$_POST['nombre'];
$apellidos=$_POST['apellidos'];
$nif=$_POST['nif'];
$domicilio=$_POST['domicilio'];
$codigo=$_POST['codigo'];
$poblacion=$_POST['poblacion'];
$provincia=$_POST['provincia'];
$correo=$_POST['correo'];
$telefono=$_POST['telefono'];
$movil=$_POST['movil'];
$usuario=$_POST['usu'];
$contrasena=$_POST['pass'];
$c=mysql_connect("localhost", "root", "");
mysql_select_db("moviles", $c);
$consulta="insert into registro values(\'\',\'\',\'\',\'\',\'\',\'\',\'\',\'\',\'\',\'\',\'\',\'\');";
mysql_query ($consulta, $c);
echo "Los datos se han insertado corretamente. Muchas gracias";
?>
</body>

esto es todo lo que tengo en cuanto a lo de registrarse vale?? luego a parte tengo las demas paginas, si el que me pueda ayudar necesita algo mas que me lo pida y lo subo vale?? yo necesito saber como se ace....y kiero aprender asinque si no es muxa molestia me lo podria explicar?? muxisimas gracias por to....

ATENCIÓN: Este tema no tiene actividad desde hace más de 6 MESES,
te recomendamos abrir un nuevo tema en lugar de responder al actual
Opciones:
Ir al subforo:
Permisos:
TU NO PUEDES Escribir nuevos temas
TU NO PUEDES Responder a los temas
TU NO PUEDES Editar tus propios mensajes
TU NO PUEDES Borrar tus propios mensajes
Temas similares
TemaUsuariosRespuestasVisitasActividad
Por: , el 02/Mar/2004, 13:22
LJA_Randill NoSetup.org shruken33kFeb/09
Por: User 4545497, el 20/Jun/2009, 00:00
User 4545497 aerialss88 carlitos_mel GestionXls henrykoo243kJul/09
Por: , el 24/Abr/2004, 15:56
saja1869 nuriaatamian BenderMan b3elz3bub NoSetup.org46kSep/09
Por: , el 10/Ene/2009, 14:57
syantanib NoSetup.org aerialss8822kJan/09
Por: , el 02/May/2003, 08:21
MaIcOl x-lord12kMay/03