Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Нубская гостевая=) (https://forum.antichat.xyz/showthread.php?t=55390)

Doom123 09.12.2007 15:24

Нубская гостевая=)
 
Вот тут написал маленькую гостевую Самая нубская из нубских...=) и написана она криво=\
вот и решил у вас попросить помщь.

Мне нужно знать все моменты моей кривости и как
их исправить ток с учётом что я токо изучаю пхп и всего ещё не знаю... даже до БД не дошёл... некоторые скажут что мну сначала хтмл выучить надо и будут правы=) вот кароч

PHP код:

<html><body background=bg.jpg><table><tr><td>
<?php
//Выковыриваем строчки из файла и помещаем их в массивы
$len 130;
$arr file('comment.txt');
foreach (
$arr as $k=>$v) {
$val explode("\t"$v);
if (
$len <= strlen($val['2'])) { 
$b strlen($val['2']) / $len;
settype($b"integer");
$h=$len;
//Цикл который переводит строку если она длинее $len 
for ($i=0$i<$b$i++) {
$val['2'] = substr_replace($val['2'], "<br />"$h0);
$h += $len;
}}
//Спомощью путаницы в таблицах выводим коментарии=)
echo "<table><tr><td><b>Name:</b>".$val['1'].","
."</td><td><b>E-mail:</b>".$val['0'].",</td><td><b>Время:</b>".$val['3'].".</td><tr><tr><td><b>Коментарий:</b></td></tr></table><br />"
."<table><tr><td>".$val['2']."</td></tr><tr><td><hr size=1 width=910></td></tr></table><br />";
?> </td></tr></table> 
<?php
//Если пришёл новый коментарий
if (isset($_REQUEST['Add'])) {
//Заменяем спец символы на их хтмл эквиленты
$_REQUEST['E-mail'] = htmlspecialchars($_REQUEST['E-mail']); $_REQUEST['Name'] = htmlspecialchars($_REQUEST['Name']);
$_REQUEST['Text'] = htmlspecialchars($_REQUEST['Text']);
//Помещаем дату в переменную
$date date("d.m.y h:i");
//Циклом проверяем наличие ошибок при заполнении
do {
if (
trim($_REQUEST['E-mail']) === "" || trim($_REQUEST['Name']) === "" || trim($_REQUEST['Text']) === "") {echo "<center><b>Заполните ВСЕ поля!</b></center>"; break;}
if (
ereg(".+@.+\..+"$_REQUEST['E-mail']) === false) { echo "<center><b>E-mail введён не верно!</b></center>"; break;}
if (
strlen($_REQUEST['Text']) > "500") {echo "<center><b>Вы превысили ограничение в 500 символов!</b></center>"; break;}
//Если всё ок открываем файл для записи
$open fopen('comment.txt'"ab");
//Заменяем символ конца строки на хтмл эквилент =)
$_REQUEST['Text'] = str_replace("\n""<br />"$_REQUEST['Text']);
//Записываем в переменную то что надо сохранить и как сохранить...Записываем в файл....Закрываем файл.
$save $_REQUEST['E-mail']."\t".$_REQUEST['Name']."\t".$_REQUEST['Text']."\t".$date."\r\n";
fwrite($open$save); fclose ($open); 
//Тут я обновил страницу чтоб очистить посланые данные и закрыл цикл =)
echo "<META HTTP-EQUIV=Refresh CONTENT=\"0\">"; } while(0);} ?>

<br /><br /><table border="1" align="center"><tr>
<form action="<?=$_SERVER['REQUEST_URI']?>" method="post">
<td>Имя:<input maxlength="10" type="text" name="Name"></td>
<td>Е-mail:<input type="text" maxlength="30" name="E-mail"></td></tr></table>
<table align="center"><tr><td><textarea name="Text" cols="100" rows="10"></textarea></td></tr>
<tr><td><input type="submit" name="Add" value="Добавить отзыв">
<input type="reset" name="Add" value="Очистить"></td></tr></table></body></html>


mr.The 09.12.2007 15:54

Цитата:

$arr = file('Z:\home\custom\www\comment.txt');
фу. как никрасиво. сделай просто
Цитата:

$arr = file('comment.txt');
Цитата:

if (strpos($_REQUEST['E-mail'], "@") === false)
оригинально))

FeraS 09.12.2007 16:34

Цитата:

<br><br><table border=1 align=center>
следуй стандартам xhtml :):
Цитата:

<br /><br /><table border="1" align="center">

Doom123 09.12.2007 17:02

пасиба и +1 =)

bul.666 09.12.2007 17:05

PHP код:

?> 
<META HTTP-EQUIV=Refresh CONTENT="0"> <?php } while(0);}

=>
PHP код:

echo "<META HTTP-EQUIV=Refresh CONTENT=\"0\">";
 } while(
0);} 

PHP код:

if (strpos($_REQUEST['E-mail'], "@") === false) {echo "<center><b>E-mail введён не верно!</b></center>"; break;} 

=>
PHP код:

if (ereg(".+@.+\..+"$_REQUEST['E-mail'])) { echo "<center><b>E-mail введён не верно!</b></center>"; break;} 


Doom123 09.12.2007 17:14

круто +1=)

Немного не понел насчёт
PHP код:

 if (ereg(".+@.+\..+"$_REQUEST['E-mail'])) { echo "<center><b>E-mail введён не верно!</b></center>"; break;} 

Я с ereg не знаком а на сайте пхп.нет на инглише описывается... можно поподробней?

FeraS 09.12.2007 17:26

http://php.su/functions/?ereg

Doom123 09.12.2007 17:31

Ну а тада ошибочка выходит т.к вроде нада поставить условие с равнением отрицательного ответа типо:

PHP код:

if (ereg(".+@.+\..+"$_REQUEST['E-mail']) === false) { echo "<center><b>E-mail введён не верно!</b></center>"; break;} 

Пасиб за ссылочку


Время: 19:55