Foros del Web » Programando para Internet » PHP »

Ayuda con sistema de Usuarios

Estas en el tema de Ayuda con sistema de Usuarios en el foro de PHP en Foros del Web. estoy implementando un sistem,a de usuarios que encontre en la web y me da el siguiente error Warning: mysql_query() [function.mysql-query]: Access denied for user 'www-data'@'localhost' ...
  #1 (permalink)  
Antiguo 20/01/2009, 20:55
 
Fecha de Ingreso: octubre-2006
Ubicación: Valparaiso Chile
Mensajes: 228
Antigüedad: 17 años, 5 meses
Puntos: 0
Ayuda con sistema de Usuarios

estoy implementando un sistem,a de usuarios que encontre en la web y me da el siguiente error

Warning: mysql_query() [function.mysql-query]: Access denied for user 'www-data'@'localhost' (using password: NO) in /var/www
NO) in /home/servpcwe/public_html/kenpboxing/kb/admin/includes/login.php on line 11 y en otras como la 13 la 26 la 27 y la 29

este es el código

Cita:
<?php
$loginCorrecto = false;
$idUsuarioL;
$nickUsuarioL;
$emailUsuarioL;
$nombreUsuarioL;

if(isset($HTTP_COOKIE_VARS["usNick"]) && isset($HTTP_COOKIE_VARS["usPass"]))
{
$result = mysql_query("SELECT * FROM administradores
WHERE username=".$HTTP_COOKIE_VARS["usNick"]." AND password=".$HTTP_COOKIE_VARS["usPass"]."");

if($row = mysql_fetch_array($result))
{
setcookie("usNick",$HTTP_COOKIE_VARS["usNick"],time()+7776000);
setcookie("usPass",$HTTP_COOKIE_VARS["usPass"],time()+7776000);
$loginCorrecto = true;
$idUsuarioL = $row["id"];
$nickUsuarioL = $row["username"];
$emailUsuarioL = $row["email"];
$nombreUsuarioL = $row["nombre"];
}
else
{
//Destruimos las cookies.
setcookie("usNick","x",time()-3600);
setcookie("usPass","x",time()-3600);
}
mysql_free_result($result);
}
?>
Cualquier ayuda será bienvenida, Muchas Gracias de antemano

Última edición por claudio_hbl; 20/01/2009 a las 21:03
  #2 (permalink)  
Antiguo 20/01/2009, 21:01
 
Fecha de Ingreso: enero-2009
Mensajes: 34
Antigüedad: 15 años, 3 meses
Puntos: 1
Respuesta: Ayuda con sistema de Usuarios

si das mas datos como el codigo fuente quizas puedan saber el error..
  #3 (permalink)  
Antiguo 20/01/2009, 21:02
 
Fecha de Ingreso: enero-2009
Mensajes: 34
Antigüedad: 15 años, 3 meses
Puntos: 1
Respuesta: Ayuda con sistema de Usuarios

no se si quiere decir que no tiene password...
osea q estas qriendo conectar con una db que no tiene pass..
creo yo.. no me juzgen.. soy primerizo
  #4 (permalink)  
Antiguo 20/01/2009, 21:07
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Ayuda con sistema de Usuarios

¿Donde esta la conexion a la base de datos? Haces un include? Ese es todo tu codigo?
  #5 (permalink)  
Antiguo 20/01/2009, 21:12
 
Fecha de Ingreso: octubre-2006
Ubicación: Valparaiso Chile
Mensajes: 228
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: Ayuda con sistema de Usuarios

ese es todo el códigp
  #6 (permalink)  
Antiguo 20/01/2009, 21:13
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Ayuda con sistema de Usuarios

Te falta hacer la conexion a la base de datos:
Código PHP:
mysql_connect('localhost''tuUser''tuPass');
mysql_select_db('tuDb'); 
Siempre tienes que establecer una conexion con el servidor MySQL antes de hacer una consulta.
  #7 (permalink)  
Antiguo 20/01/2009, 21:24
 
Fecha de Ingreso: octubre-2006
Ubicación: Valparaiso Chile
Mensajes: 228
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: Ayuda con sistema de Usuarios

Ya puse el include con la conexion en las lineas 7 y 8

y da el siguiente mensaje :

Fatal error: Cannot redeclare conectarse() (previously declared in /var/www/kenpboxing/kb/admin/includes/conexion.php:5) in /var/www/kenpboxing/kb/admin/includes/conexion.php on line 18

1 $loginCorrecto = false;
2 $idUsuarioL;
3 $nickUsuarioL;
4 $emailUsuarioL;
5 $nombreUsuarioL;

7 include("conexion.php");
8 $link="conectarse()";

10 if(isset($HTTP_COOKIE_VARS["usNick"]) && isset($HTTP_COOKIE_VARS["usPass"]))
11 {
12 $result = mysql_query("SELECT * FROM administradores
13 WHERE username=".$HTTP_COOKIE_VARS["usNick"]." AND
password=".$HTTP_COOKIE_VARS["usPass"]."");

16 if($row = mysql_fetch_array($result))
17 {
18 setcookie("usNick",$HTTP_COOKIE_VARS["usNick"],time()+7776000);
19 setcookie("usPass",$HTTP_COOKIE_VARS["usPass"],time()+7776000);
  #8 (permalink)  
Antiguo 20/01/2009, 22:53
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Ayuda con sistema de Usuarios

Te dice que no puedes redeclarar la funcion conectarse().

PD: No te compliques agregandole los numeros de lineas manualmente, usa: [ highlight=php][/highlight]
  #9 (permalink)  
Antiguo 21/01/2009, 01:53
 
Fecha de Ingreso: noviembre-2005
Mensajes: 222
Antigüedad: 18 años, 5 meses
Puntos: 2
Respuesta: Ayuda con sistema de Usuarios

lo que está claro es que la sql no te permite acceso. Seguramente has escrito mal los datos en la funcion de conexión a la bbdd.
__________________
"Prefiero callar como un tonto, que hablar para confirmarlo"
Espectacular Portal en crecimiento: Artículos http://www.blorgia.com
  #10 (permalink)  
Antiguo 21/01/2009, 13:12
 
Fecha de Ingreso: octubre-2006
Ubicación: Valparaiso Chile
Mensajes: 228
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: Ayuda con sistema de Usuarios

Ya he revisado los datos de conexión y están ok, eso de redeclare es lo que no entiendo.
  #11 (permalink)  
Antiguo 21/01/2009, 13:13
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Ayuda con sistema de Usuarios

En PHP, cuando declaras una funcion, no puedes volver a redeclararla. Esto le crea conflicto a PHP.

Código PHP:
<?php
function hola() {
  echo 
'hola';
}

function 
hola() { //esta linea va a dar el mismo error que tienes tu
  
echo 'hola mundo';
}
?>
  #12 (permalink)  
Antiguo 21/01/2009, 14:23
 
Fecha de Ingreso: octubre-2006
Ubicación: Valparaiso Chile
Mensajes: 228
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: Ayuda con sistema de Usuarios

No veo donde esta redeclrada,

este código lo encontré hace un tiempo en la web y lo había guardado par la ocasión. y no se como solucionarlo, me puedes ayudar por favor

de antemano Gracias
  #13 (permalink)  
Antiguo 21/01/2009, 14:36
 
Fecha de Ingreso: octubre-2006
Ubicación: Valparaiso Chile
Mensajes: 228
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: Ayuda con sistema de Usuarios

Perdon el error no es en ese archivo, es en el archivo de conexion, este es el error que da "
Cita:
Fatal error: Cannot redeclare conectarse() (previously declared in /var/www/kenpboxing/kb/admin/includes/conexion.php:5) in /var/www/kenpboxing/kb/admin/includes/conexion.php on line 18
Aqui dejo el código del archivo conexion.php

Código php:
Ver original
  1. <?
  2. function Conectarse()
  3. {
  4.  
  5. $db_host="localhost"; // Host conexion localhost
  6.  
  7. $db_nombre="Basededatos"; // Nombre de la Base de Datos
  8.  
  9. $db_user="usuario"; // Nombre de usuario
  10.  
  11. $db_pass="contraseña"; // Contraseña
  12.  
  13. // Conexión $link
  14.  
  15. $link=mysql_connect($db_host, $db_user, $db_pass) or die ("Error conectando a la base de datos.");
  16. mysql_select_db($db_nombre ,$link) or die("Error seleccionando la base de datos.");
  17. return $link;
  18. }
  19. ?>
  #14 (permalink)  
Antiguo 21/01/2009, 14:41
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Ayuda con sistema de Usuarios

Pues te lo esta diciendo el error:

Fatal error: Cannot redeclare conectarse() (previously declared in /var/www/kenpboxing/kb/admin/includes/conexion.php:5) in /var/www/kenpboxing/kb/admin/includes/conexion.php on line 18

En conexion.php en la linea 5, declaras function conectarse(), luego en la linea 18 vuelves a declarar function conectarse() por eso el error.

Saludos
  #15 (permalink)  
Antiguo 21/01/2009, 14:48
 
Fecha de Ingreso: octubre-2006
Ubicación: Valparaiso Chile
Mensajes: 228
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: Ayuda con sistema de Usuarios

yo en la linea 18 veo un } cierre corchete

Que debo hacer?
  #16 (permalink)  
Antiguo 21/01/2009, 14:52
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Ayuda con sistema de Usuarios

Mmmm a lo mejor hay probabilidades de que estes llamando dos veces a include("conexion.php");, si es asi, también te provoca el horror, cambia tu include por include_once.

Saludos
  #17 (permalink)  
Antiguo 21/01/2009, 15:09
 
Fecha de Ingreso: octubre-2006
Ubicación: Valparaiso Chile
Mensajes: 228
Antigüedad: 17 años, 5 meses
Puntos: 0
De acuerdo Respuesta: Ayuda con sistema de Usuarios

Ahora me da todos estos warning y aparece por lo menos la página backend.php, la cual debiera no dejarme entrar si no estoy logueado, la página aparece debajo de los Warning.

Cita:
Warning: mysql_query() [function.mysql-query]: Access denied for user 'www-data'@'localhost' (using password: NO) in /var/www/kenpboxing/kb/admin/includes/login.php on line 14

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /var/www/kenpboxing/kb/admin/includes/login.php on line 14

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/kenpboxing/kb/admin/includes/login.php on line 16

Warning: Cannot modify header information - headers already sent by (output started at /var/www/kenpboxing/kb/admin/includes/login.php:14) in /var/www/kenpboxing/kb/admin/includes/login.php on line 29

Warning: Cannot modify header information - headers already sent by (output started at /var/www/kenpboxing/kb/admin/includes/login.php:14) in /var/www/kenpboxing/kb/admin/includes/login.php on line 30

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in /var/www/kenpboxing/kb/admin/includes/login.php on line 32
Imagen en reemplazo de flash
Warning: mysql_query() [function.mysql-query]: Access denied for user 'www-data'@'localhost' (using password: NO) in /var/www/kenpboxing/kb/admin/includes/backend.php on line 26

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /var/www/kenpboxing/kb/admin/includes/backend.php on line 26
Administrador del Sistema
  #18 (permalink)  
Antiguo 21/01/2009, 15:19
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Ayuda con sistema de Usuarios

Warning: mysql_query() [function.mysql-query]: Access denied for user 'www-data'@'localhost' (using password: NO) in /var/www/kenpboxing/kb/admin/includes/login.php on line 14

El usuario / password que usas para iniciar sesion en tu base de datos es incorrecto.

Saludos
  #19 (permalink)  
Antiguo 21/01/2009, 15:20
Avatar de yeudiel  
Fecha de Ingreso: abril-2008
Ubicación: Ciudad de México
Mensajes: 78
Antigüedad: 16 años
Puntos: 1
Respuesta: Ayuda con sistema de Usuarios

Prueba en la linea 8poner 8 $link=conectarse(); en vez de $link="conectarse()";

y en la linea

12 $result = mysql_query("SELECT * FROM administradores
13 WHERE username=".$HTTP_COOKIE_VARS["usNick"]." AND
password=".$HTTP_COOKIE_VARS["usPass"]."");

quede en la misma linea y con comillas simples osea:

12 $result = mysql_query("SELECT * FROM administradores WHERE username='$HTTP_COOKIE_VARS["usNick"]' AND
password='$HTTP_COOKIE_VARS["usPass"]' ",$link);

Va a sonar un poco tonta la pregunta, pero tienes creada esa base de datos en tu servidor? y si es asi, tienes ya creado un usuario, y si ya tambien, ya asignaste a ese usuario a esa base de datos?, si no verifica que todos los datos esten correctamente. Tambien verifica que las tablas que buscas existen con sus respectivos campos

Y lo de Warning: Cannot modify header information - headers already sent by() es por que se esta enviando los headers mas de 1 vez.

Última edición por yeudiel; 21/01/2009 a las 15:30 Razón: FAlto codigo
  #20 (permalink)  
Antiguo 21/01/2009, 15:29
 
Fecha de Ingreso: octubre-2006
Ubicación: Valparaiso Chile
Mensajes: 228
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: Ayuda con sistema de Usuarios

a ver, yo crre una base de datos en local, con phpmyadmin, y cree un usuario nuevo, no uso el usuario root, y los datos que utilizo en conexion.php son los mismos con los que entro a phpmyadmin, por eso estoy seguro que estan bien
  #21 (permalink)  
Antiguo 21/01/2009, 15:31
Avatar de yeudiel  
Fecha de Ingreso: abril-2008
Ubicación: Ciudad de México
Mensajes: 78
Antigüedad: 16 años
Puntos: 1
Respuesta: Ayuda con sistema de Usuarios

reedite mi respuesta cheka lo que te comento
  #22 (permalink)  
Antiguo 21/01/2009, 16:08
 
Fecha de Ingreso: noviembre-2008
Mensajes: 279
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Ayuda con sistema de Usuarios

mm me parese eque el problema esta en loc cokkies no chaka la linea 18 ....hace referencia a eso..

y intenta con
Cita:
<?
function Conectarse(){
$db_host="localhost"; // Host conexion localhost
$db_nombre="Basededatos"; // Nombre de la Base de Datos
$db_user="usuario"; // Nombre de usuario
$db_pass="contraseña"; // Contraseña
// Conexión $link
$link=mysql_connect($db_host, $db_user, $db_pass) or die ("Error conectando a la base de datos.");
mysql_select_db($db_nombre ,$link) or die("Error seleccionando la base de datos.");
return $link;}
?>
  #23 (permalink)  
Antiguo 21/01/2009, 16:42
 
Fecha de Ingreso: octubre-2006
Ubicación: Valparaiso Chile
Mensajes: 228
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: Ayuda con sistema de Usuarios

Ya, hice lo que comentas este es el resultado:

Cita:
Parse error: syntax error, unexpected '"', expecting T_STRING or T_VARIABLE or T_NUM_STRING in var/www/kenpboxing/kb/admin/includes/login.php on line 13
esta es la linea 13

Cita:
$result = mysql_query("SELECT * FROM administradores WHERE sername=.'$HTTP_COOKIE_VARS["usNick"]' AND password='.$HTTP_COOKIE_VARS["usPass"].' ", $link);
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 19:05.