No ya encontré el fallo, el problema reside en la versión del mysql y el encargado de hacer la base de datos,
básicamente algunas versione de PHP no soportan las nuevas contraseñas largas que se utilizan
en Mysql 4.1 o posterior. Este es el caso de la version instalada con AppServ.
Para solventar esto se apuntan varias soluciones:
1) Lanzar el servicio con la opcion --old-passwords, pero que yo sepa la cuenta que van a
utilizar no tiene privilegios para ello.
2) Meter en el fichero my.ini la opcion old-passwords sin comentar. Esto a mi no me funciono aunque
reinicie el servicio.
3) La que he utilizado yo. SET PASSWORD FOR 'usuario'@'host' = OLD_PASSWORD('contraseña');
En mi caso:
SET PASSWORD FOR 'root'@'localhost' = OLD_PASSWORD('oculta');
Evidentemente esto hay hacerlo como root de mysql.
al margen de eso, había intentado fixear por si era problema de una mala instalación y jodi el mysql (no inicia bien y no reconoce al root muy estúpido por mi parte :S), menos mal que era una maquina virtual y tengo como 50 copias, aunque todas ellas en clase.
de todas formas:
#2
si eso ya lo se por eso preguntaba de primeras, su el código estaba mal, gracias por interesarte.
#3
el carga lee un *.txt como ves en el inc este tiene toda la información. Aún así había intentado cambiar lo patrones, como dices ya que me había percatado de que el host es el 1º y me seguía dando el problema.
#4
si también lo hice es mas parte de las direcciones de local intente la dirección lan/inet ya que el appserv esta montado para que se meta en un futuro en un 2003 server.
aún así me gustaría las opiniones de vosotros sobre si podría ser lo que explique mas arriba, por lo que entiendo se que el código php esta bien, puede ser que tenga algún REQUEST mal pero nada que no sea leve. Por eso mismo me preocupaba tanto el tema.hoy prueba en una makina que va perfecta "la mía de pruebas" y os comento haber que tal.
p.d: creeis que pueda tener mal esta function?
spoilerunction existe_login($login, $enlace)
{
$consulta = "select * from usuarios_ofertantes where login=$login";
$resultado = mysql_query($consulta, $enlace);
return mysql_num_rows($resultado);
}
?>
mas precisamente:
$consulta = "SELECT * FROM usuarios_ofertantes WHERE login=$login";