23/04/2015, 00:36
|
| | | Fecha de Ingreso: abril-2015 Ubicación: Mar del Plata
Mensajes: 50
Antigüedad: 9 años, 8 meses Puntos: 3 | |
Respuesta: Autenticación por usuario, constraseña y nivel con Dreamweaver CS6 Buenas, sigo sin entender por que lo estas haciendo principalmente porque no veo el codigo completo, pero te puedo decir algunos errores que veo, no te puedo asegurar que sean los únicos, pero te puedo asegurar que si no arreglas eso no te va a funcionar ni loco. Ahí va:
1)
<?php
# FileName="Connection_php_mysql.htm"
# Type="MYSQL"
# HTTP="true"
$hostname_PML2 = "localhost:8889";
$database_PML2 = "Mibasededatos";
$username_PML2 = "miusuario";
$password_PML2 = "Mipassword";
$PML2 = mysql_pconnect($hostname_PML2, $username_PML2, $password_PML2) or trigger_error(mysql_error(),E_USER_ERROR);
?>
Si el archivo se llama Connection_php_mysql.htm osea que termina en .htm puede ser que el servidor lo interpre como php, pero en la mayoría de los casos no será así por lo tanto no se conecta a la base de datos y por lo tanto nunca encuentra a los usuarios. El archivo tendría que terminar en .php
lo más importante si escribís en el navegador www.tupagina.com/Connection_php_mysql.htm te va a mostrar todos los datos para conectarte a la base de datos (un problema muy grave de seguridad)
Cuando soluciones esto ya te va a tirar un error distinto :)
2) Si tenés mucho cuidado no pasa nada, pero en los servidores se suele distinguir mayusculas de minusculas, pero en windows no, por lo tanto si vos tenes una linea que sea include('conection.php'); y tu archivo se llama Conection.php, eso va a funcionar en windows pero no en la mayoría de los servidores que son linux.
3) La línea header('location: AdministradorP.php/'); lo que hace es decirle al navegador que vaya a la página AdministradorP.php (otra vez cuidado con las mayusculas) pero el problema es que eso no es un modo de autenticación seguro, ya que si yo escribiera en el navegador www.tupagina.com/AdministradorP.php entonces estaría entrando a la página de administración sin que me pida contraseña ni nada. La forma correcta de hacerlo sería poniendo include('AdministradorP.php'); y que AdministradorP.php no se pueda entrar directamente desde el navegador
Más allá de este problema de seguridad que es MUY importante, tampoco te va a funcionar ya que header('location: ...') necesita la url como aparecería en el navegador "http://www.tupagina.com/AdministradorP.php"
Además esa línea funciona modificando la cabecera http, por lo tanto tiene que ser enviada antes que se envíe la página, por lo tanto no se puede enviar un solo caracter antes que se ejecute esta línea, si tenés un solo espacio o salto de línea antes de ejecutar header() ya no funcionará.
<?php require_once('Connections/PML2.php'); ?>
(salto de linea numero 1)
(salto de linea numero 2)
<?php
Acá por ejemplo tenés dos saltos de líneas por eso la linea header() no se puede ejecutar, si no tuviste esto en cuenta seguramente tengas muchas mas (lo que esté dentro del codigo php no importa) entre <?php y ?> podes tener los espacios que quieras, pero no fuera de el. Tampoco puede haber ningún echo, o print o errores dentro del codigo de php, ya que generan código html y esto ya genera que header() falle.
Los archivos que tengas dentro de un include (antes del header) deben seguir estas mismas reglas
Por ahora es lo que veo, si pasas mas código quizas pueda ayudarte más. Saludos
PD: si te sirvió mi ayuda se agradece dejando puntos ;) |