| | write.php
<?
/*if (!ereg("http://127.0.0.1/index.php",$HTTP_REFERER))
{
Header("Location: http://127.0.0.1/");exit;
}
*/
//функция valid_url выполняет проверку написания URL;
function valid_url ($vurl) {
return (!ereg('^http://',$vurl));
}
//функция valid_email выполняет проверку написания e-mail'a, чтобы включить раскоментируйте ee и error_reporting;
function valid_email ($adr) {
return (ereg('^[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+'.
'@'.
'[-!#$%&\'*+\\/0-9=?A-Z^_`a-z{|}~]+\.'.
'[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+$',
$adr));
}
error_reporting(63); if(valid_email($emaila)) { } else { print "<body bgcolor=#FFFFCC text=#FFFFFF><script>history.back(-1);alert('e-mail введен не верно')</script></body>"; exit; }
// выводит ошибку, если не введенно имя;
error_reporting(63); if($nick=="") { print "<body bgcolor=#FFFFCC text=#FFFFFF><script>history.back(-1);alert('Не введено Имя')</script></body>"; exit; }
// выводит ошибку, если не введенно сообщение;
error_reporting(63); if($mess=="") { print "<body bgcolor=#FFFFCC text=#FFFFFF><script>history.back(-1);alert('Не введено сообщение')</script></body>"; exit; }
// $dat и $time задают формат даты и времени;
$hour=date("H",time()) + 2;
$dat=date("dS F, 20y", time());
$time=date("$hour:i:s", time());
$ip = getenv("REMOTE_ADDR");
$text_ip = gethostbyaddr($REMOTE_ADDR);
// при вводе HTML тэгов - преобразует в UNI Code. Работает только в PHP 4.0
//$translate = get_html_translation_table (HTML_ENTITIES);
//$mess = strtr ($mess, $translate);
$body = "Name: ".$nick."\nCообщение: \n".$mess."\nDate: [".$dat.",".$time."]\nUrl: ".$urla."\ne-mail: ".$emaila."\nip: ".$ip."\nhost: ".$text_ip;
$nick = htmlspecialchars($nick);
$nick = nl2br($nick);
$nick = ereg_replace("\n","",$nick);
$nick = stripslashes($nick);
$urla = htmlspecialchars($urla);
$urla = nl2br($urla);
$urla = ereg_replace("\n","",$urla);
$urla = stripslashes($urla);
$emaila = htmlspecialchars($emaila);
$emaila = nl2br($emaila);
$emaila = ereg_replace("\n","",$emaila);
$emaila = stripslashes($emaila);
$mess = htmlspecialchars($mess);
$mess = nl2br($mess);
$mess = ereg_replace("\n","",$mess);
$msgstr = split(" ", $mess, 50 );
$sizearray = sizeof($msgstr);
// $maxmsg задает максимальную длину сообщения в кол-ве символов;
$maxmsg = 3000;
$lenmsg = strlen($mess);
if ($lenmsg < $maxmsg) {
$filename="gb.inc";
$guestfile = fopen($filename,"r");
//flock($filename,2);
$guesttext = fread($guestfile, filesize ($filename));
//flock($filename,3);
fclose($guestfile);
$data=fopen($filename,"w+");
//flock($filename,2);
fwrite ($data,"<!-- $ip user:$nick --><div class='text'>От кого: ");
fwrite ($data,"<span class='text2'>$nick</span>");
fwrite ($data,"<br><!-- reset line -->");
fwrite ($data,"\n");
fwrite ($data,"Сообщение: <span class='text2'>");
$i = 0;
while ($i <= $sizearray -1) {
$msgout = $msgstr[$i];
$lenword = strlen($msgout);
// Длина слов в сообщении;
$maxlenword = 35;
if ($lenword <= $maxlenword) {
$msgout=stripslashes($msgout);
fwrite ($data,"$msgout ");
$i++;
}
else {
$maxlenword=35;
$msgout=stripslashes($msgout);
$lenword=strlen($msgout);
$i++;
}
}
fwrite ($data,"</span><br><!-- reset line -->");
fwrite ($data,"\n");
fwrite ($data,"[$dat,$time]");fwrite ($data,"<br><!-- reset line -->");
fwrite ($data,"\n");
fwrite ($data,"Адрес или телефон ");
fwrite ($data,"<a href=$urla target=\"_blank\">$urla</a>");fwrite ($data,"<br><!-- reset line -->");
fwrite ($data,"\n");
fwrite ($data,"E-mail: ");
fwrite ($data,"<a href=mailto:$emaila>$emaila</a><hr id=line width=100% size=1 nowrap></div><!-- reset line -->");
fwrite ($data,"\n");
fwrite ($data,"$guesttext");
//flock($filename,3);
fclose ($data);
}
else {
print "<body bgcolor=#FFFFCC text=#FFFFFF><script>history.back(-1);alert('Большое количество символов! Ваше количество $lenmsg символов. Максимально допустимое составляет $maxmsg символов.')</script></body>";
}
//Переадресовывает на страницу с которой эта получила форму;
Header("Location: index.php");exit;
?> | |