Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/11/2010, 02:20
Zeridis
 
Fecha de Ingreso: abril-2010
Mensajes: 10
Antigüedad: 14 años
Puntos: 0
Accesar URL protegida con fopen

Hola a todos

Por favor, un poco de ayuda por aquí, no estoy familiarizado con PHP y tengo el siguiente problema.

Dentro de la página hay un archivo php cronrefresh.php que actualiza datos de una base de datos en formato CSV,
este script lee la informacion desde una dirección URL del mismo sitio.

Parte del script donde aparece la variable $URL que almacena la URL es:

Código PHP:
$fdURL mysql_query("SELECT * FROM affiliSt_config WHERE name = 'csvURL".$_GET['fd_refresh']."'");
$URL mysql_fetch_assoc($fdURL);
$fdtype mysql_query("SELECT * FROM affiliSt_config WHERE name = 'csvType".$_GET['fd_refresh']."'");
$type mysql_fetch_assoc($fdtype);

    if (
$type['value'] == 'tab') {
    
$type "\t";
    } else {
    
$type $type['value'];
    }

// define variable fila  y abre archivo
$row intval($pieces[11]);
if (
$URL['title'] == 'Upload ') {
$handle fopen('../'.$URL['value'], "r");
} else {
$handle fopen($URL['value'], "r"); 
Pero necesito restingir del acceso públio esta URL poniendo usuario y contraseña

Viendo las opcione de la función fopen menciona que para hacer esto debe incrustarse el usuario y contraseña
como parámetros de la función como sigue:
Código PHP:
$handle fopen('http://usuario:contraseñ[email protected]/micarpeta','r'); 
Pero si la URL es guardad en la variable $URL, no se cómo modificar esta parte mostrada del script sin afectar el
resto del mismo, y mas importante, sin afectar ni arruinar el funcionamento normal del script.

Podría ser algo como esto?:

En lugar de:

Código PHP:
$handle fopen('../'.$URL['value'], "r");
} else {
$handle fopen($URL['value'], "r"); 
Cambiar a esto:
Código PHP:
$handle fopen('../'.usuario:contraseña@$URL['value'], "r");
} else {
$handle fopen(usuario:contraseña@$URL['value'], "r"); 
o

En lugar de:
Código PHP:
$URL mysql_fetch_assoc($fdURL); 
Cambiar a esto:
Código PHP:
$URL usuario:contraseña@mysql_fetch_assoc($fdURL); 
Gracias por su ayuda, sería gratamente recibida cualquier ejemplo de cómo modificar el script, el comando y
parámetros adecuados por mi escaso conocimiento de PHP.

Saludos cordiales,