2013-12-18 6 views
0

Я пытаюсь создать .html-файл с помощью PHP и заполнить его содержимым массива, но я не могу создать файл html. Вот моя функция:Не удается создать файл HTML с PHP

function viewPag(){ 
    session_start(); 

    $handler=fopen("view.php", 'w+'); 

    for ($i=0; $i < count($_SESSION["Text"]); $i++) { 
     fwrite($handler,$_SESSION["Text"][$i]); 
    } 

    fclose($handler); 

    header("Location: view.php"); 
} 
+3

Если файл не создан, я предлагаю 1. вы проверяете файл журнала ошибок http-серверов и 2. выполняете обработку ошибок. Скорее всего, у вас есть проблема с разрешением. – arkascha

+0

Что значит, что вы не можете создать? Что происходит? –

+0

Вы правы arkascha, это была проблема разрешения ... – Doruko

ответ

0

Возможно, вы не находитесь в папке, о которой думаете. используйте echo getcwd(); для печати текущей папки, а затем используйте относительный путь для хранения файла, где хотите.

Возможно также, что ваш вызов fopen не работает из-за проблем с разрешением. Добавить if для проверки значения $handler после fopen вызова:

if (!$handler) { 
    echo "Could not open file for writing. Aborting"; 
    die(); 
} 

И одна вещь, которую вы действительно должны сделать, это посмотреть на ваши журналы и поиск ошибок. С нетерпением, глядя на журналы, вы (и мы) просто слепы и не знаем, что терпит неудачу (возможно, что-то не так, перед этой функцией ... мы не можем точно знать).

1

Вы не можете запустить PHP внутри файла .html. Но вы можете сделать это, отредактировав файл .htaccess.

Сохраните файл с расширением .php и отредактируйте файл .htaccess следующим образом.

AddType application/x-httpd-php .html 

Если вы хотите использовать его только на одной странице, вы можете использовать следующий код.

<Files yourpage.html> 
AddType application/x-httpd-php .html 
</Files> 
Смежные вопросы