Foros del Web » Programando para Internet » PHP »

(Ayuda] PHP+MYSQL

Estas en el tema de (Ayuda] PHP+MYSQL en el foro de PHP en Foros del Web. Bueno me acabo de registrar en el foro ya que me estoy haciendo de experiencia en PHP pero en este momento estoy con un problema ...
  #1 (permalink)  
Antiguo 26/11/2009, 12:30
uv3
 
Fecha de Ingreso: noviembre-2009
Mensajes: 31
Antigüedad: 14 años, 4 meses
Puntos: 0
(Ayuda] PHP+MYSQL

Bueno me acabo de registrar en el foro ya que me estoy haciendo de experiencia en PHP pero en este momento estoy con un problema que estoy seguro que es re sencillo pero no puedo solucionarlo de ninguna manera , despues de haber intentado todo.
La cuestion es que debo crear una pagina web que tenga registros de usuarios en una base de datos.
Mi problema es que no me da error pero tampoco me inserta los datos despues de haber provado de muchas maneras.

A continuacion pongo el formulario en el cual ingreso los datos y el php al que llamo luego de darle al boton "registrar".

<html>
<body>
<form name="register" action="reg2.php" method="post" >

<div class="form_row">

<label class="contact"><strong>Usuario</strong></label>
<input type="text" class="contact_input" name="user" />
</div>


<div class="form_row">
<label class="contact"><strong>Contraseña</strong></label>
<input type="text" class="contact_input" name="pass1" />
</div>

<div class="form_row">
<label class="contact"><strong>Conf contraseña</strong></label>
<input type="password" class="contact_input" name="pass2" />
</div>


<div class="form_row">
<input type="submit" class="register" value="Registrar" />
</div>
</form>
</div>
</body>
</html>

Ahora el archivo reg.php


<?php
$srv="localhost"; //server mysql
$bdname="web"; // nombre bd
$bduser="root"; // user mysql
$bdpass=""; //contraseña del user mysql

//primero comprobamos que no exista el usuario.
$user = $_POST['user'];
$pass1 = $_POST['pass1'];
$pass2 = $_POST['pass2'];

$ssql="SELECT * FROM usuarios WHERE user='" . $user . "'";
$link=mysql_connect($srv,$bduser,$bdpass);
$result=mysql_db_query($bdname,$ssql,$link);

if(mysql_num_rows($result)){
echo "Nombre de usuario en uso.";
} else {
mysql_free_result($result);

//procedimos a comprobar contraseñas
if($pass1!=$pass2) {
echo "Error: las contraseñas especificadas son distintas";
} else {
$ssql="INSERT INTO usuarios (user, pass) VALUES ('".$user."','".$pass1."')";

if(mysql_db_query($bdname,$ssql,$link)){
echo "Usuario registrado con exito.";
} else {
echo "Error registrando usuario.";
}
}
}
?>

Tengo el easyPHP corriendo, y con phpMyAdmin creada la base de datos "web " con una tabla que se llama "usuarios" con 2 campos (user, pass).

PD: Desde ya pido disculpas por la mala indentacion del archivo php.

Espero ayuda , muchas gracias.

Anexo imagen de phpMyAdmin : Bue no me deja subir imagenes.

Última edición por uv3; 26/11/2009 a las 12:51
  #2 (permalink)  
Antiguo 26/11/2009, 12:39
Avatar de xdrtas  
Fecha de Ingreso: junio-2008
Ubicación: Venezuela
Mensajes: 97
Antigüedad: 15 años, 10 meses
Puntos: 13
Respuesta: (Ayuda] PHP+MYSQL

Hola, prueba lo siguiente:
Código php:
Ver original
  1. $ssql="INSERT INTO usuarios (user, pass) VALUES ('".$user."','".$pass1."')";

saludos.
  #3 (permalink)  
Antiguo 26/11/2009, 12:49
uv3
 
Fecha de Ingreso: noviembre-2009
Mensajes: 31
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: (Ayuda] PHP+MYSQL

Bueno gracias por tu solucion , pero no es esta la solucion del problema sigue sin insertad nada. Lo que yo encuentro raro es que no me da ningun error , ni ningun mensaje de los que tiene el php, tan solo al darle al boton registrar la pagina queda en blanco y nada sucede. Por las dudas checkeo el codigo fuente y es el del archivo php. Pero sin errores ni nada. Asi que supongo sea un problema aejano a estos archivos , tal vez el firewall o algo asi podria ser?

PD: Como haces para que se vea en codigo php en colores? , o se los pones vos nomas ?
  #4 (permalink)  
Antiguo 26/11/2009, 12:52
 
Fecha de Ingreso: octubre-2008
Mensajes: 365
Antigüedad: 15 años, 5 meses
Puntos: 12
Respuesta: (Ayuda] PHP+MYSQL

No será qu estás viendo otra base de datos; según tu variable tu bd es "web"

salu2
__________________
No hay mail que por internet no venga
  #5 (permalink)  
Antiguo 26/11/2009, 12:57
uv3
 
Fecha de Ingreso: noviembre-2009
Mensajes: 31
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: (Ayuda] PHP+MYSQL

Cita:
Tengo el easyPHP corriendo, y con phpMyAdmin creada la base de datos "web " con una tabla que se llama "usuarios" con 2 campos (user, pass).
Si te refieres a que este errado de base de datos, no es asi . Igual gracias por la posible solucion.

De cualquier manera se que en algo esta super errado ya que no inserta !!

PD: Si le ingreso user & pass , o si le dejo los campos blancos, no varia en lo absoluto me sigue mostrando una pagina en blanco.
  #6 (permalink)  
Antiguo 26/11/2009, 13:42
Avatar de xdrtas  
Fecha de Ingreso: junio-2008
Ubicación: Venezuela
Mensajes: 97
Antigüedad: 15 años, 10 meses
Puntos: 13
Respuesta: (Ayuda] PHP+MYSQL

Hola de nuevo, hice la prueba y vi que no tenias en tu código la conexión a la base de datos, o sea --> mysql_select_db($bdname, $link);

No uses mysql_db_query, esta función es obsoleta, en php.net/manual/en/function.mysql-db-query.php lo podrás leer, usa mejor mysql_query();

Ahora te pongo el código:
Código php:
Ver original
  1. $srv="localhost"; //server mysql
  2.     $bdname="test"; // nombre bd
  3.     $bduser="root"; // user mysql
  4.     $bdpass="055683"; //contraseña del user mysql
  5.  
  6.     //primero comprobamos que no exista el usuario.
  7.     $user = $_POST['user'];
  8.     $pass1 = $_POST['pass1'];
  9.     $pass2 = $_POST['pass2'];
  10.  
  11.     $ssql = "SELECT * FROM usuarios WHERE user='" . $user . "'";
  12.    
  13.     $link = mysql_connect($srv,$bduser,$bdpass) or die("No se conecta");
  14.     mysql_select_db($bdname,$link);
  15.    
  16.     $result = mysql_query($ssql);
  17.  
  18.     if($result == true)
  19.     {
  20.         if(mysql_num_rows($result) == 1){
  21.             echo "Nombre de usuario en uso.";
  22.         } else {
  23.             mysql_free_result($result);
  24.    
  25.             //procedimos a comprobar contraseñas
  26.             if($pass1!=$pass2)
  27.             {
  28.                 echo "Error: las contraseñas especificadas son distintas";
  29.             }
  30.             else
  31.             {
  32.                 $ssql="INSERT INTO usuarios (user, pass) VALUES ('".$user."','".$pass1."')";
  33.                 $result = mysql_query($ssql,$link);
  34.  
  35.                 if($result){
  36.                     echo "Usuario registrado con exito.";
  37.                 } else {
  38.                     echo "Error registrando usuario.";
  39.                 }
  40.             }
  41.         }
  42.     }
  43.     else
  44.     {
  45.         echo "error";
  46.     }

A mi ya me funcionó. Espero que ahora si lo puedas resolver. Saludos.
  #7 (permalink)  
Antiguo 26/11/2009, 17:15
uv3
 
Fecha de Ingreso: noviembre-2009
Mensajes: 31
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: (Ayuda] PHP+MYSQL

Muchas gracias por la ayuda, el problema como yo pensaba era una estupides... Si. El problema era que yo ejecutaba el html desde la carpeta donde se encontraba y no desde localhost jaja ! y yo no sabia nada de eso. Pero ahora ya si, muchas gracias ;)
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 02:19.