Foros del Web » Programando para Internet » PHP »

Problema PHP y bases de Datos Mysql

Estas en el tema de Problema PHP y bases de Datos Mysql en el foro de PHP en Foros del Web. Hola, para empezar ya agradezco cualquier ayuda. Me he iniciado hace poco en el php. ya que siempre he utilizado Flash y HTML pero si ...
  #1 (permalink)  
Antiguo 25/02/2008, 16:01
 
Fecha de Ingreso: febrero-2008
Ubicación: Tarragona ESPAÑA
Mensajes: 4
Antigüedad: 16 años, 8 meses
Puntos: 0
Problema PHP y bases de Datos Mysql

Hola, para empezar ya agradezco cualquier ayuda. Me he iniciado hace poco en el php. ya que siempre he utilizado Flash y HTML pero si quieres avanzar debes aprender mas...
Mi problema es que he creado una zona de usuarios y todo a ido perfecto pero cuando ya estaba acabando, se ve que he tocao algo o no se pero todos los registro que introduco me los pone asi
Lo veis?? no me mete lo datos ni de nombre ni login no nada solo la contraseña encriptada. Uso los siguientes scrips que he sacado de un tutorial de estos de internet, weno concretamente de http://www.dxpro.es/index.php?topic=323.msg600

Una pagina formulario:

Código HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Registrate</title>
<style type="text/css">
<!--
.Estilo1 {font-family:Geneva, Arial, Helvetica, sans-serif}
.Estilo2 {color: #999999}
.Estilo4 {color: #999999; font-size: 10px; }
.Estilo5 {	font-family: Geneva, Arial, Helvetica, sans-serif;
	color: #999999;
	font-size: 10px;
}
.Estilo6 {font-family: Geneva, Arial, Helvetica, sans-serif; }
-->
</style>
</head>
<?
session_start();
if(isset($SESSION)){
header("location: user.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 */
?>
<html><head><title>Necesita identificación! </title></head>
<body>
<div align="left" class="Estilo2">
  <p class="Estilo1">&nbsp;</p>
  <table width="1175" border="0">
    <tr>
      <td width="507" height="98">&nbsp;</td>
      <td width="352"><p class="Estilo6">REGISTRO sal150web.com </p>
      <p class="Estilo6">Por favor introduce tus datos</p>
      </td>
      <td width="302">&nbsp;</td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td><form action="crea_user.php" method="POST">
Login: <input type="text" name="login"><br>
Password: <input type="password" name="pass1"><br>
Repite Password: <input type="password" name="pass2"><br>
Nombre: <input type="text" name="nombre"><br>
Apellidos: <input type="text" name="apellidos"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit" name="Crear">
</form></td>
      <td>&nbsp;</td>
    </tr>
  </table>
  <p class="Estilo1">&nbsp;</p>
</div>
<p align="center"><span class="Estilo5">sal150web.com &copy; Todos los derechos reservados. Zona restringida, prohibido su acceso sin autorizaci&oacute;n.<br />
Web optimizada para una resoluci&oacute;n de 1024x768 p&iacute;xeles y paleta de colores de 24 bits.<br />
Todas las imagenes o gr&aacute;ficos pertenecen a sal150web.com, [email protected]</span></p>
</body>
</html>
<?
} /* Y cerramos el else */ 
?>
</body>
</html> 
Y otra para crear el usuario

Código HTML:
<?
$server="localhost";
$database="mi bd";
$dbpass="mi pass";
$dbuser="mi user2";
 
$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)){
echo "El usuario ya existe en la BD";
} else {
mysql_free_result($result); 
if($pass1!=$pass2) {
echo "Los passwords deben coincidir<br>";
echo 'Clica <a href="form.php">aquí</a> para volver al formulario';
} else {
$pass1=crypt($pass2, "semilla"); 
$query="INSERT INTO usuarios (login, nombre, apellidos, password, email) VALUES ('$login','$nombre','$apellidos','$pass1','$email')";
 
$result=mysql_db_query($database,$query,$link);
if(mysql_affected_rows($link)){
echo "Usuario introducido correctamente";
} else {
echo "Error introduciendo el usuario";
}
}
}
?> 
Necesito ayuda urjente porque lo he probado todo y no se que pasa, he vuelto a poner los scripts originales y nada. ayuda!!!!
Muchas gracias
  #2 (permalink)  
Antiguo 25/02/2008, 16:10
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Re: Problema PHP y bases de Datos Mysql

Prueba, usar en tus paginas, en lugar de directamente $login, usar $_POST['login'], y asi sucesivamente sobre todas las variables que vengan de formularios y $_GET['variable'] para las variables que vengan de un URL.

Saludos.
  #3 (permalink)  
Antiguo 25/02/2008, 16:19
 
Fecha de Ingreso: febrero-2008
Ubicación: Tarragona ESPAÑA
Mensajes: 4
Antigüedad: 16 años, 8 meses
Puntos: 0
Muchas gracias gatorV, no sabia que el foro fuese tan efectivo, voy a probarlo y te digo

Yo he colocado esto en la linia 25
$query="INSERT INTO usuarios (login, nombre, apellidos, password, email) VALUES ($_POST['login'],$_POST['nombre'],$_POST['apellidos'],'$_POST['pass1']','$_POST['email']')";

todo seguido

y me dice

Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\Domains\sal150web.com\wwwroot\usuarios\crea_use r.php on line 25
PHP Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\Domains\sal150web.com\wwwroot\usuarios\crea_use r.php on line 25

siento las molestias soy muy nuevo en el php

ya lo he solucionado, era por las comillas, pero me dice usuario creado y ahora ni siquiera me crea la entrada con la id y la contraseña encriptada, es como si no le llegase la peticion a la bd pero me dice que usuario creado, nuse nuse. Que puede ser?

Última edición por GatorV; 25/02/2008 a las 16:40
  #4 (permalink)  
Antiguo 25/02/2008, 16:43
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Re: Problema PHP y bases de Datos Mysql

Prueba hacer asi tu Query:
Código PHP:
$query="INSERT INTO usuarios (login, nombre, apellidos, password, email) VALUES ('" $_POST['login'] . "', '" $_POST['nombre'] . "','" $_POST['apellidos'] . "','" $_POST['pass1'] . "','" $_POST['email'] . "')"
Saludos.
  #5 (permalink)  
Antiguo 26/02/2008, 07:18
 
Fecha de Ingreso: febrero-2008
Ubicación: Tarragona ESPAÑA
Mensajes: 4
Antigüedad: 16 años, 8 meses
Puntos: 0
Re: Problema PHP y bases de Datos Mysql

Por fin!!!! lo conseguí, he puesto lo que me HAS DADO y ahora funciona, muxisisisisimas gracias de verdad. Nos vemos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:59.