Foros del Web » Programando para Internet » PHP »

proteger mas paginas con login

Estas en el tema de proteger mas paginas con login en el foro de PHP en Foros del Web. buenas noches amigos este es mi primer post aki y creo que me pueden ayudar estoy haciendo un proyecto de una pequeña web y quiero ...
  #1 (permalink)  
Antiguo 15/10/2014, 23:11
 
Fecha de Ingreso: octubre-2014
Mensajes: 4
Antigüedad: 9 años, 6 meses
Puntos: 0
proteger mas paginas con login

buenas noches amigos este es mi primer post aki y creo que me pueden ayudar
estoy haciendo un proyecto de una pequeña web y quiero hacer mas sub paginas pero protegida mediante el login principiar ejemplo que si no se loquean no puedan acceder desde la barra de dirección a ese enlace este es mi código de mi login y de mi validación de usuario


LOGIN PHP


<?php
session_start();
//datos para establecer la conexion con la base de mysql.
mysql_connect('','')or die ('Ha fallado la conexión: '.mysql_error());
mysql_select_db('')or die ('Error al seleccionar la Base de Datos: '.mysql_error());
function formRegistro(){
?>

<?php
}
// verificamos si se han enviado ya las variables necesarias.
if (isset($_POST["username"])) {
$username = $_POST["username"];
$password = $_POST["password"];
$password2 = $_POST["password2"];
$email = $_POST["email"];
// Hay campos en blanco
if($username==NULL|$password==NULL|$password2==NUL L|$email==NULL) {
echo "un campo está vacio.";
formRegistro();
}else{
// ¿Coinciden las contraseñas?
if($password!=$password2) {
echo "Las contraseñas no coinciden";
formRegistro();
}else{
// Comprobamos si el nombre de usuario o la cuenta de correo ya existían
$checkuser = mysql_query("SELECT usuario FROM usuarios WHERE usuario='$username'");
$username_exist = mysql_num_rows($checkuser);
$checkemail = mysql_query("SELECT email FROM usuarios WHERE email='$email'");
$email_exist = mysql_num_rows($checkemail);
if ($email_exist>0|$username_exist>0) {
echo "El nombre de usuario o la cuenta de correo estan ya en uso";
formRegistro();
}else{
$query = 'INSERT INTO usuarios (usuario, password, email, fecha)
VALUES (\''.$username.'\',\''.$password.'\',\''.$email.'\ ',\''.date("Y-m-d").'\')';
mysql_query($query) or die(mysql_error());
echo 'El usuario '.$username.' ha sido registrado de manera satisfactoria.<br />';
echo 'Ahora puede entrar ingresando su usuario y su password <br />';
?>
<FORM ACTION="validar_usuario.php" METHOD="post">
Usuario : <INPUT TYPE="text" NAME="usuario" SIZE=20 MAXLENGTH=20><br />
Password: <INPUT TYPE="password" NAME="password" SIZE=10 MAXLENGTH=10><br />
<INPUT TYPE="submit" VALUE="Ingresar">
</FORM>
<?php
}
}
}
}else{
formRegistro();
}
?>


Validar_usuarios PHP


<?php


session_start();
//datos para establecer la conexion con la base de mysql.
mysql_connect('','','')or die ('Ha fallado la conexión: '.mysql_error());
mysql_select_db('')or die ('Error al seleccionar la Base de Datos: '.mysql_error());
function quitar($mensaje)
{
$nopermitidos = array("'",'\\','<','>',"\"");
$mensaje = str_replace($nopermitidos, "", $mensaje);
return $mensaje;
}
if(trim($_POST["usuario"]) != "usuario" && trim($_POST["password"]) != "")
{
// Puedes utilizar la funcion para eliminar algun caracter en especifico
//$usuario = strtolower(quitar($HTTP_POST_VARS["usuario"]));
//$password = $HTTP_POST_VARS["password"];
// o puedes convertir los a su entidad HTML aplicable con htmlentities
$usuario = strtolower(htmlentities($_POST["usuario"], ENT_QUOTES));
$password = $_POST["password"];
$result = mysql_query('SELECT password, usuario FROM usuarios WHERE usuario=\''.$usuario.'\'');
if($row = mysql_fetch_array($result)){
if($row["password"] == $password){
$_SESSION["k_username"] = $row['usuario'];
echo '<center> You have been logged correctly!! '.$_SESSION['k_username'].'</center> <p>';
echo '<center>Wait Soon, you can save your files to this site!!</center></p>';




lo que quiero es hacer un enlace después de validarlo de descarga ejemplo descarga.php pero cuando pongo el enlace directo en la barra de dirección puedo acceder sin logearme por favor quisiera ponerle restricción mediante el login principal ayuda
  #2 (permalink)  
Antiguo 16/10/2014, 06:13
Avatar de enlinea777  
Fecha de Ingreso: mayo-2008
Ubicación: frente al pc
Mensajes: 1.830
Antigüedad: 15 años, 11 meses
Puntos: 127
Respuesta: proteger mas paginas con login

Primero: utiliza Highlight al subir codigo.


Segundo.
debes leer el archivo en binario con php y despues descargarlo al cliente todo desde un solo archivo de descargas (descarga_file.php).
donde tengas el control de que archivo descargar.
a descarga_file.php le pasas el nombre de archivo a leer y despues php lee el fichero y lo imprimes con un echo o un printde modo que nadie tenga acceso a la carpeta real que contiene los archivos.
  #3 (permalink)  
Antiguo 16/10/2014, 11:20
 
Fecha de Ingreso: octubre-2014
Mensajes: 4
Antigüedad: 9 años, 6 meses
Puntos: 0
Respuesta: proteger mas paginas con login

Gracias por tu respuesta pero quiero restringir el acceso al contenido de la pagina no a la descargas
  #4 (permalink)  
Antiguo 16/10/2014, 11:25
 
Fecha de Ingreso: octubre-2014
Mensajes: 4
Antigüedad: 9 años, 6 meses
Puntos: 0
Respuesta: proteger mas paginas con login

ejemplo k cuando entre con mi usuario ya pueda ver todo el contenido de mis otras sub paginas
  #5 (permalink)  
Antiguo 16/10/2014, 14:02
Avatar de cuasatar  
Fecha de Ingreso: junio-2011
Ubicación: Bogotá Rock City
Mensajes: 1.230
Antigüedad: 12 años, 10 meses
Puntos: 181
Respuesta: proteger mas paginas con login

Cita:
debes leer el archivo en binario con php y despues descargarlo al cliente todo desde un solo archivo de descargas (descarga_file.php).
donde tengas el control de que archivo descargar.
a descarga_file.php le pasas el nombre de archivo a leer y despues php lee el fichero y lo imprimes con un echo o un printde modo que nadie tenga acceso a la carpeta real que contiene los archivos.
Cita:
Gracias por tu respuesta pero quiero restringir el acceso al contenido de la pagina no a la descargas
Creo que no entendiste el concepto. Cuando enlinea777 te dice que el archivo se llama descarga_file.php no significa que dicho script permite descargar archivos (que pudo haberlo llamado papa pitufo.php), simplemente el script se encarga de llamar a los otros scripts dependiendo de los parametros que reciba por get o post, si recibe por decir un ejemplo por get usuario, llame al script usuario.php. De igual forma si recibe un valor desconocido le mande un mensaje que dicho archivo no esta incluido.
__________________
Blog de humor http://elcuasatar.net63.net/
  #6 (permalink)  
Antiguo 17/10/2014, 06:36
Avatar de enlinea777  
Fecha de Ingreso: mayo-2008
Ubicación: frente al pc
Mensajes: 1.830
Antigüedad: 15 años, 11 meses
Puntos: 127
Respuesta: proteger mas paginas con login

Lamentablemente geral00 parece ser muy nuevo y no entender los conseptos de login y descargas.
  #7 (permalink)  
Antiguo 17/10/2014, 13:49
 
Fecha de Ingreso: octubre-2014
Mensajes: 4
Antigüedad: 9 años, 6 meses
Puntos: 0
Respuesta: proteger mas paginas con login

soy un pokito nuevo en esto pero le agradecería una explicación mas por favor

Etiquetas: fecha, html, login, mysql, proteger, registro, select, sql, usuarios, variable
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 15:30.