Наверное эта тема уже всех достала... После отправки формы делаю перенаправление на ту же страницу и получаю:
| Код | Warning: Cannot modify header information - headers already sent by (output started at адрес скрипта) in адрес скрипта on line 62
|
Наверное придется показать полный код
| Код | <html><body background=BGFON.jpg> <script language="javascript"> function smile(num) { text=mygb.message.value; mygb.message.value=text+" <img src=smiles/"+num+".gif>"; } </script> <form name=mygb action=gb3.php METHOD=post><input type=text name=name> <b>Имя</b><br> <input type=text name=email> <b>E-mail</b><br><br><b>Сообщение</b><br> <textarea rows=8 cols=25 name=message></textarea><br><input type=submit name=sbm value=добавить><br><br> <table><tr align=center> <? $dir=opendir("./smiles"); while(($n=readdir($dir))!==false) if(!is_dir($n)) $smiles[]=$n;
for($i=0;$i<count($smiles);$i++) { ?> <td><img src='smiles/<? echo"$i.gif"?>' onclick="smile('<?=$i?>')" onMouseover="this.style.cursor='hand'" onMouseout="this.style.cursor=''">  </td> <? } ?> </tr></table> <? Error_Reporting(E_ALL & ~E_NOTICE); $f="./gb.txt"; $tmp="./gb_tmp.txt"; if($_POST['sbm']) {
$message=str_replace("\n", "<br>", $_POST['message']); if(!preg_match("/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/",$_POST['email'])) { $err="Неверный E-mail адрес! "; } if($_POST['name']=="") $err.="Забыли ввести имя! "; if($_POST['message']=="") $err.="Забыли ввести сообщение! "; if(strlen($message)>70&&strpos($message," ")==false) $err.="Слишком длинная строка";
if($err) { echo "<font color=red>".$err."</font>"; } else { if(copy($f,$tmp)) { $w=fopen($f,"w"); flock($w,2); fwrite($w,date("d.m.Y. H:i:s")."|".$_POST['email']."|"." ".$_POST['name']."|"." ".$message."\n"); $r=fopen($tmp,"r"); flock($r,1); while($messages=fgets($r,1000)) fputs($w, $messages); flock($r,3); fclose($r); flock($w,3); fclose($w); unlink($tmp); } header("Location".$_SERVER['REQUEST_URI']); exit; } }
$page=isset($_GET['page']) ? $_GET['page'] : 1; show($page);
function show($page) { global $f; $kol=$page*10; $messages=explode('\n',implode('\n',file($f))); echo "<table width=100% border=1><tr><td><table border=0>"; for($i=($page-1)*10; $i<count($messages); $i++) { if($i<$kol) { $mess=explode("|",$messages[$i]); list($date,$email,$name,$message)=$mess;
echo "<tr height=40><td background='BGF.jpg'><b> <font color=#ffffff>Сообщение от ".$name." </font></b> <br>  <b>".$email."</b></td><td background='BGF.jpg'><b>".$date."</b></td></tr> <tr><td width=100% height=100>".$message."</td></tr>"; } } echo "</table></td></tr></table><br>";
$num=count($messages); $numstr=ceil($num/10); $count=1; for($k=1; $k<=$numstr; $k++) { if(count($messages)>=$count) echo "  <a href=gb3.php?page=$k>$k</a>"; $count+=10; } } ?> </body></html> |
|