
so nun habe ich die alten wieder drauf gespielt und es geht wieder aber naja der alte fehler
Gästebuch
- Bitte nicht so oft/schnell schreiben...
- Der Text ist länger als 600 erlaubte Zeichen
- Bitte alle Felder ausfüllen
werde nun mal alle drei dateien hier rein kopieren und denke mal das du den fehler findest. so die erste ist ja im admin gbook.php
<?php
# Copyright by: Manuel
# Support: www.ilch.de
defined ('main') or die ( 'no direct access' );
defined ('admin') or die ( 'only admin access' );
$design = new design ( 'Admins Area', 'Admins Area', 2 );
$design->header();
##
###
####
##### A k t i o n e n
if ( !empty ($_GET['del']) ) {
$id = escape($_GET['del'], 'integer');
db_query("DELETE FROM `prefix_gbook` WHERE id = ".$id." LIMIT 1");
db_query("DELETE FROM prefix_koms WHERE uid = ".$id." AND cat = 'GBOOK'");
}
if (isset($_POST['sub'])) {
$name = escape($_POST['name'], 'string');
$mail = escape($_POST['mail'], 'string');
$page = escape($_POST['page'], 'string');
$text = escape($_POST['text'], 'string');
if (empty($_POST['gid'])) {
db_query("INSERT INTO prefix_gbook (name, mail, page, txt, time) VALUES ('".$name."','".$mail."','".$page."','".$text."', '".time()."')");
} else {
$gid = escape($_POST['gid'], 'integer');
db_query("UPDATE prefix_gbook SET name = '".$name."', mail = '".$mail."', page = '".$page."', txt = '".$text."' WHERE id = ".$gid);
}
}
$r = array ('name'=>'','mail'=>'','page'=>'','text'=>'','id'=>'');
if (isset($_GET['edit'])) {
$id = escape($_GET['edit'], 'integer');
$r = db_fetch_assoc(db_query("SELECT id, name, mail, page, txt as text FROM prefix_gbook WHERE id = ".$id));
}
$tpl = new tpl ('gbook', 1);
$tpl->set_ar_out($r,0);
$class = '';
$erg = db_query('SELECT name, mail, txt, id FROM `prefix_gbook` ORDER BY time DESC');
while ($r = db_fetch_assoc($erg) ) {
$class = ($class == 'Cmite' ? 'Cnorm' : 'Cmite' );
$text = substr(preg_replace("/\015\012|\015|\012/", " ", htmlentities(strip_tags(stripslashes($r['txt'])))),0,75);
echo '<tr class="'.$class.'">';
echo '<td><a href="admin.php?gbook=0&edit='.$r['id'].'"><img src="include/images/icons/edit.gif" /></a></td>';
echo '<td><a href="javascript:delcheck('.$r['id'].')"><img src="include/images/icons/del.gif"></a></td>';
echo '<td><b><a href="mailto:'.$r['mail'].'">'.$r['name'].'</a></b> <span class="smalfont">';
echo $text.'</span></td>';
echo '</tr>';
}
$tpl->out(1);
$design->footer();
?>
nun in include/contents die gbook.php
<?php
# Copyright by: Manuel
# Support: www.ilch.de
defined ('main') or die ( 'no direct access' );
$title = $allgAr['title'].' :: Gästebuch';
$hmenu = 'Gästebuch';
$design = new design ( $title , $hmenu );
$design->header();
# time sperre in sekunden
$timeSperre = $allgAr['Gsperre'];
/*
gbook
id , name , mail , page , ip , time , txt
*/
switch($menu->get(1)) {
case 1 :
$tpl = new tpl ( 'gbook.htm' );
$_SESSION['gbook_sperre'] = md5( genkey(10) );;
$ar = array (
'uname' => $_SESSION['authname'],
'SMILIES' => getsmilies(),
'schl' => $_SESSION['gbook_sperre'],
'TXTL' => $allgAr['Gtxtl']
);
$tpl->set_ar_out($ar,3);
if (!isset($_SESSION['klicktime'])) { $_SESSION['klicktime'] = 0; }
break;
case 2 :
$dppk_time = time();
if (($_SESSION['klicktime'] + $timeSperre) < $dppk_time
AND isset($_POST['name'])
AND isset($_POST['txt'])
AND trim($_POST['name']) != ""
AND trim($_POST['txt']) != ""
AND $_SESSION['gbook_sperre'] == $_POST['cho']
AND strlen ($_POST['txt']) <= $allgAr['Gtxtl'] ) {
$txt = escape($_POST['txt'], 'textarea');
$name = escape($_POST['name'], 'string');
$mail = escape($_POST['mail'], 'string');
$page = escape($_POST['page'], 'string');
db_query("INSERT INTO prefix_gbook VALUES (
null,
'".$name."',
'".$mail."',
'".$page."',
'".time()."',
'".getip()."',
'".$txt."'
)
");
$_SESSION['klicktime'] = $dppk_time;
wd('index.php?gbook',$lang['insertsuccessful']);
} else {
echo '- '.$lang['donotpostsofast'];
echo '<br />- '.sprintf($lang['gbooktexttolong'], $allgAr['Gtxtl']);
echo '<br />- '.$lang['plsfilloutallfields'];
}
break;
case 'show' :
if ($allgAr['gbook_koms_for_inserts'] == 1) {
$id = escape($menu->get(2), 'integer');
if (isset($_POST['name']) AND isset($_POST['text'])) {
$name = escape($_POST['name'], 'string');
$text = escape($_POST['text'], 'string');
db_query("INSERT INTO prefix_koms (name,text,uid,cat) VALUES ('".$name."', '".$text."', ".$id.", 'GBOOK')");
}
if ($menu->getA(3) == 'd' AND is_numeric($menu->getE(3)) AND has_right(-7, 'gbook')) {
$did = escape($menu->getE(3), 'integer');
db_query("DELETE FROM prefix_koms WHERE uid = ".$id." AND cat = 'GBOOK' AND id = ".$did);
}
$r = db_fetch_assoc(db_query("SELECT time, name, mail, page, txt as text, id FROM prefix_gbook WHERE id = ".$id));
$r['datum'] = date('d.m.Y', $r['time']);
if ($r['page'] != '') {
$r['page'] = get_homepage($r['page']);
$r['page'] = ' <a href="'.$r['page'].'" target="_blank"><img src="include/images/icons/page.gif" border="0" alt="Homepage '.$lang['from'].' '.$r['name'].'"></a>';
}
if ($r['mail'] != '') {
$r['mail'] = ' <a href="mailto:'.escape_email_to_show($r['mail']).'"><img src="include/images/icons/mail.gif" border="0" alt="E-Mail '.$lang['from'].' '.$r['name'].'"></a>';
}
$tpl = new tpl ( 'gbook.htm' );
$r['uname'] = $_SESSION['authname'];
$tpl->set_ar_out($r, 4);
$i = 1;
$erg = db_query("SELECT id, name, text FROM prefix_koms WHERE uid = ".$id." AND cat = 'GBOOK' ORDER BY id DESC");
while ($r1 = db_fetch_assoc($erg)) {
$r1['zahl'] = $i;
$r1['text'] = bbcode($r1['text']);
if (has_right(-7, 'gbook')) { $r1['text'] .= '<a href="index.php?gbook-show-'.$id.'-d'.$r1['id'].'"><img src="include/images/icons/del.gif" alt="'.$lang['delete'].'" border="0" title="'.$lang['delete'].'" /></a>'; }
$tpl->set_ar_out($r1, 5);
$i++;
}
$tpl->out(6);
}
break;
default :
$limit = $allgAr['gbook_posts_per_site']; // Limit
$page = ( $menu->getA(1) == 'p' ? escape($menu->getE(1), 'integer') : 1 );
$MPL = db_make_sites ($page , "" , $limit , "?gbook" , 'gbook' );
$anfang = ($page - 1) * $limit;
$tpl = new tpl ( 'gbook.htm' );
$ei1 = @db_query("SELECT COUNT(ID) FROM prefix_gbook");
$ein = @db_result($ei1,0);
$ar = array ('EINTRAGE' => $ein );
$tpl->set_ar_out($ar,0);
$erg = db_query("SELECT * FROM prefix_gbook ORDER BY time DESC LIMIT ".$anfang.",".$limit) or die (db_error());
while ($row = db_fetch_object($erg)) {
$page = '';
$mail = '';
if ($row->page) {
$row->page = get_homepage($row->page);
$page = ' <a href="'.$row->page.'" target="_blank"><img src="include/images/icons/page.gif" border="0" alt="Homepage '.$lang['from'].' '.$row->name.'"></a>';
}
if ($row->mail) {
$mail = ' <a href="mailto:'.escape_email_to_show($row->mail).'"><img src="include/images/icons/mail.gif" border="0" alt="E-Mail '.$lang['from'].' '.$row->name.'"></a>';
}
$koms = '';
if ($allgAr['gbook_koms_for_inserts'] == 1) {
$koms = db_result(db_query("SELECT COUNT(*) FROM prefix_koms WHERE uid = ".$row->id." AND cat = 'GBOOK'"),0,0);
$koms = '<a href="index.php?gbook-show-'.$row->id.'">'.$koms.' '.$lang['comments'].'</a>';
}
$ar = array ( 'NAME' => $row->name,
'DATE' => date("d.m.Y",$row->time),
'koms' => $koms,
'MAIL' => $mail,
'ID' => $row->id,
'PAGE' => $page,
'TEXT' => BBCode($row->txt)
);
$tpl->set_ar_out($ar,1);
}
$tpl->set_out('SITELINK', $MPL, 2 );
break;
}
//-----------------------------------------------------------|
$design->footer();
?>
und letztendlich die html aus templates
<table width="100%">
<tr>
<td width="50%" align="right">
{EINTRAGE} {_lang_entries}
</td>
<td width="50%" align="center">
<a href="index.php?gbook-1">{_lang_insert}</a>
</td>
</tr>
</table>
<br>
{EXPLODE}
<table width="100%" cellpadding="4" cellspacing="0" border="0" class="rand">
<tr class="Cmite">
<td width="40%"><b>{NAME}</b></td>
<td width="20%">{MAIL}{PAGE}</td>
<td width="30%" align="right">{DATE}</td>
</tr>
<tr class="Cnorm">
<td colspan="3">{TEXT}</td>
</tr>
</table>
{koms}
<br />
<br />
{EXPLODE}
<br />
<br />
<div align="center">{SITELINK}</div>
{EXPLODE}
<!-- G ä S T E B U C H E N T E R F O R M U L A R -->
<script language="JavaScript" type="text/javascript">
<!--
var ErlaubteAnzahl={TXTL};
function checkg ( ) {
if ( document.form.txt.value.length > ErlaubteAnzahl ) {
alert('Du hast mehr als ' + ErlaubteAnzahl + ' Zeichen verwendet');
return false;
} else {
var fehler = '';
if ( document.form.txt.value.length == 0 ) {
fehler += 'Bitte einen Text eingeben';
}
if ( document.form.name.value.length == 0 ) {
if ( fehler != '' ) {
fehler += "\n";
}
fehler += 'Bitte einen Namen eingeben';
}
if ( fehler != '' ) {
alert ( fehler );
return false;
} else {
return true;
}
}
}
function RestlicheZeichenErmitteln(d)
{
Laenge=document.form.txt.value.length;
if(Laenge>ErlaubteAnzahl)
{
document.form.txt.value=document.form.txt.value.substring(0,ErlaubteAnzahl);
RestlicheZeichen=0;
}
else
{
RestlicheZeichen=ErlaubteAnzahl-Laenge;
}
document.form.Laenge.value=RestlicheZeichen;
}
//-->
</script>
<script type='text/javascript' src='include/includes/js/bbcode.js'></script>
<form action="index.php?gbook-2" onsubmit="return checkg()" method="POST" name="form">
<input type="hidden" name="cho" value="{schl}" />
<table width="100%" class="border" cellspacing="1" border="0" cellpadding="5">
<tr>
<td class="Chead" colspan="2"><b>{_lang_insert}</b></td>
</tr><tr>
<td class="Cmite" width="100"><b>{_lang_name}</b></td>
<td class="Cnorm"><input type="text" value="{uname}" tabindex="1" name="name"></td>
</tr><tr>
<td class="Cmite"><b>{_lang_mail}</b> *</td>
<td class="Cnorm"><input type="text" name="mail" tabindex="2"></td>
</tr><tr>
<td class="Cmite"><b>{_lang_homepage}</b> *</td>
<td class="Cnorm"><input type="text" name="page" tabindex="3"></td>
</tr><tr>
<td class="Cmite" valign="top"><b>{_lang_message}</b><br><br>{SMILIES}</td>
<td class="Cnorm">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="100%">
<!-- BB Code START -->
<a href="javascript:simple('b')"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.bold.gif" alt="b" title="{_lang_bold}" border="0"></a>
<a href="javascript:simple('i')"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.italic.gif" alt="i" title="{_lang_italic}" border="0"></a>
<a href="javascript:simple('u')"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.underline.gif" alt="u" title="{_lang_underlined}" border="0"></a>
<a href="javascript:simple('code')"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.code.gif" alt="Code" title="{_lang_code}" border="0"></a>
<a href="javascript:simple_liste()"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.insertunorderedlist.gif" alt="{_lang_list}" title="{_lang_list}" border="0"></a>
<a href="javascript:simple('url')"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.link.gif" alt="Url" title="{_lang_link}" border="0"></a>
<a href="javascript:simple('img')"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.image.gif" alt="{_lang_picture}" title="{_lang_picture}" border="0"></a>
<!-- BB Code START -->
</td>
</tr><tr class="Cnorm">
<td width="100%"><textarea onblur="RestlicheZeichenErmitteln(this);" onchange="RestlicheZeichenErmitteln(this);" onfocus="RestlicheZeichenErmitteln(this);" onkeydown="RestlicheZeichenErmitteln(this);" onkeyup="RestlicheZeichenErmitteln(this);" cols="50" rows="10" tabindex="4" name="txt"></textarea><br />Noch <input size="3" name="Laenge" value="{TXTL}"> {_lang_signs}</td>
</tr>
</table></td>
</tr><tr class="Cdark">
<td></td><td><input type="submit" value="{_lang_formsub}" tabindex="5" accesskey="s"></td>
</tr></table></form>
{EXPLODE}
<table width="100%" cellpadding="4" cellspacing="0" border="0" class="rand">
<tr class="Cmite">
<td width="40%"><b>{name}</b></td>
<td width="20%">{mail}{page}</td>
<td width="30%" align="right">{datum}</td>
</tr>
<tr class="Cnorm">
<td colspan="3">{text}</td>
</tr>
</table>
<br />
<table width="100%" cellpadding="4" cellspacing="0" border="0" class="rand">
<tr class="Cnorm">
<td>
<form action="index.php?gbook-show-{id}" method="POST">
<fieldset>
<legend>{_lang_writecomment}</legend>
<input type="text" name="name" value="{uname}" /> <input type="submit" value="{_lang_enter}"><br />
<textarea cols="50" rows="2" name="text"></textarea><br />
</fieldset>
</form>
<br />
{EXPLODE}
<span class="Cmite"># <b>{zahl}</b> von {name}</span>
<br />{text}<br /><br />
{EXPLODE}
</td>
</tr>
</table>
so da wären alle Drei!
Gruss Kai


Desweiteren habe ich ein Firefox Tabellenfehler der aber im Exlorer von IE völlig normal ist hier auch mal gleich der code:
<BODY TOPMARGIN="0" LEFTMARGIN="0" MARGINWIDTH="0" MARGINHEIGHT="0">
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" align="center">
<TR>
<TD COLSPAN="5"><a href="http://www.blue-radio.eu" target="_blank"><IMG SRC="http://www.Blue-Radio.eu/images/streambox_grafik_1.jpg" WIDTH="110" BORDER="0" HEIGHT="43"></a></TD>
</TR>
<TR>
<TD><IMG SRC="http://www.Blue-Radio.eu/images/streambox_grafik_2.jpg" WIDTH="10" BORDER="0" HEIGHT="26"></TD>
<TD><a href="http://www.blue-radio.eu/include/downs/downloads/Player/blue-radio.asx"><IMG SRC="http://www.Blue-Radio.eu/images/streambox_grafik_3.jpg" WIDTH="31" BORDER="0" HEIGHT="26"></a></TD>
<TD><a href="http://87.118.100.135:8811/listen.pls"><IMG SRC="http://www.Blue-Radio.eu/images/streambox_grafik_4.jpg" WIDTH="30" BORDER="0" HEIGHT="26"></a></TD>
<TD><a href="include/downs/downloads/Player/real.ram"><IMG SRC="http://www.Blue-Radio.eu/images/streambox_grafik_5.jpg" WIDTH="30" BORDER="0" HEIGHT="26"></a></TD>
<TD><IMG SRC="http://www.Blue-Radio.eu/images/streambox_grafik_6.jpg" WIDTH="9" BORDER="0" HEIGHT="26"></TD>
</TR>
<TR>
<TD><IMG SRC="http://www.Blue-Radio.eu/images/streambox_grafik_7.jpg" WIDTH="10" BORDER="0" HEIGHT="23"></TD>
<TD COLSPAN="3" background="http://www.Blue-Radio.eu/images/streambox_grafik_8.jpg">
<marquee scrollamount="2" scrolldelay="5" onMouseOver="this.stop()" onMouseOut="this.start()"><font size="1" face="tahoma">
<b>www.Blue-Radio.eu - Denn guter Sound ist blau: wünschen ist erlaubt</b></font>
</marquee>
</TD>
<TD><IMG SRC="http://www.Blue-Radio.eu/images/streambox_grafik_9.jpg" WIDTH="9" BORDER="0" HEIGHT="23"></TD>
</TR>
<TR>
<TD COLSPAN="5"><IMG SRC="http://www.Blue-Radio.eu/images/streambox_grafik_10.jpg" WIDTH="110" BORDER="0" HEIGHT="18"></TD>
</TR>
</TABLE>
</BODY>
Freu mich auf die Lösungen denn dann ist die Page gesund denke ich. Gruss Kai
Wie sind nicht geboren um so zu sein wie andere uns haben wollen......