|
|
|
| У меня не обрабатывается php код!
Если у меня написано вот так:
<?php
$error = "";
$action = $HTTP_POST_VARS["action"];
if (!empty($action))
{
$name = trim($name);
$msg = trim($msg);
if (empty($name))
{
$action = "";
$error = $error."<LI>Вы не ввели имя\n";
}
if (empty($msg))
{
$action = "";
$error = $error."<LI>Вы не ввели сообщение\n";
}
if (!empty($email))
{
if (!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i", $email))
{
$action = "";
$error = $error."<LI> Неверно введен е-mail. <LI>Неверно введен url.</i> \n";
}
}
$name = substr($HTTP_POST_VARS["name"],0,32);
$name = htmlspecialchars(stripslashes($name));
$city = substr($HTTP_POST_VARS["city"],0,32);
$city = htmlspecialchars(stripslashes($city));
$email = substr($HTTP_POST_VARS["email"],0,32);
$email = htmlspecialchars(stripslashes($email));
$url = substr($HTTP_POST_VARS["url"],0,36);
$url = htmlspecialchars(stripslashes($url));
$msg = substr($HTTP_POST_VARS["msg"],0,1024);
$msg = htmlspecialchars(stripslashes($msg));
if (empty($error))
{
$msg = nl2br($msg);
$msg = str_replace("[u]","<u>",$msg);
$msg = str_replace("[U]","<u>",$msg);
$msg = str_replace("","<i>",$msg);
$msg = str_replace("[I]","<i>",$msg);
$msg = str_replace("","<B>",$msg);
$msg = str_replace("[B]","<B>",$msg);
$msg = str_replace("","<SUB>",$msg);
$msg = str_replace("[SUB]","<SUB>",$msg);
$msg = str_replace("","<SUP>",$msg);
$msg = str_replace("[SUP]","<SUP>",$msg);
$msg = str_replace("[/u]","</u>",$msg);
$msg = str_replace("[/U]","</u>",$msg);
$msg = str_replace("","</i>",$msg);
$msg = str_replace("[/I]","</i>",$msg);
$msg = str_replace("","</B>",$msg);
$msg = str_replace("[/B]","</B>",$msg);
$msg = str_replace("","</SUB>",$msg);
$msg = str_replace("[/sub]","</SUB>",$msg);
$msg = str_replace("","</SUP>",$msg);
$msg = str_replace("[/sup]","</SUP>",$msg);
$msg = eregi_replace("(.*)\\[url\\](.*)\\[/url\\](.*)","\\1<a href=\\2>\\2</a>\\3",$msg);
$msg = str_replace("\n"," ",$msg);
$msg = str_replace("\r"," ",$msg);
$data = date("d-m-Y, H-i");
$file = fopen("recordes/rec.".time(),"w");
fputs($file,$name."\n");
fputs($file,$city."\n");
fputs($file,$email."\n");
fputs($file,$url."\n");
fputs($file,$msg."\n");
fputs($file,$data."\n");
fclose($file);
print "<HTML><HEAD>\n";
print "<META HTTP-EQUIV='Refresh' CONTENT='0; URL=index.php'>\n";
print "</HEAD></HTML>\n";
}
}
if (empty($action))
{
if (!empty($error))
{
print "<center><P><font color=green>Во время добавления записи произошли следующие ошибки:</font></P>\n";
print "<UL>\n";
print $error;
print "</UL>\n</center>";
}
}
?>
|
Без обработки:
<?php
$data = date("d-m-Y, H-i");
$file = fopen("recordes/rec.".time(),"w");
fputs($file,$name."\n");
fputs($file,$city."\n");
fputs($file,$email."\n");
fputs($file,$url."\n");
fputs($file,$msg."\n");
fputs($file,$data."\n");
fclose($file);
print "<HTML><HEAD>\n";
print "<META HTTP-EQUIV='Refresh' CONTENT='0; URL=index.php'>\n";
print "</HEAD></HTML>\n";
?>
|
Нормально записывает! Почему так происходит. Может кто объяснить.
Мне обработка сообщения нужна как воздух! Хотя бы ошибки какие-то писал... а то ведь совсем голяк. Новое сообщение не записал в файл rec.* и пустая страница. Help
Не пойму, что за чертовщина!? :-(
P.S.: Я бывший Прохожий => Зарегистрировался в Wita1y. :-) | |
|
|
|
|
|
|
|
для: Wita1y
(13.04.2006 в 09:06)
| | У вас написано
Если у меня написано вот так:
|
но нет продолжения фразы - что происходит? | |
|
|
|
|
|
|
|
для: cheops
(13.04.2006 в 11:47)
| | Я извинюсь, торопился на работу. У меня. Я этим хотел сказать: когда я так просываю php скрипт (см. 1 рис.) ничего не делается. А когда вырежу обработку ввода символов (см. 2 рис.) и оставлю одну запись то всё нормально. Почему так происходит? :-( | |
|
|
|
|
автор: cheops (из кафе) (13.04.2006 в 17:12) |
|
|
для: Wita1y
(13.04.2006 в 12:44)
| | Попробуйте для начала заменить все $HTTP_POST_VARS на $_POST - возможно у вас отключены длинные суперглобальные массивы в конфигурационном файле php.ini. | |
|
|
|
|
|
|
|
для: cheops (из кафе)
(13.04.2006 в 17:12)
| | Я сделал и ничего не изменилось... :-( | |
|
|
|
|
|
|
|
для: Wita1y
(13.04.2006 в 18:04)
| | Попробуйте добавлять по одному оператору к рабочему коду - на котором происхоит сбой? | |
|
|
|
|
|
|
|
для: cheops
(13.04.2006 в 22:48)
| | Я нашел ошибку и уже исправил. Моя невнимательность. :) | |
|
|
|
|
|
|
|
для: Wita1y
(13.04.2006 в 09:06)
| | Простите, просто смутили строки:
$msg = str_replace("","<i>",$msg);
$msg = str_replace("","<B>",$msg);
$msg = str_replace("","</i>",$msg);
$msg = str_replace("","</B>",$msg);
|
>>> | |
|
|
|
|
|
|
|
для: Elve
(13.04.2006 в 20:40)
| | Если ты внимательнее присмотришься... то увидешь какие тэги там заключены.
Например:
$msg = str_replace("","<i>",$msg); // "" - в этих ковычка должен быть такой тэг [b]
|
$msg = str_replace("","</B>",$msg); // "" - а здесь закрывающий тэг.
|
А теперь посмотри, почему я не написал его!? Да потому что, у меня бы сейчас часть текста выделилось. Также и с [i] :-)
Потому ковычки пустые. | |
|
|
|
|