Недавно возникла сложность с написанием скрипта поля для комментариев. Сложность в том что мне нужно чтобы все когда либо введенные тексты сохранялись отдельном текстовом файле, а у меня текст выводится просто в новой вкладке. Вот сам скрипт с формой отправки комментария (скажите пожалуйста что надо добавить или изменить):
<?php
if (isset($_GET['name'])) {
echo '' . $_GET['name'];
Я попробовал внедрить скрипт в сайт расположенный на моем компе (открываю с помощью денвера) - работает нормально. Но как только я выложил его на просторы интернета, то комментарии в отдельный файл начали сохраняться через раз, или вовсе, не сохраняться.
вот сам скрипт (а сам а файл куда все должно сохраняться называется comment.txt):
<?php
if (isset($_GET['name'])) {
$name = fopen("comment.txt", "w");
fwrite($name, $_GET['name']);
fclose($name);
}
else {
Я попробовал добавить в скрипт несколько другой атрибут вместо:
$name = fopen("comment.txt", "w");
fwrite($name, $_GET['name']);
я написал :
$name = fopen("comment.txt", "a-");
fwrite($name, $_GET['name']);
и все равно не получается нормально сохранить коммент
Насчет проблемы по поводу сохранения - все решено! Только все сохраняется в php-файле. Одна проблема, как расположить каждый новый комментарий на новой строке (они располагаются все в одну строку)? Вот например
в html это <br>, но в php я не знаю какой скрипт переносит текст на новою строку. Подскажите пожалуйста этот скрипт.
Спасибо! У меня комментарии хранятся в блоках (div), но каждый новый новый комментарий выводится под предыдущим. Что мне исправить в том скрипте чтобы каждый новый комментарий выводился над каждым предыдущим (то есть самы последний комментарий в самом верху, а самый первый комментарий внизу веб страницы). Или мне вообще мыслить в другом направлении? Подскажите пожалуйста, что мне надо сделать чтобы реализовать сказанное мной выше!
Скажите пожалуйста, что надо изменить в следещем скрипте, чтобы он нормально функционировал:
$new_data = strip_tags($_POST['text'], '<ol><ul><li><em><u><b>');
if(mb_strlen($_POST['text']) !== strlen($new_data)){
return exit("<p class='links'><span style='color:red;'>Не используйте запрещенный html!</span><br>Можно использовать как теги только: <br> <b>, <u>, <em>, <ul>, <li>, <ol>. <br>Вернитесь и исправьте свою ошибку <a href='javascript:history.go(-1)'>здесь</a>.</p>");
}
if (!closing_html($html)) {
return exit("<p class='links'><span style='color:red;'>Вы не закрыли один или несколько html тегов!</span><br>Вернитесь и исправьте свою ошибку <a href='javascript:history.go(-1)'>здесь</a>.</p>");
}
if (!closing_html_html($html_html)) {
return exit("<p class='links'><span style='color:red;'>Вы не закрыли один или несколько html тегов!</span><br>Вернитесь и исправьте свою ошибку <a href='javascript:history.go(-1)'>здесь</a>.</p>");
}
Проблема в том, что пользователь откроет один тег, и закроет другим, и сообщение отправляется (то бишь откроет в textarea b, а закроет em). Скажите пожалуйста, в чем проблема, как ее исправить, или есть альтернатива функциям приведенным мной ниже.
P.S. Метод не гет - как было раньше, а пост.