Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   reCAPTCHA спамеры достали (http://forum.oszone.net/showthread.php?t=175930)

binders 18-05-2010 06:44 1415735

reCAPTCHA спамеры достали
 
помогите пожалуйста прикрутить reCAPTCHA
к гостевой самому знаний не хватает

PHP код:

<html>
  <body>
    <form action="index.php" method="post">
<?php

require_once('recaptchalib.php');

// Get a key from http://recaptcha.net/api/getkey
$publickey "6LdfUggAAAAAALs1dGKKMOVT2MlGmF3epFIwHVen";
$privatekey "6LdfUggAAAAAAKemC0Ve1SEHw8zkXZtYjExthFGZ";

# the response from reCAPTCHA
$resp null;
# the error code from reCAPTCHA, if any
$error null;

# was there a reCAPTCHA response?
if ($_POST["recaptcha_response_field"]) {
        
$resp recaptcha_check_answer ($privatekey,
                                        
$_SERVER["REMOTE_ADDR"],
                                        
$_POST["recaptcha_challenge_field"],
                                        
$_POST["recaptcha_response_field"]);

        if (
$resp->is_valid) {
                echo 
"Всё ОК";
        } else {
                
# set the error code so that we can display it
                
$error $resp->error;
                echo 
"Ошибка!";
        }
}
echo 
recaptcha_get_html($publickey$error);
?>
    <br/>
    <input type="submit" value="Вперёд" />
    </form>
  </body>
</html>


PHP код:

<?
session_start
();
include(
"header.php");
$page=$_GET["page"];
$name=$_POST["name"];
$email=$_POST["email"];
$message=$_POST["message"];
$messages=$_POST["messages"];

if(isset(
$page)):
$sqlgbactiveno=mysql_query("select*from sysvals where gb_active='NO'");
$rowgbactiveno=mysql_fetch_array($sqlgbactiveno);
if(
$rowgbactiveno>0):
?>
<table width="100%" border="0" align="center" cellpadding="2" cellspacing="2">
<tr>
<td align="center"><i><b>Ошибка</b></i></td>
</tr>
<tr>
<td align="center"><font color="red">Гостевая книга отключена</font></td>
</tr>
</table>
<?
echo "<script language='Javascript'>function reload() {location = \"index.php\"}; setTimeout('reload()', 3000);</script>";
else:
?>
<div class="<?=$moduletable;?>">
      <h3 align="center"><i>Гостевая книга</i></h3></div>

<table width="100%" border="0" align="center" cellpadding="2" cellspacing="2">
<tr>
<td align="center"><a href="gb.php?page=0">Обновить</a>&nbsp;|&nbsp;<a href="gb.php?page#nap">Написать</a></td>
</tr></table>
<?
$sql
=mysql_query("select*from gb");
$zapis=mysql_num_rows($sql);
if(
$zapis==0):
?>

<div align="center"><font color="red">Записей нет</font></div>
<?
endif;
$sql3=mysql_query("select*from sysvals");
$row3=mysql_fetch_array($sql3);
$limit=$row3['gb_records'];
$result=mysql_query("SELECT count(*) FROM gb");
$row=mysql_fetch_row($result);
$numrows=$row['0'];
if (empty(
$_GET['page'])) $page=0;
$sql "SELECT * FROM gb ORDER BY id desc LIMIT $page,$limit";
$result mysql_query($sql) or die(mysql_error());
while(
$row=mysql_fetch_array($result)) {
$id=$row['id'];
$name=$row['name'];
$email=$row['email'];
$message=$row['message'];
$date=$row['date'];
$admin_date=$row['admin_date'];
$admin_text=$row['admin_text'];
$sql_bb_code=mysql_query("select*from sysvals where bb_code='YES'");
$row_bb_code=mysql_fetch_array($sql_bb_code);
if(
$row_bb_code>'0'):

$tags_smilie = array(
"/:angry:/siU",
);

$html_smilie = array(
"<img src=images/smilies/yep.gif width=19 height=18 border=0>"
);

$message=preg_replace($tags_smilie$html_smilie$message);

$tags_text = array(
"/\[color=(.*)\](.*)\[\/color\]/siU"
);

$html_text = array(
"<span style='font-family:\\1'>\\2</span>",
"<span style='font-size:\\1px'>\\2</span>",
"<strong>\\1</strong>",
"<i>\\1</i>",
"<u>\\1</u>",
"<s>\\1</s>",
"<div align='left'>\\1</div>",
"<div align='center'>\\1</div>",
"<div align='right'>\\1</div>",
"<a href='\\1' target='_blank'>\\2</a>",
"<a href='mailto:\\1'>\\1</a>",
"<table border='0' align='center' width='100%' cellpadding='4' cellspacing='0'><tr><td><span style='font-size: 11px'><b>Прикрепленное изображение:</b></span></td></tr><tr><td align='center' bgcolor='#000000' style='border: #C0C0C0 1px solid;'><a href=\"\\1\" target=\"_blank\"><img src=\"\\1\"></a></td></tr></table>",
"<table border='0' align='center' width='95%' cellpadding='4' cellspacing='0'><tr><td><span style='font-size: 11px'><b>Цитата:</b></span></td></tr><tr><td bgcolor='#000000' style='border: #C0C0C0 1px solid;'>\\1</td></tr></table>",
"<table border='0' align='center' width='95%' cellpadding='4' cellspacing='0'><tr><td><span style='font-size: 11px'><b>Писал(а):&nbsp;\\1</b></span></td></tr><tr><td bgcolor='#000000' style='border: #C0C0C0 1px solid;'>\\2</td></tr></table>",
"<font color='\\1'>\\2</font>"
);
$message=preg_replace($tags_text$html_text$message);
endif;
?>

<TABLE bgcolor=000000 width=95% align=center cellPadding=0 cellSpacing=0><TBODY>
<TR><TD width='1%'><IMG src='images/1.gif' width=14 height=12 border=0></TD><TD width='96%' background='images/2.gif'></TD><TD width='1%'><IMG src='images/3.gif' width=14 height=12 border=0></TD></TR>
<TR><TD background='images/4.gif'></TD>
<TD>


<div align="center"><b><a href="mailto:<?=$email;?>"><?=$name;?></a>&nbsp;<small><?=$date;?></small></b>&nbsp;<a href='javascript:' onclick="quote('<?=$name;?>');"><img src="images/buttons/to_quote.png" width="18" height="13" border="0" title="Цитировать"></a></div>
<hr size=-1 width=100%>
<div align="left"><?=$message;?></div>

<?
$ulength
=strlen($admin_text);
if (
$ulength>'0'):
$sql_bb_code=mysql_query("select*from sysvals where bb_code='YES'");
$row_bb_code=mysql_fetch_array($sql_bb_code);
if(
$row_bb_code>'0'):

$admin_tags_smilie = array(
"/:angry:/siU",
"/:yep:/siU"
);

$admin_html_smilie = array(
"<img src=images/smilies/yep.gif width=19 height=18 border=0>"
);

$admin_text=preg_replace($admin_tags_smilie$admin_html_smilie$admin_text);

$admin_tags = array(
"/\[color=(.*)\](.*)\[\/color\]/siU"
);

$admin_html = array(
"<font color='\\1'>\\2</font>"
);

$admin_text=preg_replace($admin_tags$admin_html$admin_text);
endif;
?>
<div align="left"><b><font color="gren">Ответ админа:</font>&nbsp;<small><?=$admin_date;?></small></b>&nbsp;<a href='javascript:' onclick="quote('Админ');"><img src="images/buttons/to_quote.png" width="18" height="13" border="0" title="Цитировать Админа"></div>

<div align="left" class="<?=$form;?>"><?=$admin_text;?></div>

<?
endif;
?>
</TD>
<TD background='images/6.gif'>&nbsp;</TD>
</TR><TR><TD><IMG src='images/8.gif' width=14 height=12 border=0></TD><TD background='images/5.gif'></TD><TD><IMG src='images/9.gif' width=14 height=12 border=0></TD></TR>
</TBODY></TABLE>
<br>
<?
}
$sqluser=mysql_query("select*from gb");
$rowuser=mysql_fetch_array($sqluser);
$sqlrecords=mysql_query("select*from sysvals");
$rowrecords=mysql_fetch_array($sqlrecords);
$limitrecords=$rowrecords['user_records'];
if (
$rowuser>$limitrecords):
echo 
'<table width=100% border=0 align=center cellpadding=0 cellspacing=0><tr><td class=tabletext><span style=float:left>Страницы:&nbsp;';
$pages=ceil($numrows/$limit);
for (
$i=1;$i<=$pages;$i++) {
$newoffset=$limit*($i-1);
if (
$page ==$newoffset)  {
print 
''.($i).'&nbsp;';
}
else {
echo 
'<a href="gb.php?page='.($newoffset).'">'.($i).'</a>&nbsp;';
}
}
echo 
'</span><span style=float:right><a href=javascript:window.scroll(0,0);><img src=images/buttons/up.png width=33 height=15 border=0 title=Наверх alt=Наверх></a></span></td></tr></table>';
endif;
function 
print_form($name,$email,$message,$code) {}
?>
<link rel="stylesheet" type="text/css" href="StyleBBCode.css">
<br><a name="nap"></a>
<table class="<?=$moduletablehilite3;?>" width="100%" border="0" align="center" cellpadding="2" cellspacing="2">
<tr>
<td colspan="2" align="center"><b><i>Добавить запись</i></b></td>
</tr>
<form method="POST" action="gb.php" id="body">
<tr>
<td align="left">Имя:</td>
<td align="left"><input class="<?=$form;?>" TYPE="text" NAME="name" maxlength="10"></td>
</tr>
<tr>
<td align="left">E-mail:</td>
<td align="left"><input class="<?=$form;?>" TYPE="text" NAME="email" size="40" maxlength="30"></td>
</tr>
<?
$sql_bb_code
=mysql_query("select*from sysvals where bb_code='YES'");
$row_bb_code=mysql_fetch_array($sql_bb_code);
if(
$row_bb_code>0):
?>
<tr>
<td align="left">Оформление:</td>
<td align="left">
<?
require_once 'inc/bbcode.inc.php';
?>
</td>
</tr>
<?
endif;
?>
<tr>
<td align="left">Сообщение:</td>
<td align="left"><textarea class="<?=$form;?>" cols="58" rows="11" wrap="hard" name="message"></textarea></td>
</tr>
<tr>
<td align="left">Проверочный код:</td>
<td align="left"><img src="turimg.php">&nbsp;&nbsp;&nbsp;<input class="<?=$form;?>" TYPE="text" NAME="code" maxlength="4" size="8"></td>
</tr>
<tr>
<td colspan="2" align="center"><input class="button1" type="submit" name="messages" value=".:: Добавить ::.">&nbsp;<input class="button1" type="reset" value=".:: Очистить ::."></td>
</tr>
</form>
</table>
<br><?
endif;
elseif(isset(
$messages)):
$ulength=strlen($name);
if ((
$ulength<'5') || ($ulength>'10')):
?>
<table width="100%" align="center" border="0" cellpadding="2" cellspacing="2">
<tr>
<td align="center"><i><b>Ошибка</b></i></td>
</tr>
<tr>
<td align="center"><font color="red">Длина имени должна быть от 5 до 10 символов!</font></td>
</tr>
</table>
<br>
<?
echo "<center><b><a href=\"javascript:history.back(1)\">Назад</a></b></center>";
else:
if (
$name=='Админ'):
?>
<table width="100%" align="center" border="0" cellpadding="2" cellspacing="2">
<tr>
<td align="center"><i><b>Ошибка</b></i></td>
</tr>
<tr>
<td align="center"><font color="red">Данное имя Админ запрещено!</font></td>
</tr>
</table>
<br>
<?
echo "<center><b><a href=\"javascript:history.back(1)\">Назад</a></b></center>";
else:
if (
$name=='АДМИН'):
?>
<table width="100%" align="center" border="0" cellpadding="2" cellspacing="2">
<tr>
<td align="center"><i><b>Ошибка</b></i></td>
</tr>
<tr>
<td align="center"><font color="red">Данное имя АДМИН запрещено!</font></td>
</tr>
</table>
<br>
<?
echo "<center><b><a href=\"javascript:history.back(1)\">Назад</a></b></center>";
else:
if (
$name=='админ'):
?>
<table width="100%" align="center" border="0" cellpadding="2" cellspacing="2">
<tr>
<td align="center"><i><b>Ошибка</b></i></td>
</tr>
<tr>
<td align="center"><font color="red">Данное имя админ запрещено!</font></td>
</tr>
</table>
<br>
<?
echo "<center><b><a href=\"javascript:history.back(1)\">Назад</a></b></center>";
else:
if (
$name=='Admin'):
?>
<table width="100%" align="center" border="0" cellpadding="2" cellspacing="2">
<tr>
<td align="center"><i><b>Ошибка</b></i></td>
</tr>
<tr>
<td align="center"><font color="red">Данное имя Admin запрещено!</font></td>
</tr>
</table>
<br>
<?
echo "<center><b><a href=\"javascript:history.back(1)\">Назад</a></b></center>";
else:
if (
$name=='ADMIN'):
?>
<table width="100%" align="center" border="0" cellpadding="2" cellspacing="2">
<tr>
<td align="center"><i><b>Ошибка</b></i></td>
</tr>
<tr>
<td align="center"><font color="red">Данное имя ADMIN запрещено!</font></td>
</tr>
</table>
<br>
<?
echo "<center><b><a href=\"javascript:history.back(1)\">Назад</a></b></center>";
else:
if (
$name=='admin'):
?>
<table width="100%" align="center" border="0" cellpadding="2" cellspacing="2">
<tr>
<td align="center"><i><b>Ошибка</b></i></td>
</tr>
<tr>
<td align="center"><font color="red">Данное имя admin запрещено!</font></td>
</tr>
</table>
<br>
<?
echo "<center><b><a href=\"javascript:history.back(1)\">Назад</a></b></center>";
else:
$sqlad=mysql_query("select*from users where id='1'");
$rowad=mysql_fetch_array($sqlad);
$admin=$rowad['user'];
if (
$name=="$admin"):
?>
<table width="100%" align="center" border="0" cellpadding="2" cellspacing="2">
<tr>
<td align="center"><i><b>Ошибка</b></i></td>
</tr>
<tr>
<td align="center"><font color="red">Данное имя <?=$admin;?> запрещено!</font></td>
</tr>
</table>
<br>
<?
echo "<center><b><a href=\"javascript:history.back(1)\">Назад</a></b></center>";
else:
$ulength=strlen($email);
if ((
$ulength<'10') || ($ulength>'30')):
?>
<table width="100%" align="center" border="0" cellpadding="2" cellspacing="2">
<tr>
<td align="center"><i><b>Ошибка</b></i></td>
</tr>
<tr>
<td align="center"><font color="red">Длина E-mail должна быть от 10 до 30 символов!</font></td>
</tr>
</table>
<br>
<?
echo "<center><b><a href=\"javascript:history.back(1)\">Назад</a></b></center>";
else:
$ulength=strlen($message);
if ((
$ulength<'10') || ($ulength>'500')):
?>
<table width="100%" align="center" border="0" cellpadding="2" cellspacing="2">
<tr>
<td align="center"><i><b>Ошибка</b></i></td>
</tr>
<tr>
<td align="center"><font color="red">Длина сообщения должна быть от 10 до 500 символов!</font></td>
</tr>
</table>
<br>
<?
echo "<center><b><a href=\"javascript:history.back(1)\">Назад</a></b></center>";
else:
if( 
strtolower($_POST['code'])!= strtolower($_SESSION['texto'])):
?>
<table width="100%" align="center" border="0" cellpadding="2" cellspacing="2">
<tr>
<td align="center"><i><b>Ошибка</b></i></td>
</tr>
<tr>
<td align="center"><font color="red">Проверочный код введён не верно!</font></td>
</tr>
</table>
<br>
<?
echo "<center><b><a href=\"javascript:history.back(1)\">Назад</a></b></center>";
else:
if (
eregi("^[a-z0-9_]+([-_\.]?[a-z0-9_])+@[a-z0-9]+([-_\.]?[a-z0-9])+\.[a-z]{2,4}"$email)):
$date=date("d.m.Y/H:i:s");
mysql_query("insert into gb values (null, '$name', '$email', '$message', '$date', '', '');");
?>
<table width="100%" align="center" border="0" cellpadding="2" cellspacing="2">
<tr>
<td align="center" class="tableheader">Запись добавлена</td>
</tr>
<tr>
<td align="center"><font color="red">Вы будите переадресованы через 3 сек.</font></td>
</tr>
</table>
<?
echo "<script language='Javascript'>function reload() {location = \"$site_url/gb.php?page=0\"}; setTimeout('reload()', 3000);</script>";
?>
<?
else:
?>
<table width="100%" align="center" border="0" cellpadding="2" cellspacing="2">
<tr>
<td align="center"><i><b>Ошибка</b></i></td>
</tr>
<tr>
<td align="center"><font color="red">Не правильно введён E-mail !</font></td>
</tr>
</table>
<br>
<?
echo "<center><b><a href=\"javascript:history.back(1)\">Назад</a></b></center>";
endif;endif;endif;endif;endif;endif;endif;endif;endif;endif;endif;endif;endif;
?>
<?
include("footer.php");?>



Время: 16:43.

Время: 16:43.
© OSzone.net 2001-