2014-01-16 1 views
0

Использование AJAX-им содержания загрузки из страниц с расширением .html:эха-страница с любым видом расширений - file_get_contents (

$folders = array('folder_1/', 'folder_2/'); 
foreach ($folders as $folder) { 

    $url = ($folder . $_REQUEST['datastring']); /* 'datastring' = loading with AJAX */ 
     if (file_exists($url.'.html')) { 
      echo file_get_contents($url.'.html'); 
     } 
} 

Однако я хотел бы, чтобы иметь возможность загружать содержимое из страниц с любым типом расширения - ? FX .html, .php, .text и т.д. Как это можно сделать Ive пытался это и другие решения, но не повезло:

 if (file_exists($url.'.*')) { 
       echo file_get_contents($url.'.*'); 
     } 
+0

У вас есть имя файла? 'somefilename. *' не является файлом, поэтому он не получит никакого содержимого. – David

+0

Итак, вы хотите * каждый файл * с именем '$ url' с любым расширением? Может быть, ['glob()'] (http://php.net/glob) может помочь? –

+0

Будьте осторожны с загрузкой содержимого из расширения _any_. Файлы конфигурации и файлы PHP могут быть прочитаны (например, пароли базы данных) –

ответ

1

с вашего существующего кода здесь есть один способ:

$folders = array('folder_1/', 'folder_2/'); 

foreach($folders as $folder) { 
    $url = ($folder . $_REQUEST['datastring']); 
    foreach(glob($url . '.*') as $file) { 
     echo file_get_contents($file); 
    } 
} 
Смежные вопросы