Problemilla con página en php

El otro día ya me respondiste a una pregunta efectuada en php, y dado que eres un experto en la materia, a ver si me puedes dar una idea en la siguiente duda:
Quiero hacer para una página web un apartado de tal forma que el dueño de la página(admin) pueda enviar un correo a todos los usuarios de la misma, pero claro, como puedo hacer un apartado en el que solo el tenga acceso, que simplemente sea un formulario, pero solo el pueda acceder, ¿alguna idea al respecto?

1 respuesta

Respuesta
1
En la página principal de tu web (o en cualquier otra página que tu prefieras) tendrías que colocar un enlace, por ejemplo llamado "Administrar esta web", que te lleve a una página donde te pida una contraseña. Si va a haber más de un administrador puedes pedir también el nombre de un usuario con permisos de administrador y su correspondiente contraseña.
Para validar esos datos, si solo existe un administrador y no usas bases de datos en tu web, puedes hacerlo comparando la contraseña introducida con la verdadera. Pero si ya tienes una base de datos o hay varios administradores, lo mejor es crear una nueva tabla que contenga el nombre de usuario, su contraseña, y los privilegios que posee (por si a cada administrador le quieres asignar solo unas páginas a las que pueda entrar). También puedes poner otros datos de interés.
Una vez validados los datos, creas una sesión y la utilizas para saber en cada página que hay un usuario con permisos de administrador.
Como hablas de mandar correo a varios usuarios supongo que ya tienes base de datos y un formulario para pedir el nombre de usuario y contraseña. Ese formulario te puede valer, solo tienes que modificar la tabla de usuarios y añadirle un nuevo campo que se puede llamar "privilegios". Le asignas a cada usuario un número, por ejemplo el 0 para administradores y el 10 para usuarios. Cuando pulses en el enlace "Administrar esta web" se presenta el formulario, lo rellenas con tu nombre y contraseña y buscas en la base de datos si existe y obtienes los privilegios. Los privilegios los pones en una variable de sesión:
$_SESSION['privilegios'] = $campoPrivilegios;
Donde $campoPrivilegios es el valor de privilegios que has obtenido de la base de datos.
Ahora en la página para mandar correos compruebas si hay una sesión válida con los permisos suficientes, en ese caso muestras el formulario o botón para mandar correos. Si no hay privilegios suficientes o una sesión válida, vuelves a lapágina principal de la web:
<?php
session_start();
if (!isset( $_SESSION['privilegios'])) {
header("Location: index.php");
} else {
if ($_SESSION['privilegios'] > 0) {
header("Location: index.php");
} else {
// Aqui pones el código para enviar el correo.
}
}
?>
He descrito los pasos que tienes que seguir sin ponerte apenas código, pero si algo no ha quedado suficientemente claro, o no sabes como implementarlo, me pides que lo explique.
Oye eres el puto amo, muchas gracias por dedicarme tu tiempo, me has dejado las cosas muy claras, pero si tengo algún fallo no dudare en cosultarte, adiós!.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas