Pregunta

Al ejecutar el siguiente bloque de código:

foreach($eventfiles as $eventfile)
{
    if($eventfile['filename'])
    { 
        $file = $eventfile['filepath'];
        // Open File
        if( !($fp = fopen($file, "r")))
        {
            echo '<br>CAN NOT READ FILE.';
            exit;
        }
        // Read data from the file into $data
        $data = "";
        while (!feof($fp)) $data .= fread($fp,1024);
        query("update event_rtab set html = '".escape($data)."' where id = {$eventfile[id]}");
    }
    if($eventfile['eventType']=='email')
    {
        query("INSERT INTO event_email_rtab (event_id,subject) values ($eventfile[id],'".escape($eventfile[email_subject])."')");
    }
}

El script se produce el siguiente error:

  

fopen (test.html)   [Function.fopen]: failed to open   corriente: límite de redirección alcanzado,   en abortar   /data/www/example.com/public/test.php   en la línea 843

¿Qué causa este error y cómo puedo corregirlo?

¿Fue útil?

Solución

¿Dónde se encuentran los archivos que está intentando abrir? ¿Están en el sistema de archivos local o estás tratando de acceder a ellos a través de HTTP (S)?

Si está utilizando algún envoltorio protocolo de red a continuación, este error es más probable conectado con demasiados (HTTP - en el caso del protocolo HTTP (S)) vuelve a dirigir en el camino de su secuencia de comandos para el archivo que desea abrir . El límite de cambio de dirección por defecto debería ser de 20 . Como 20 redirecciones son bastante mucho que podría haber algún error en el propio nombre de archivo (por ejemplo, causando el servidor web en el otro extremo de hacer algunas de corrección ortográfica-redirecciones) o el otro servidor está mal configurado o hay algunas medidas de seguridad o ...

Si usted siente la necesidad de extender el 20 redirecciones se puede utilizar un contexto de secuencia.

$context = array(
    'http'=>array('max_redirects' => 99)
);
$context = stream_context_create($context);
// hand over the context to fopen()
$fp = fopen($file, 'r', false, $context);
// ...

Por favor, véase:

Otros consejos

Es muy probable debido al archivo que está intentando abrir está tratando de abrir otro archivo y alcanzando thusly el límite de cambio de dirección.

Editar:. Cuando digo probablemente, me refiero a que puede causar el error y esto puede ser que la situación

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top