Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/05/2004, 21:08
Avatar de orochies
orochies
 
Fecha de Ingreso: septiembre-2003
Ubicación: Guatemala
Mensajes: 260
Antigüedad: 20 años, 7 meses
Puntos: 2
problema con PHP y MySQL

Hola pues primero que nada debo desiros que apenas empieso en esto del php y que de base de datos solo se lo basico
(Crear tablas, Base de datos, Insertar Valores, Seleccionarlos).

Y bueno pues pense que eso me seria suficiente para empezar con el php, y bien me lance no eh leido mucho pero quise empezar estudiando un manual de como crear un sistema de usuarios para my pagina que lo encontre en esta url...

http://maestrosdelweb.com/editorial/phpreusr/

Y bien empese a estudiarlo pero solo segui las indicaciones y bueno donde tube mis primeros problemas fue con eso de las cookies ya que el link que el proporsiona para saber mas de ello no funciona pues tube que omitirlo pensando que no seria de mucha importancia si seguia los pasos tal cual decia...

Y bueno pues lo hice pero al probar todo ello me encontre con my primer problema:

Al entrar a la pagina donde tenia que poner my nick y pass ( quise probar primero aca para ver que pasaba ya que aun no me avia registrado ) me salio el siguiente error:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in D:\miweb\info\ingresar.php on line 42

Usuario no existente en la base de datos

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in D:\miweb\info\ingresar.php on line 65

Como ven pues me dio el mensaje obiamente de "Usuario no existente en la base de datos" pero porque me tiro los demas errores de "Warning" que fue lo que paso ...

Ya que lo unico que le agregue al codigo de "ingresar.php" Fue my conexion a my base de datos asi:

<?php

$host = "localhost";
$user = "orochies";
$password = "My_pass";

/* Conectando al servidor local de MySQL */

$mysql = mysql_connect($host, $user, $password)
or exit();


function quitar($mensaje)
{
$mensaje = str_replace("<","&lt;",$mensaje);
$mensaje = str_replace(">","&gt;",$mensaje);
$mensaje = str_replace("\'","'",$mensaje);
$mensaje = str_replace('\"',"&quot;",$mensaje);
$mensaje = str_replace("\\\\","\",$mensaje);
return $mensaje;
}

if(trim($HTTP_POST_VARS["nick"]) != "" && trim($HTTP_POST_VARS["email"]) != "")
{
$sql = "SELECT id FROM usuarios WHERE nick='".quitar($HTTP_POST_VARS["nick"])."'";
$result = mysql_query($sql);
if($row = mysql_fetch_array($result))
{
echo "Error, nick escogido por otro usuario";
}
else
{
$sql = "INSERT INTO usuarios (nick,password,nombre,email) VALUES (";
$sql .= "'".quitar($HTTP_POST_VARS["nick"])."'";
$sql .= ",'".quitar($HTTP_POST_VARS["password"])."'";
$sql .= ",'".quitar($HTTP_POST_VARS["nombre"])."'";
$sql .= ",'".quitar($HTTP_POST_VARS["email"])."'";
$sql .= ")";
mysql_query($sql);
echo "Registro exitoso!";
}
mysql_free_result($result);
}
else
{
echo "Debe llenar como minimo los campos de email y password";
}
mysql_close();
?>


Y lo demas como podran ver no le altere nada ( ¿Tendria que averlo hecho? ) ...

Y hantes que todo esto ya habia creado la tabla cual decia el tutorial en la base de datos asi:

CREATE TABLE usuarios (
id bigint(7) NOT NULL auto_increment,
nick char(100) NOT NULL,
password char(100) NOT NULL,
nombre char(255) default NULL,
email char(100) default NULL,
KEY id (id))

My unica duda es que en el codigo que crea la tabla esta este campo en la primer linea:

id bigint(7) NOT NULL auto_increment,

¿Para que me servira esto si no se declara en el formulario de envio a la base de datos solo esta declarado ( nick, password, nombre, email, )...?

Y bien pues hasta ahora es my primer problema al querer crear mi identificacion de usuarios...

AHHHH... y Otra duda es que en la conexion a la base de datos:

$host = "localhost";
$user = "orochies";
$password = "My_pass";

/* Conectando al servidor local de MySQL */

$mysql = mysql_connect($host, $user, $password)
or exit();


No visualiso una conexion especifica al nombre de una base de datos...

Este puede ser el problema espero me puedan ayudar...

Y bien por ahora es todo espero que alguien estudie el tutorial
y pueda aclararlo correctamente...

http://maestrosdelweb.com/editorial/phpreusr/

Espero no haber olvidado algo Es todo bye...
__________________
QMD...