Файл: www/include/function_comment.php
Строк: 150
<?
/*-----------------------------------------------------------
Product: BBlog 2.0
License: GNU General Public License (http://www.gnu.org/licenses/gpl.html)
Copyright: (c) 2007 Batia.info
Version: 2.0 RC1
-------------------------------------------------------------*/
if ( !defined('INDEX') ) die("Эта страницу для вас недоступна!");
/* Функция показывает кол-во комментариев. */
function count_comment($page) {
db_connect();
$sql = mysql_query("SELECT * FROM comment WHERE page = '$page' ") or die("Невозможно отправить запрос к БД");
$content = mysql_num_rows($sql);
return $content;
}
##################################################################
## Функция отображает комментарии к страничке. ##
##################################################################
function show_all_comment($id, $module) {
db_connect();
$page = $module.$id;
$sql = mysql_query("SELECT * FROM comment WHERE page = '$page' ORDER BY id ASC") or die("Невозможно выполнить запрос к БД");
$num_row=mysql_num_rows($sql);
if($num_row =="0" ) {
$content = '<p class="title" style="color:red;">Комментариев нет</p>';
}else {
$content = '<p class="title">Комментарии к записи:</p>';
}
for($i = 0; $i < $num_row; $i++) {
$r = mysql_fetch_array($sql);
$id = $r['id'];
$author = stripslashes($r['author']);
$date = $r['date'];
$messege = stripslashes($r['messege']);
$messege= nl2br($messege);
$content .= do_HTML_comment_show($id, $author, $date, $messege);
}
$content .= add_comment_show_form($page);
return $content;
}
##################################################################
## Функция отвечающая за шаблон комментария ##
##################################################################
function do_HTML_comment_show($id, $author, $date, $messege) {
$content ='
<table>
<tr>
<td valign="top" align="left" class="comment_author" ><b><u>'.$author.'</u></b> <span class="comment_date"> <i >'.$date.'</i></span></td>
</tr>
<tr>
<td align="left" class="comment_messege">'.$messege.'</td>
</tr>
</table><br>
';
return $content;
}
##################################################################
## Функция выводит на экран форму добавления комментария ##
##################################################################
function add_comment_show_form($page) {
################################################################################
####################-----------ГЕНЕРИРУЕМ ИЗОБРАЖЕНИЕ ---------------###########
################################################################################
$text_y="37"; // Координаты текста по оси у.
$text_x="10"; // Координаты текста по оси х.
$text_angle="0"; // Угол наклона текста
$font_size="30"; // Размер шрифта
$font_file="font/entangle.ttf"; // Файл шрифта.
srand((double) microtime() * 1000000);
$a= rand(0,9);
$a.= rand(0,9);
$a.= rand(0,9);
srand((double) microtime() * 876);
$a.= rand(0,9);
$a.= rand(0,9);
// Сгенерируем хэш-код, с помощью функции шифрования и отправим его в форме в скрытом поле
$hash_code = sha1($a);
$width="130";
$height="50";
$im = imagecreatetruecolor($width, $height);
$white = imagecolorallocate($im, 255, 255, 255);
$blue = imagecolorallocate($im, 150, 150, 150);
imagefill($im, 0, 0, $white);
imagettftext($im, $font_size, $text_angle, $text_x, $text_y, $blue, $font_file, $a);
imagepng($im,"images/code.png");
##############################################################################
#########3 Конец генерации изображения ##############
##############################################################################
if(isset($_COOKIE['username'])) {
$cookie_username = strip_tags($_COOKIE['username']);
}else{
$cookie_username='';
}
$content ='
<script language="javascript" type="text/javascript">
function checkmailform()
{
if ( (document.forms.sender.username.value == null) || (document.forms.sender.username.value.length < 3) )
{
alert("Вы ввели слишком короткое имя пользователя");
document.forms.sender.username.focus();
return false;
}
if ( (document.forms.sender.messge.value == null) || (document.forms.sender.messege.value.length < 5) )
{
alert("Вы забыли ввести комментарии! Либо он слишком мал.");
document.forms.sender.messege.focus();
return false;
}
if ( (document.forms.sender.verify_code.value == null) || (document.forms.sender.verify_code.value.length < 4) )
{
alert("Введите корректный код подтверждения!");
document.forms.sender.verify_code.focus();
return false;
}
return true;
}
</script>
<form name="sender" id="sender" onsubmit="return checkmailform();"
action="/comment.php?page='.$page.'" method="POST">
<p class="title">Добавление комментария</p>
<table border=0>
<tr>
<td>Ваше имя:</td>
<td><input type="text" name="username" id="username" size="34" value="'.$cookie_username.'"></td>
</tr>
<tr>
<td colspan="2">
<small>Ваш комментариий:</small><br>
<textarea name="messege" id="messege" rows="6" cols="42"></textarea>
</td>
</tr>
<tr>
<td><img src="/images/code.png?hash='.$hash_code.'" ></td>
<input type="hidden" value="'.$hash_code.'" name="hash">
<td> Введите код с картинки:
<input type="text" name="verify_code" id="verify_code" maxlength="5" size="3"></td>
</tr>
<tr>
<td colspan="2">
<input type="submit" value="Отправить">
<input type="reset" value="Очистить">
</td>
</tr>
</table>
</form>
';
return $content;
}
?>