fwrite замените на fputcsv(), что там ещё делать? Ссылку на fputcsv() вам выше предоставили - прочитайте о ее использовании, чтоб понимать, как её записывать.
Не за что ) Кроме всего этого не забывайте о безопасности - данные суперглобального массива $_SERVER обязательно нужно фильтровать. Например, с помощью htmlspecialchars():
То же касается и пост и гет массивов - их тоже надо бы фильтровать (если далее их данные будут выводиться в браузер, а не записываться в БД, т.к. для БД фильтровать надо другими способами) (Добавление)
Ну и всегда объявляйте переменные. Например:
Snowy, в WP наверняка есть переменная, в которой хранится домашний адрес веб сервера. Вместо неё для отдельного скрипта можно временно сгенерировать имя веб сервера с помощью переменных окружения
Snowy, попробуйте код этих двух файлов (html и php) объединить в один файл, и удалить атрибут action="result.php" - после нажатия на кнопку браузер будет перенаправлен на эту же страницу.
У меня тогда форма из php просто внизу страницы к тесту прицепляется..(под кнопкой РЕЗУЛЬТАТ) и после заполнения полей она опять внизу, с заполненными значениями http://joxi[dot]ru/gmvnxM1UxDEZ3m
http://joxi.ru/D2PJwNgcdyoaxr
Ну это понятно, и на данном этапе не столь важно. Скрипт перестал бросать ошибку 404 в браузер?
Snowy, попробуйте код этих двух файлов (html и php) объединить в один файл, и удалить атрибут action="result.php" - после нажатия на кнопку браузер будет перенаправлен на эту же страницу.
Snowy я ваш код скопировал целиком в один файл - при нажатии на кнопку нет никаких 404-х ошибок. Есть только всплывающие html-уведомления о не заполненных полях, и несколько Notic-ов, т.к. переменные у вас в пхп не объявлены. Может быть ваш сервер так строго на них реагирует -- я не знаю.
Попробуйте вообще какой либо пхп файл на вашем сервере запустить, что он вернёт в браузер? Если другие пхп файлы корректно работают, тогда закомментируйте весь этот проблемный код, а после этого по-блочно его раскомментируйте и проверяйте в браузере результат - таким образом вы сможете локализовать проблемный блок кода.
Скрин вашего кода в моём браузере: (Добавление) Snowy а попробуйте заменить action "result.php" на action="result.php", чтобы форма приняла вид:
<form action="result.php" method="POST" target="_blank">
и далее как есть (Добавление)
Snowy пишет:
PS Я могла бы в скайп экран расшарить, если это корректно и удобно
Snowy попробуйте найти документацию к этому движку, в ней наверняка описаны этапы построения своих страниц -- возможно что вам и в коде не придётся ничего править (хотя в этом я не уверен) - всё сделаете в wysiwyg редакторе.
и еще в форме так написала <form action "wp-content/themes/florence/result.php" method="POST" target="_blank">
Не нужно. Надо оставить так action="/test/result.php" и выполнить совет из предыдущего моего поста.
Но вообще, всё это не правильно. Получается, что вы в папку с темами кладёте посторонний файл. Надо сперва разобраться, где в WP подходящая для этого директория, и уже в ней создавать ваши файлы (а не в папках с темами) (Добавление)
Snowy пишет:
Если подскажете, буду благодарна
Я конкретно с этим движком не работал, но все они написаны (должны быть, ко крайней мере) по одним и тем же правилам. (Добавление) Snowy попробуйте найти документацию к этому движку, в ней наверняка описаны этапы построения своих страниц -- возможно что вам и в коде не придётся ничего править (хотя в этом я не уверен) - всё сделаете в wysiwyg редакторе.
Snowy, ну там наверное буферизация не позволяет видеть в браузере данные из файла. Давайте сперва убедимся, что мы действительно при клике на кнопку формы попадаем в обработчик. Для этого напишите в вашем файле сразу же после открывающего тега <?php эту строку: exit('Stop'); Всё вместе будет выглядеть так:
<?php exit('Stop');
// Выводим HTML-заголовки:
.. далее код вашего файла (Добавление) Snowy а почему вы тот ваш файл кладёте в папку с темами? О_о ...