Problema acceso php mysql

Hola
Tengo un problema con una página que he colgado en internet. (www.ccdsanxenxo.com)
El problema es que no me entra en la sección de administrador. La clave se introduce en un formulario de la pag principal y luego la válido.
En casa tengo montado un servidor y me funciona perfectamente. En internet a veces me entra y otras me manda a la pag de clave incorrecta.
El formulario lo tengo así:
<form action="validar_admon.php" method="post" enctype="multipart/form-data" target="_top">
<p align="center">
<input type="password" name="clave" size="8" maxlength="11"></p>
</form>
Y en la pag "validar_admon.php" :
$link = mysql_connect("localhost","usuario") or die ("Could not connect");
$conexion = mysql_select_db("base");
$query = "select * from administrador";
$result = mysql_query( "select * from administrador",$link);
$campo = (mysql_result($result,0));
if ( $clave == $campo) {
//aqui visualizo la pag si clave correcta
}
else{// visualizo clave incorrecta
}
/////////////////////////////
probe a borrar la cache del explorador incluyendo al principio de la pag inicial:
header ("Cache-Control: no-cache, must-revalidate");
header ("Pragma: no-cache");
¿Podrías ayudarme?
Gracias

1 Respuesta

Respuesta
1
Lo primero ten cuidado con las mayúsculas y minúsculas.
Por lo que veo el formulario no está completo. En validar_admon.php conectas con la base de datos, pero no se que estructura tiene la tabla administrador. Sería mejor que hicieses una búsqueda del tipo:
$query = "SELECT * FROM administrador WHERE contrasenia = {$_POST['clave']}";
Luego en $result obtienes FALSE si no existe y lo puedes usar para saber si la clave es verdadera o no.
Gracias por tu ayuda.
por que esta incompleto el form?
Sigue sin funcionar, no es capaz de acceder a la consulta.
La estructura de la tabla administrador es un campo VARCHAR de 11 caracteres no nulo
Gracias
Es un poco extraña la estructura de la tabla administrador. Según entiendo, solo tienes un registro con una única contraseña válida. Parece ser que para entrar como administrador sólo solicitas una contraseña y no un nombre de usuario, por eso pensé que el código estaba incompleto. Entonces solo puede haber un único administrador. Si es este el caso no necesitas usar una tabla de la base de datos, ya que el acceso es bastante lento, usa una variable directamente en el código php.
Por otra parte, si te funciona perfectamente en el servidor local, es extraño que no te funcione en el otro servidor. Prueba a sustituir $clave por $_POST['clave'] de la siguiente forma:
if ( $_POST['clave'] == "miClaveCorrecta") {
//aqui visualizo la pag si clave correcta
}
Donde pone "miClaveCorrecta" pon la clave válida, la que tienes en la base de datos.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas