Chi Kien Uong
Geranienstraße 30
71034 Böblingen
Deutschland / Germany
|
If you are not registered or logged in, you may still use these forums but with limited features.
Show recent topics
|
|
|
Author |
Message |
21/09/2003 17:18:46
|
ibs
Newbie
Joined: 21/09/2003 16:35:55
Messages: 2
Offline
|
Hi, Im getting the error message
on my page
http://www.ibsite.com/guestbook/index.php
whenever I try to access the view page of my advanced guestbook. It just appeared. One day it worked, the next day it didnt. (Perhpas related to slow refreshreate of IE). I have tried installing a new guestbook, replacing the working gb.class.php entry from the new book, but to no avail. That leads me to suspect the problem lies elsewhere in the guestbook, but I have no idea where.
I have manually entered about 80 visits from my old guestbook, and wouldnt like to have to customize a new guestbook all over again.
Ive found two entries in this forum on the problem
http://proxy2.de/forum/viewtopic.php?t=2128&highlight=expecting+tstring+tvariable+tnumstring
http://proxy2.de/forum/viewtopic.php?t=2085&highlight=expecting+tstring+tvariable+tnumstring
but none with adequate answers. My gb.class.php document reads:
with line 14 in bold
<?php
/**
* ----------------------------------------------
* Advanced Guestbook 2.2 (PHP/MySQL)
* Copyright (c)2001 Chi Kien Uong
* URL: http://www.proxy2.de
* ----------------------------------------------
*/
class guestbook {
var $total;
var $db;
var $template;
function guestbook($path='') {
$this->db = new guestbook_vars($path);
$this->db->getVars();
$this->total = 0;
$this->template =& $this->db->template;
}
function get_nav($entry=0) {
global $HTTP_SERVER_VARS;
$self = basename($HTTP_SERVER_VARS['PHP_SELF']);
$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=\"img/back.gif\" width=\"16\" height=\"14\"><a href=\"$self?entry=$prev_page\">".$this->db->LANG["NavPrev"]."</a>\n";
}
if ($next_page < $this->total) {
$navigation = $navigation." <a href=\"$self?entry=$next_page\">".$this->db->LANG["NavNext"]."</a><img src=\"img/next.gif\" width=\"16\" height=\"14\">\n";
}
return $navigation;
}
function show_entries($entry=0) {
$LANG =& $this->db->LANG;
$VARS =& $this->db->VARS;
$this->db->fetch_array($this->db->query("select count(*) 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) {
$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']);
$result = $this->db->query("select * from ".$this->db->table['data']." order by id desc limit $entry, $last_entry");
while ($row = $this->db->fetch_array($result)) {
$DATE = $this->db->DateFormat($row['date']);
$MESSAGE = nl2br($row['comment']);
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=\"img/female.gif\" width=\"12\" height=\"12\">" : " <img src=\"img/male.gif\" width=\"12\" height=\"12\">";
}
if ($this->db->VARS["show_ip"] == 1) {
$hostname = ( eregi("^[-a-z_]+", $row['host']) ) ? "Host" : "IP";
$HOST = "$hostname: $row[host]\n";
}
$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']."\";");
}
eval("\$GB_ENTRIES .= \"".$template['entry']."\";");
$COMMENT = "";
$id--;
}
$TPL['GB_ENTRIES'] = $GB_ENTRIES;
return $TPL;
}
}
?>
Upon searching php forums, Ive found that actual errors to often are a couple of lines under or above the referred line, but as my knowledge of php is limited to searching in forums, they dont tell me much when I dont find an entry with exactly the same problem as I have.
Hope someone here can help me.
Ibs
|
|
|
|
|
|
Based on the open source JForum
|