Author |
Message |
|
???
it is another world i think.
suppose i understand what u say or managed to deal with php admin, how do i see and edit my messages? i mean i have to connect to a database i think.
|
|
|
Hi,
I was being spammed regularly like everybody, so i added human verification. It is ok for entries but now comments are being spammed. I added password protection for comments. That's ok for now. IP blocking does nothing to these suckers by the way.
But there are more than 500 spam entries scattered around, which is really hard to delete one by one.
I downloaded phpmy admin as u said but i have no clue how to use it.
Is there another way?
|
|
|
Hi,
Is it possible to archive comments in AGB to a word, html, etc. document?
|
|
|
Can anyone help me pls?
|
|
|
Hi,
My AGB started getting spam regulary, and the only header info on comment box is Host: xeon.resolve.ru.
As you mentioned in other topics, I checked it from http://www2.dnstools.com, info is as below.
Will it be enough if I only ban 72.232.106.169? Or do I have to ban a range? And do ı have to ban those nserver things?
Thnx
xeon.resolve.ru resolves to 72.232.106.169
Domain Whois Results:
% By submitting a query to RIPN's Whois Service
% you agree to abide by the following terms of use:
% http://www.ripn.net/about/servpol.html#3.2 (in Russian)
% http://www.ripn.net/about/en/servpol.html#3.2 (in English).
domain: RESOLVE.RU
type: CORPORATE
nserver: rslv5.resolve.ru. 72.36.223.45
nserver: rslv6.resolve.ru. 72.36.245.126
state: REGISTERED, DELEGATED
person: Dmitriy G Danilev
phone: +7 905 2006861
fax-no: +7 812 7406861
e-mail: dmitry@resolve.ru
e-mail: abuse@resolve.ru
e-mail: ipnet@resolve.ru
registrar: REGTIME-REG-RIPN
created: 2004.10.04
paid-till: 2007.10.04
source: TC-RIPN
|
|
|
i didnt know that, good idea.
thank you again carbonize, everything seems fine now after the upgrade.
|
|
|
now that's more funny,
an e-mail adress that should appear as "admin@zeynepadali.com" appears like this: "admin(at)zeynepadali(dot)com"
any solution for that??
thanks for your patiance...
|
|
|
ok, but i am not good enough to make "dangerous" changes with the code. last time i did that was a disaster. i see three functions in the code, the problem may be in show entires function i think. code is long, looks dangerous to me i paste it below...
function get_entries($entry,$last_entry) {
global $GB_UPLOAD, $GB_PG;
$entry = intval($entry);
$last_entry = intval($last_entry);
$img = new gb_image();
$img->set_border_size($this->db->VARS["img_width"], $this->db->VARS["img_height"]);
$LANG = &$this->db->LANG;
$id = $this->total-$entry;
$HOST = '';
$COMMENT = '';
$GB_ENTRIES = '';
$i=0;
$template['entry'] = $this->template->get_template($this->db->GB_TPL['entry']);
$template['com'] = $this->template->get_template($this->db->GB_TPL['com']);
$template['url'] = $this->template->get_template($this->db->GB_TPL['url']);
$template['icq'] = $this->template->get_template($this->db->GB_TPL['icq']);
$template['aim'] = $this->template->get_template($this->db->GB_TPL['aim']);
$template['email'] = $this->template->get_template($this->db->GB_TPL['email']);
$template['image'] = $this->template->get_template($this->db->GB_TPL['image']);
$result = $this->db->query("select x.*, y.p_filename, y.width, y.height, z.comments from ".$this->db->table['data']." x left join ".$this->db->table['pics']." y on (x.id=y.msg_id and y.book_id=2) left join ".$this->db->table['com']." z on (x.id=z.id) group by x.id order by x.id desc limit $entry, $last_entry");
while ($row = $this->db->fetch_array($result)) {
$row['email2'] = "";
$DATE = $this->db->DateFormat($row['date']);
$MESSAGE = nl2br($row['comment']);
if ($row['p_filename'] && ereg("^img-",$row['p_filename'])) {
if (file_exists("$this->path/$GB_UPLOAD/t_$row[p_filename]")) {
$row['p_filename'] = "t_$row[p_filename]";
}
$new_img_size = $img->get_img_size_format($row['width'], $row['height']);
eval("\$USER_PIC = \"".$template['image']."\";");
} else {
$USER_PIC = '';
}
if ($this->db->VARS["smilies"] == 1) {
$MESSAGE = $this->db->emotion($MESSAGE);
}
if (!$row['location']) {
$row['location'] = "-";
}
$bgcolor = ($i % 2) ? $this->db->VARS["tb_color_2"] : $this->db->VARS["tb_color_1"];
$i++;
if ($row['url']) {
eval("\$URL = \"".$template['url']."\";");
} else {
$URL = '';
}
if ($row['icq'] && $this->db->VARS["allow_icq"]==1) {
eval("\$ICQ = \"".$template['icq']."\";");
} else {
$ICQ = '';
}
if ($row['aim'] && $this->db->VARS["allow_aim"]==1) {
eval("\$AIM = \"".$template['aim']."\";");
} else {
$AIM = '';
}
if ($row['email']) {
/* E-mail Hack */
$row['email2'] = str_replace("@", "(at)", $row['email']);
$row['email2'] = str_replace(".", "(dot)", $row['email2']);
$row['email'] = "javascript:getEmail('".$this->db->encryptEmail("mailto:".$row['email'])."')";
eval("\$EMAIL = \"".$template['email']."\";");
} else {
$EMAIL = '';
}
if ($this->db->VARS["allow_gender"]==1) {
$GENDER = ($row['gender']=="f") ? " <img src=\"$GB_PG[base_url]/img/female.gif\" width=\"12\" height=\"12\">" : " <img src=\"$GB_PG[base_url]/img/male.gif\" width=\"12\" height=\"12\">";
} else {
$GENDER = '';
}
if ($this->db->VARS["show_ip"] == 1) {
$hostname = ( eregi("^[-a-z_]+", $row['host']) ) ? "Host" : "IP";
$HOST = "$hostname: $row[host]\n";
}
if ($row['comments']) {
$this->db->query("select * from ".$this->db->table['com']." where id='$row[id]' order by com_id asc");
while ($com = $this->db->fetch_array($this->db->result)) {
$com['comments'] = nl2br($com['comments']);
eval("\$COMMENT .= \"".$template['com']."\";");
}
}
$GB_COMMENT = (IS_MODULE && eregi("\?",$GB_PG["comment"])) ? "$GB_PG[comment]&gb_id=$row[id]" : "$GB_PG[comment]?gb_id=$row[id]";
eval("\$GB_ENTRIES .= \"".$template['entry']."\";");
$COMMENT = "";
$id--;
}
$TPL['GB_ENTRIES'] = $GB_ENTRIES;
return $TPL;
}
|
|
|
Thanx Carbonize, it says $EMAIL in the second occurance, as you say. Below is the code...
<tr bgcolor="$bgcolor">
<td width="32%" valign="top">
<table border="0" cellspacing="0" cellpadding="2">
<tr>
<td class="font2" valign="top" width="8%"><b>$id)</b></td>
<td width="92%"> <img src="$GB_PG[base_url]/img/ip.gif" width="14" height="14" alt="$LANG[AltIP]"> <img src="$GB_PG[base_url]/img/browser.gif" width="16" height="16" alt="$row[browser]">
$URL
$ICQ
$AIM
</td>
</tr>
<tr>
<td colspan="2" class="font1"><b>$row[name]</b> $GENDER</td>
</tr>
<tr>
<td colspan="2" class="font1">$row[email]</td>
</tr>
</table>
</td>
<td width="68%" class="font1" valign="top">
<div align="left" class="font3"><img src="$GB_PG[base_url]/img/post.gif" width="9" height="9">$DATE $HOST
<a href="$GB_COMMENT"><img src="$GB_PG[base_url]/img/edit.gif" width="18" height="13" border="0" alt="$LANG[AltCom]"></a>
$EMAIL
</div>
<hr size="1"><div align="left">
$USER_PIC $MESSAGE
</div>
$COMMENT
</td>
</tr>
|
|
|
problem solved ...
|
|
|
Hi,
I upgraded to 2.3.4, but the there is problem with the first page.
URL http://www.zeynepadali.com/agb/index.php
As you can see, visitor's e-mail doesn't show up correct. I modified something when i first installed AGB, but after upgrade, i cannot find the problem. Can you help me?
|
|
|
hi, there is an image on the index page, gbook.gif, i replaced it but its border size is not ok, how do i change its border size, etc.
|
|
|
ok i'll do it. before installation a few questions: (i couldnt find em in forum topics)
- will my messages remain the same, with the attached pictures?
- what are the file names that i must keep from the old version so that my entry page(index maybe?), comments form page (with deleted questions, smilies etc.), modified questions in my own language remains the same? i will be happy if you tell me, so that i save some time.
i really appreciate if you answer these in detail. i will not delete config.inc.php, not to forget
thank you very much carbonize...
|
|
|
ok here's the code, i didnt make any changes to it. another question, what is the location for comments previously added to agb?
<?php
/**
* ----------------------------------------------
* Advanced Guestbook 2.3.1 (PHP/MySQL)
* Copyright (c)2001 Chi Kien Uong
* URL: http://www.proxy2.de
* ----------------------------------------------
*/
class guestbook {
var $total;
var $db;
var $template;
var $path;
function guestbook($path='') {
$this->db = new guestbook_vars($path);
$this->db->getVars();
$this->total = 0;
$this->path = $path;
$this->template = &$this->db->template;
}
function get_nav($entry=0) {
global $HTTP_SERVER_VARS, $GB_PG;
$self = (IS_MODULE && eregi("\?",$GB_PG["index"])) ? "$GB_PG[index]&entry=" : basename($HTTP_SERVER_VARS['PHP_SELF'])."?entry=";
$next_page = $entry+$this->db->VARS['entries_per_page'];
$prev_page = $entry-$this->db->VARS['entries_per_page'];
$navigation = '';
if ($prev_page >= 0) {
$navigation = " <img src=\"$GB_PG[base_url]/img/back.gif\" width=\"16\" height=\"14\"><a href=\"$self$prev_page\">".$this->db->LANG["NavPrev"]."</a>\n";
}
if ($next_page < $this->total) {
$navigation = $navigation." <a href=\"$self$next_page\">".$this->db->LANG["NavNext"]."</a><img src=\"$GB_PG[base_url]/img/next.gif\" width=\"16\" height=\"14\">\n";
}
return $navigation;
}
function show_entries($entry=0) {
global $GB_PG;
$LANG =& $this->db->LANG;
$VARS =& $this->db->VARS;
$this->db->fetch_array($this->db->query("select count(*) as total from ".$this->db->table['data']));
$this->total = $this->db->record["total"];
$TPL = $this->get_entries($entry,$this->db->VARS["entries_per_page"]);
$TPL['GB_TOTAL'] = $this->total;
$TPL['GB_JUMPMENU'] = implode("\n",$this->generate_JumpMenu());
$TPL['GB_TIME'] = $this->db->DateFormat(time());
$TPL['GB_NAVIGATION'] = $this->get_nav($entry);
$TPL['GB_HTML_CODE'] = ($this->db->VARS["allow_html"] == 1) ? $this->db->LANG["BookMess2"] : $this->db->LANG["BookMess1"];
eval("\$guestbook_html = \"".$this->template->get_template($this->db->GB_TPL['header'])."\";");
eval("\$guestbook_html .= \"".$this->template->get_template($this->db->GB_TPL['body'])."\";");
eval("\$guestbook_html .= \"".$this->template->get_template($this->db->GB_TPL['footer'])."\";");
return $guestbook_html;
}
function generate_JumpMenu() {
$menu_array[] = "<select name=\"entry\" class=\"select\">";
$menu_array[] = "<option value=\"0\" selected>".$this->db->LANG["FormSelect"]."</option>";
if ($this->db->VARS["entries_per_page"] < $this->total) {
$remain = $this->total % $this->db->VARS["entries_per_page"];
$i = $this->total-$remain;
while ($i > 0) {
$num_max = $i;
$num_min = $num_max-$this->db->VARS["entries_per_page"];
$num_min++;
$menu_array[] = "<option value=\"$remain\">$num_min-$num_max</option>";
$i = $num_min-1;
$remain += $this->db->VARS["entries_per_page"];
}
}
$menu_array[] = "</select>";
$menu_array[] = "<input type=\"submit\" value=\"".$this->db->LANG["FormButton"]."\" class=\"input\">";
return $menu_array;
}
function get_entries($entry,$last_entry) {
global $GB_UPLOAD, $GB_PG;
$img = new gb_image();
$img->set_border_size($this->db->VARS["img_width"], $this->db->VARS["img_height"]);
$LANG =& $this->db->LANG;
$id = $this->total-$entry;
$HOST = '';
$COMMENT = '';
$GB_ENTRIES = '';
$i=0;
$template['entry'] = $this->template->get_template($this->db->GB_TPL['entry']);
$template['com'] = $this->template->get_template($this->db->GB_TPL['com']);
$template['url'] = $this->template->get_template($this->db->GB_TPL['url']);
$template['icq'] = $this->template->get_template($this->db->GB_TPL['icq']);
$template['aim'] = $this->template->get_template($this->db->GB_TPL['aim']);
$template['email'] = $this->template->get_template($this->db->GB_TPL['email']);
$template['image'] = $this->template->get_template($this->db->GB_TPL['image']);
$result = $this->db->query("select x.*, y.p_filename, y.width, y.height, z.comments from ".$this->db->table['data']." x left join ".$this->db->table['pics']." y on (x.id=y.msg_id and y.book_id=2) left join ".$this->db->table['com']." z on (x.id=z.id) group by x.id order by x.id desc limit $entry, $last_entry");
while ($row = $this->db->fetch_array($result)) {
$DATE = $this->db->DateFormat($row['date']);
$MESSAGE = nl2br($row['comment']);
if ($row['p_filename'] && ereg("^img-",$row['p_filename'])) {
if (file_exists("$this->path/$GB_UPLOAD/t_$row[p_filename]")) {
$row['p_filename'] = "t_$row[p_filename]";
}
$new_img_size = $img->get_img_size_format($row['width'], $row['height']);
eval("\$USER_PIC = \"".$template['image']."\";");
} else {
$USER_PIC = '';
}
if ($this->db->VARS["smilies"] == 1) {
$MESSAGE = $this->db->emotion($MESSAGE);
}
if (!$row['location']) {
$row['location'] = "-";
}
$bgcolor = ($i % 2) ? $this->db->VARS["tb_color_2"] : $this->db->VARS["tb_color_1"];
$i++;
if ($row['url']) {
eval("\$URL = \"".$template['url']."\";");
} else {
$URL = '';
}
if ($row['icq'] && $this->db->VARS["allow_icq"]==1) {
eval("\$ICQ = \"".$template['icq']."\";");
} else {
$ICQ = '';
}
if ($row['aim'] && $this->db->VARS["allow_aim"]==1) {
eval("\$AIM = \"".$template['aim']."\";");
} else {
$AIM = '';
}
if ($row['email']) {
eval("\$EMAIL = \"".$template['email']."\";");
} else {
$EMAIL = '';
}
if ($this->db->VARS["allow_gender"]==1) {
$GENDER = ($row['gender']=="f") ? " <img src=\"$GB_PG[base_url]/img/female.gif\" width=\"12\" height=\"12\">" : " <img src=\"$GB_PG[base_url]/img/male.gif\" width=\"12\" height=\"12\">";
} else {
$GENDER = '';
}
if ($this->db->VARS["show_ip"] == 1) {
$hostname = ( eregi("^[-a-z_]+", $row['host']) ) ? "Host" : "IP";
$HOST = "$hostname: $row[host]\n";
}
if ($row['comments']) {
$this->db->query("select * from ".$this->db->table['com']." where id='$row[id]' order by com_id asc");
while ($com = $this->db->fetch_array($this->db->result)) {
$com['comments'] = nl2br($com['comments']);
eval("\$COMMENT .= \"".$template['com']."\";");
}
}
$GB_COMMENT = (IS_MODULE && eregi("\?",$GB_PG["comment"])) ? "$GB_PG[comment]&gb_id=$row[id]" : "$GB_PG[comment]?gb_id=$row[id]";
eval("\$GB_ENTRIES .= \"".$template['entry']."\";");
$COMMENT = "";
$id--;
}
$TPL['GB_ENTRIES'] = $GB_ENTRIES;
return $TPL;
}
}
?>
|
|
|
Carbonize pls help me, i am waiting in front of the screen for your answer I wish i made copies of the files that i changed, and manually delete the spam messages.
|
|
|