Seite 1 von 20

Gästebuch Modul für V4.4.2 /v4.4.3

Verfasst: Fr 20. Feb 2004, 14:59
von Snoopy
Hallo,

Es ist mal wieder so weit, ein neues Modul für die Community ist da.
Bild
Das Gästebuch hat folgende Features:

1.Emoticon Eingabe
2.Spam Schutz einstellbar über Cookies
3.Benachrichtigung über neue Einträge via E-Mail
4.Sofortige anzeige von Einträgen auswählbar
5.IP und Host werden in der DB gespeichert
6.Einträge in das gästebuch können im Backend Aktiviert (wenn keine sofortige Anzeige gewählt)
oder Deaktiviert werden.
7.Roman Block: Ausgabe der max. Zeichen einstellbar. (abschnitt nur nach ganzen Wörtern.
8.URL und E-Mail Adresse werden ausgegeben, wenn der User sie eingibt.
9.Max. angezeigte Einträge pro Seite auswählbar (Blätterfunktion)


- Das Gästebuch Modul benötigt einen zusätzlichen Table in der Datenbank


SQL-Dump:

Code: Alles auswählen

CREATE TABLE con_guestbook ( 
   id int(8) DEFAULT '0' NOT NULL auto_increment, 
   name varchar(40) NOT NULL, 
   email varchar(40) NOT NULL, 
   location varchar(40) NOT NULL, 
   comments text NOT NULL, 
   url varchar(50) NOT NULL, 
   active int(1) DEFAULT '1' NOT NULL,
   client int(1) DEFAULT '1' NOT NULL,
   date datetime DEFAULT '0000-00-00 00:00:00' NOT NULL, 
   PRIMARY KEY (id) 
); 
- In cfg_sql.inc.php müssen folgende Zeilen eingetragen werden:

$cfg["Tab"]["guestbook"] = "con_guestbook";
$cfgTab_guestbook = "con_guestbook";

- im Layout, dass Ihr benutzen wollt, benötigt Ihr im Head noch folgendes Javascript:

Code: Alles auswählen

<script language="JavaScript">
	function insert(gif)
	{
		document.gb.comments.value +=gif; 
		opener.show_chars_left();
		return;		
	}
</script>

Das ganze besteht aus zwei Modulen. Also der Ausgabe des Gästebuchs und der Eingabe der Postings

Modul Gästebuch Ausgabe

INPUT:

Code: Alles auswählen

/*********************************************** 
* CONTENIDO MODUL -  INPUT 
* 
* Modulname   :     Guestbook Ausgabe v1.1
* Copyright   :     P.beauvain 
* Created     :     14-02-2004 
************************************************/ 
echo "<input type=\"hidden\" name=\"CMS_VAR[0]\" value=\"".$value."\">"; 
echo "<table align=\"left\" cellpadding=\"0\" cellspacing=\"0\">"; 
echo "</SELECT></td></tr>";
echo "
        <tr>
          <td>Anzahl Einträge/Seite:   </td>
          <td><input type=\"text\" name=\"CMS_VAR[4]\" value=\"CMS_VALUE[4]\"></td></tr>";

$query = "SELECT * FROM ".$cfg["tab"]["upl"]." WHERE filetype = 'gif'";

$db->query($query);

while ($db->next_record()) {
//$bild replaces old $filename 
 $bild[$db->f("idupl")] = $db->f("filename");

} // end while

function d_checked($which) {
  if ($which != "") {
    return "checked";
  } 
} // end function

  echo "<tr>\n";
  echo "<td>WWW-Image</td>\n";
  echo "<td><select name=\"CMS_VAR[5]\">\n";
  
  if (is_array($bild)) {
    foreach ($bild as $key => $value) {
      if ("CMS_VALUE[5]" == $value) {
        echo "<option selected=\"selected\" value=\"". $value ."\">". $value ."</option>";
      } else {
        echo "<option value=\"". $value ."\">". $value ."</option>";
      } // end if
    } // end foreach
  } // end if
  
  echo "</select></td>\n";
  echo "</tr>\n";

  echo "<tr>\n";
  echo "<td>Mail-Image</td>\n";
  echo "<td><select name=\"CMS_VAR[6]\">\n";
  
  if (is_array($bild)) {
    foreach ($bild as $key => $value) {
      if ("CMS_VALUE[6]" == $value) {
        echo "<option selected=\"selected\" value=\"". $cfgClient[1]["frontendpath"]["img"].$value ."\">". $value ."</option>";
      } else {
        echo "<option value=\"". $value ."\">". $value ."</option>";
      } // end if
    } // end foreach
  } // end if
  
  echo "</select></td>\n";
  echo "</tr>\n";

echo "</table>";

OUTPUT:

Code: Alles auswählen

<br><p><B>Einträge mit ICONS haben Links auf E-Mail und URL</B></p>

<?php

/*********************************************** 
* CONTENIDO MODUL -  OUTPUT 
* 
* Modulname   :     Guestbook Ausgabe v1.1
* Copyright   :     P.beauvain 
* Created     :     14-02-2004 
************************************************/ 
$accessGranted = false; 
  $permissions = $auth->auth["perm"]; 
   $permissions = explode(',', $permissions); 
   foreach ($permissions as $perm) 
   if ($perm == "sysadmin" || $perm == "admin[".$client."]") 
   $accessGranted = true; 

switch ($eintrag) {      // das erste mal beim aufruf ist $eintrag undefiniert 
  case ""; 
    $eintrag = "0";      // deswegen wertzuweisung 0 
} 
$zps = "CMS_VALUE[4]";              // anzeige der einträge pro Seite 

$max = ($eintrag + $zps);
$meineseite=$auth->url();
if (!$accessGranted) { $where = " WHERE active=1 AND client=$client"; }
else { $where = " WHERE client=$client"; }
if($accessGranted) {
$sql = "UPDATE ".$cfgTab_guestbook." SET active=".$active." WHERE id='".$gbid."' LIMIT 1";
	$db->query($sql);
}
$a = "view";

// wenn view als aktion übergeben wird bzw. beim erstmaligen Seitenaufruf 
if($a == "view") 
{ 
  //Zählen der Datensätze 
  $sql = "SELECT count(*) AS total FROM ".$cfgTab_guestbook.$where;
  $db->query($sql);
  $db->next_record();
  $eintraege = $db->f("total"); 
echo "<br>";
echo "<table>";

  //Unternavigation zusammenbauen
  $gbnav = "";
  $gbnav .= "<table width=520px cellspacing=0 cellpadding=0><tr>";
  if ($max >= $eintraege)   	
  $gbnav .= "<td class=textbold><p>  Einträge: ".($eintrag+1)."-".($eintraege)." von ".$eintraege."</p></td>"; 
  else   
  $gbnav .= "<td class=textbold><p>  Einträge: ".($eintrag+1)."-".($max)." von ".$eintraege."</p></td>";
  $gbnav .= "<td class=textbold align=right><p>"; 
  $pages = $eintraege / $zps;
  if ($pages > 1) {
    $gbnav .= "gehe zu Seite ";
    for ($ii = 0; $ii < $pages; $ii++) {
     if ($ii != ($eintrag / $zps)) {
       $gbnav .= "<a href=\"$meineseite&a=view&eintrag="; 
       $gbnav .= ($ii * $zps); 
       $gbnav .= "\">[".($ii+1)."]</a> ";
     }
    }
  }
  $gbnav .= "</p></td>";

  //Ausgabe Navigation
//  echo $gbnav;
  
  // Daten aus der Datenbank abfragen mit der Einschränkung $eintrag (d.h. welche ausgegeben werden sollen) und $zps (anzahl der anzuzeigenden elemente) 
  $sql = "SELECT name, email, url, date, location, comments, id, active FROM $cfgTab_guestbook $where order by date desc LIMIT $eintrag,$zps";
  $db->query($sql);

  // Auslesen des Ergebnisse pro Reihe und Generierung der Seite 
  while ($db->next_record()) { 
    echo "<p><table width=80% border=0 cellpadding=0 cellspacing=0>"; 
    
    echo "<td class=textbold><span ID=fontCMS_VALUE[1]>".$db->f("name")."</span><br><span ID=fontCMS_VALUE[2]>".$db->f("date")."</span></td>";
    echo "<td align=right valign=top>";
if($accessGranted) {
      if ($db->f("active") == 0) { $imgsrc = $cfgPathContenido.$cfgPathImg."deactivate.gif"; }
      if ($db->f("active") == 1) { $imgsrc = $cfgPathContenido.$cfgPathImg."activ.gif"; }
      echo "<a href=$meineseite&active=".(($db->f("active")*-1)+1)."&gbid=".$db->f("id")."&eintrag=".$eintrag."><img src=$imgsrc border=0></a>";
    }        

if ($db->f("url") != "") { echo "<a href=\"http://".$db->f("url")."\" target=_blank><img src=".$cfgClient[1]["frontendpath"]["img"]."upload/bilder/CMS_VALUE[5] border=0 hspace=5></a>"; }
if ($db->f("email") != "") { echo "<a href=\"mailto:".$db->f("email")."\"><img src=".$cfgClient[1]["frontendpath"]["img"]."upload/bilder/CMS_VALUE[6] border=0></a></td>"; }
    
echo "</tr>";
    echo "<tr><td class=text ID=fontCMS_VALUE[3] colspan=3 valign=top><p>".stripslashes($db->f("comments"))."</p></td></tr>"; 

    //Eintrag aktivieren/deaktivieren
   {
      if ($a == "view") { $imgsrc = $cfgPathContenido.$cfgPathImg."line_top.gif"; }
      echo "<tr><td colspan=2><a href=\"#top\"><img src=$imgsrc border=0></a></td></tr>";
    }
    echo "</table></p><br>"; 
  }

  //Ausgabe Navigation
  echo $gbnav;
}

echo "</table>";

?>

Gästebuch Eintrag:

INPUT:

Code: Alles auswählen

/*********************************************** 
* CONTENIDO MODUL -  INPUT 
* 
* Modulname   :     Guestbook Eingabe v1.1
* Copyright   :     P.beauvain 
* Created     :     14-02-2004 
************************************************/ 
echo "<input type=\"hidden\" name=\"CMS_VAR[0]\" value=\"".$value."\">"; 
echo "<table align=\"left\" cellpadding=\"0\" cellspacing=\"0\">"; 
echo "</SELECT></td></tr>";
echo "<tr valign=\"top\"><td width=\"202\">Emailbenachrichtigung: ";
echo "Ja <INPUT TYPE=\"checkbox\" NAME=\"CMS_VAR[3]\" VALUE=\"1\" ";
if("CMS_VALUE[3]" == 1){echo "checked=checked"; }; 
echo "> An:</td><td>";
echo "<INPUT TYPE=\"text\" NAME=\"CMS_VAR[4]\" VALUE=\"";
if("CMS_VALUE[4]"){ echo "CMS_VALUE[4]"; } else { echo $cfgNewsletter["from"]; };
echo "\"></td></tr>";
if("CMS_VALUE[5]" == 1) { $checked = "checked=checked"; } 
//else { $checked = ""; }
echo "<tr>
        <td>Sofort anzeigen:</td>
        <td><input type=\"checkbox\" name=\"CMS_VAR[5]\" value=\"1\" ".$checked."></td>
        </tr>
";
echo "<tr>";
echo "<td width=\"202\">Cookie gegen widerholte Einträge :</td><td><INPUT TYPE=\"radio\" NAME=\"CMS_VAR[6]\"
VALUE=\"0\"";
if("CMS_VALUE[6]" ==0){echo "checked=checked";};echo"> off
<INPUT TYPE=\"radio\" NAME=\"CMS_VAR[6]\" VALUE=\"1\"";
if("CMS_VALUE[6]" ==1){echo "checked=checked";};echo"> on</td></tr>";      

echo "<tr>"; 
echo"<td width=\"202\">Cookie Lifetime (1 = 1 Tag etc.) :
</td><td><input type=\"text\" name=\"CMS_VAR[8]\" value=\"CMS_VALUE[8]\" ></td></tr>"; 

echo "<tr>";              
echo"<td width=\"202\">Angezeigte Länge in Zeichen :
</td><td><input type=\"text\" name=\"CMS_VAR[7]\" value=\"CMS_VALUE[7]\" ></td></tr>"; 

echo "</table>";
OUTPUT:

Code: Alles auswählen

<br><p><B>Bitte mindestens Name und Kommentar angeben</B>
<div>Um Ihrem Beitrag ein <b>Emoticon</b> hinzuzufügen, einfach auf ein Smiley klicken ! Sie können auch den</div>
<div>Code eingeben, der erste Smiley wäre dann z.B.: :-)</div></p>

<?php
/*********************************************** 
* CONTENIDO MODUL -  OUTPUT 
* 
* Modulname   :     Guestbook Ausgabe v1.1
* Copyright   :     P.beauvain 
* Created     :     14-02-2004 
************************************************/ 
$activ = "CMS_VALUE[5]";
if ($activ == "") { $activ = "0";
}
$sperre ="CMS_VALUE[6]";
$links  = explode('?',$PHP_SELF);
$link   = $links[0];
$link   = $link."?idcat=".$idcat; // back-link
$meineseite=$auth->url();

if ($a == "") { $a = "add"; }
if ($a == "add") {
  
echo "<br>";
  echo "<FORM  name='gb' id='gb' action=".$auth->url()." method='post' enctype='application/x-www-form-urlencoded'>"; 
  echo "<INPUT  TYPE=hidden  NAME=a  VALUE=send>"; 
  echo "<input type=hidden name=required value=name,comments>";
  echo "<table border=0 cellpadding=4 cellspacing=0 width=515 >
          <tr><td class=p1 align=right  width=12%><B> Name:  </b></td><td><INPUT class=tr12  TYPE=text NAME=name VALUE='$name'style=width:95%;></td><td width=160 rowspan=8 valign=top>
<table width=142 border=0 align=right cellspacing=0 cellpadding=0>
                                    <tr> 
                                      <td width=78 class=text><strong>Bedeutung</strong></td>
                                      <td width=39 class=text><div align=center><strong>Icon </strong></div></td>
                                      <td width=40 class=text><strong> Code</strong></td>
                                    </tr>
                                    <tr> 
                                      <td class=p4>lacht</td>
                                      <td align=center valign=middle><img src=smileys/smile.gif onClick=insert(':-)');></td>
                                      <td class=p4>:-)</td>
                                    </tr>
                                    <tr> 
                                      <td class=p4>Zunge streckend</td>
                                      <td align=center valign=middle><img src=smileys/tongue.gif onClick=insert(':-P');></td>
                                      <td class=p4>:-P</td>
                                    </tr>
                                    <tr> 
                                      <td class=p4>augenzwinkernd</td>
                                      <td align=center valign=middle><img src=smileys/wink.gif onClick=insert(';-)');></td>
                                      <td class=p4>;-)</td>
                                    </tr>
                                    <tr> 
                                      <td class=p4>laut lachend</td>
                                      <td align=center valign=middle><img src=smileys/laugh.gif onClick=insert(':lol:');></td>
                                      <td class=p4>:lol:</td>
                                    </tr>
                                    <tr> 
                                      <td class=p4>unsicher</td>
                                      <td align=center valign=middle><img src=smileys/unsure.gif onClick=insert(':unsure:');></td>
                                      <td class=p4>:unsure:</td>
                                    </tr>
                                    <tr> 
                                      <td class=p4>cool</td>
                                      <td align=center valign=middle><img src=smileys/cool.gif onClick=insert('8-)');></td>
                                      <td class=p4>8-)</td>
                                    </tr>
                                    <tr> 
                                      <td class=p4>&auml;ngstlich</td>
                                      <td align=center valign=middle><img src=smileys/huh.gif onClick=insert(':huh:');></td>
                                      <td class=p4>:huh:</td>
                                    </tr>
                                    <tr> 
                                      <td class=p4>w&uuml;tend</td>
                                      <td align=center valign=middle><img src=smileys/mad.gif onClick=insert(':angry:');></td>
                                      <td class=p4>:angry:</td>
                                    </tr>
                                    <tr> 
                                      <td class=p4>erstaunt</td>
                                      <td align=center valign=middle><img src=smileys/blink.gif onClick=insert(':blink:');></td>
                                      <td class=p4>:blink:</td>
                                    </tr>
                                    <tr> 
                                      <td class=p4>traurig</td>
                                      <td align=center valign=middle><img src=smileys/sad.gif onClick=insert(':-(');></td>
                                      <td class=p4>:-(</td>
                                    </tr>
                                    <tr> 
                                      <td class=p4>breit grinsend</td>
                                      <td align=center valign=middle><img src=smileys/biggrin.gif onClick=insert(':-))');></td>
                                      <td class=p4>:-))</td>
                                    </tr>
                                    <tr> 
                                      <td class=p4>erschrocken</td>
                                      <td align=center valign=middle><img src=smileys/surprised.gif onClick=insert(':-O');></td>
                                      <td class=p4>:-0</td>
                                    </tr>
                                    <tr> 
                                      <td class=p4>augenrollen</td>
                                      <td align=center valign=middle><img src=smileys/rolleyes.gif onClick=insert(':rolleyes:');></td>
                                      <td class=p4>:rolleyes:</td>
                                    </tr>
                                  </table></td>
          <tr><td class=p1  align=right  width=12%> E-Mail:  </td><td><INPUT class=tr12  TYPE=text NAME=email VALUE='$email' style=width:95%;></td></tr><tr>
          <tr><td TD class=p1 align=right  width=12%> Homepage:  </td><td><INPUT class=tr12  TYPE=text NAME=url VALUE='$url' style=width:95%;></td></tr>
          <tr valign=top><td class=p1 align=right  width=10%><b> Kommentar:  </b></td><td><TEXTAREA class=tr13  NAME=comments VALUE='$comments' cols=21 rows=11  wrap=physical style=width:95%;></TEXT"."AREA></td></tr>
          <tr><td class=p1 align=right  width=12%><a href=# onClick=gb.submit();>Eintragen  </a></td></tr>
        </table>";
} 

// wenn ein eintrag geschrieben werden soll 
if($a == "send") { 
  // Formatierung des Textes aus dem Kommentarfeld 
 if($name!=""&&$comments!="")  //Abfangen der "leeren" Einträge
    {
    $mailkomm = stripslashes($comments);
    $comments  =  nl2br("$comments");
    $comments  =  addslashes("$comments"); //Abfangen von TAGS
    $comments = strip_tags( $comments );



//-------------------- konvertiere Smileys ---------------------------------

		$comments = eregi_replace(":-\)\)|:\)\)|:biggrin:",
		'<img src="smileys/biggrin.gif" border="0">',$comments);

		$comments = eregi_replace(":-\)|:\)|:smile:",
		'<img src="smileys/smile.gif" border="0">',$comments);

                $comments = eregi_replace(":-D|:-D|:lol:",
		'<img src="smileys/laugh.gif" border="0">',$comments);
                
                $comments = eregi_replace(":huh:",
		'<img src="smileys/huh.gif" border="0">',$comments);
                
                $comments = eregi_replace(":rolleyes:",
		'<img src="smileys/rolleyes.gif" border="0">',$comments);


		$comments = eregi_replace(":O\)|:o\)",
		'<img src="smileys/smile2.gif" border="0">',$comments);

		$comments = eregi_replace(";-\)|;\)|:wink:",
		'<img src="smileys/wink.gif" border="0">',$comments);

		$comments = eregi_replace(":-\(|:\(|:sad:",
		'<img src="smileys/sad.gif" border="0">',$comments);

		$comments = eregi_replace(":angry:",
		'<img src="smileys/mad.gif" border="0">',$comments);

		$comments = eregi_replace(":-D|:D|:happy:",
		'<img src="smileys/happy.gif" border="0">',$comments);

		$comments = eregi_replace(":heart:",
		'<img src="smileys/heart.gif" border="0">',$comments);

		$comments = eregi_replace(":-P|:P|:tongue:",
		'<img src="smileys/tongue.gif" border="0">',$comments);

		$comments = eregi_replace("8-\)|8\)|:cool:",
		'<img src="smileys/cool.gif" border="0">',$comments);

		$comments = eregi_replace(":-\(|:\(|:weep:",
		'<img src="smileys/weep.gif" border="0">',$comments);

		$comments = eregi_replace(":-o|:o|:astonished:",
		'<img src="smileys/surprised.gif" border="0">',$comments);

		$comments = eregi_replace(":blink:",
		'<img src="smileys/blink.gif" border="0">',$comments);

		$comments = eregi_replace(":wub:",
		'<img src="smileys/wub.gif" border="0">',$comments);

		$comments = eregi_replace(":unsure:",
		'<img src="smileys/unsure.gif" border="0">',$comments);

// ---------Abschnitt nach n Zeichen-------------------------------------

for ($i=CMS_VALUE[7]; $i < CMS_VALUE[7]+20; $i++)
{
$comments1 = substr($comments , 0, $i);

$cut = substr($comments, $i);
if ((ord ($cut) == 32)||(ord ($cut) == 44)||(ord ($cut) == 45)) {

$comments= substr($comments , 0, $i);
$comments .= ' .....';
       }
    }

// -------------- IP /Host speichern ----------------------------------
$ip = getenv('REMOTE_ADDR');
$host = gethostbyaddr($ip);
// -------------- Cookie Setzen ---------------------------------------
  setcookie("AJUS-Forumeintrag","ja",time()+CMS_VALUE[8]*24*3600);
if($HTTP_COOKIE_VARS["AJUS-Forumeintrag"]=="ja" && $sperre ==1){
echo"<br><p><font class=textbold><b>Sie haben sich bereits eingetragen !<br>";
if (CMS_VALUE[8] == 1){
echo"Sie können sich Morgen erneut eintragen.";
}
else{
echo"Sie können sich in CMS_VALUE[8] Tagen erneut eintragen.</b></p>";
}
}
else{
    $url =  Str_replace("http://","",$url); 
    $sql = "INSERT into ".$cfg["Tab"]["guestbook"]." (name, email, location, url, date, comments, active, client)     VALUES ('$name', '$email', '$ip/$host', '$url', NOW(), '$comments', '$activ', $client)";
    $db->query($sql);

if("CMS_VALUE[3]" == 1 && "CMS_VALUE[4]" != "") {
    $mailbody = "Von: $name ( $email )\nHomepage: $url\n\nKommentar:\n$mailkomm\n\n http://".getenv("HTTP_HOST")."$meineseite";
    mail("CMS_VALUE[4]", "neuer Gaestebuch-Eintrag", $mailbody, "From: Gaestebuch<CMS_VALUE[4]>\nX-Mailer: PHP/" . phpversion(). "\n");
  };
  
echo "<p class=textbold>   Danke! Ihr Beitrag wurde eingetragen</p>"; 
 }
}
  else
    {


echo "<br><p><font class=textbold><b>Bitte überprüfen Sie ihre Eingaben!</b></p>"; 
echo"   <form action='$link' method='post'>
   <input type=hidden name=name value=$name>
   <input type=hidden name=email value=$email>   
   <input type=hidden name=url value=$url>
   <input type=hidden name=comments value=$comments>
   <input class=\"tr12\" type='submit' value='&laquo;&nbsp;zur&uuml;ck'>
  </form>    ";

  
  }
}
?>
Die Smiley-Bilder liegen bei mir im Root Verzeichnis im Ordner SMILEYS
Die Bilder für E-mail und URL müssen im Ordner upload liegen und sind dann über das Template
wählbar.
Im Backend kann man dann die Einträge aktivieren oder deaktivieren, Ich habe dafür
ein rotes Kreutz und einen grünen Haken verwendet, so wie sie im Backend überall zu finden
sind.

Bitte auf der Seite vom Ajus klauen. Und wenn ihr schon mal dort seid, Einträge im
Gästebuch sind erwünscht.

Und Hier die Links:
Gästebuch Ausgabe:
http://www.ajus-hamburg.de/cms/front_co ... dcatart=28

Gästebuch Ausgabe:
http://www.ajus-hamburg.de/cms/front_co ... dcatart=29

Gruß aus Hamburg,
euer Snoopy :wink:

Verfasst: Sa 21. Feb 2004, 13:00
von koffer
Ich hab das Gästebuch eingebaut, läuft sofort perfekt!
Vielen Dank!

Verfasst: Sa 21. Feb 2004, 13:03
von Snoopy
Wo kann ich das mal Sehen

Verfasst: Sa 21. Feb 2004, 13:20
von koffer
Ist zwar noch nicht fertig abere egal:

http://www.vsv-wenden.de/cms/front_content.php?idcat=58


ich hab gerade im errorlog diese meldung gefunden, nachdem ich einen eintrag gemacht habe:

[21-Feb-2004 13:17:58] PHP Warning: Cannot modify header information - headers already sent by (output started at /usr/local/httpd/htdocs/kunden/web25/html/cms/front_content.php(558) : eval()'d code:38) in /usr/local/httpd/htdocs/kunden/web25/html/cms/front_content.php(558) : eval()'d code on line 769

Verfasst: So 22. Feb 2004, 18:14
von maTTos
Hi Snoopy,

vielen Dank für das tolle Modul. Hier kommt Feedback/Verbesserungsvorschläge, etc.:

1. Durch die großen Smileys sind die Zeilenabstände sehr unterschiedlich. Ich habe diese gegen ein paar Kleinere aus diesem Forum ausgetauscht.

2. Die großen Smileys sind auf die Hintergrundfarbe weiß angepaßt, auch deswegen eignen sich die kleinen Smileys besser.

3. Gibt jemand eine Zeichenfolge ohne Leerzeichen ein, kann das Layout gesprengt werden.

4. Wir dem Feld "Cookie Lifetime (1 = 1 Tag etc.) : " kein Wert zugewiesen, so bleibt die Ausgabeseite weiß. Egal ob Cookies aktiviert sind oder nicht.

5. Toll wäre eine Löschfunktion im Backend. Bislang habe ich leider vergebens probiert einen Eintrag zu löschen. Wie könnte ich das denn per Hand realisieren?

Mein Gästebuch gibts hier zu sehen: http://www.betaweb.de/fdb/cms/start.htm

Gruß maTTos

PS: Schöne Seite

Verfasst: Mo 23. Feb 2004, 00:53
von PickPay
@http://www.betaweb.de/fdb/cms/start.htm

Sehr schöne Seite, muss ich sagen! Der Black&White-Style sieht sehr gut aus ! :D :D

bei mir funtz es nicht :(

Verfasst: Mo 23. Feb 2004, 09:07
von neu@cidnet.de
die datenbank bleibt leer. kann mir jemand helfen ?

Verfasst: Mo 23. Feb 2004, 14:58
von maTTos
@ cidnet:
  • - Ist der Eintrag in der Datenbank richtig erstellt worden, anstatt des Smileys eine ( 8 )
    - Hast Du eventuell einen anderen Prefix. Dies muss sowohl in der DB als auch in der cfg_sql.inc.php berücksichtigt werden.
    - Was steht im Error-Log?
@ PickPay: Vielen Dank für die Blumen :D

daanke

Verfasst: Mo 23. Feb 2004, 15:41
von neu@cidnet.de
achso, der smilie ist ne 8.
und auf einmal funtz es :)
danke

Re: daanke

Verfasst: Mo 23. Feb 2004, 17:01
von Snoopy
Tja die Zeichenkombination des SQL -DUMP hätte ich auch in ein Code Fenster packen sollen.
@Matthos
Du kannst doch im Backend die Einträge deaktivieren ?!?! oder.
Du musst in den Editiermodus gehen.

Löchen kannst Du sie dann ja irgenwann mit PHPMyAdmin
Übrigens Design ist sehr gut gelungen !!!

Gruß Snoopy :wink:

prob

Verfasst: Mo 23. Feb 2004, 22:33
von neu@cidnet.de
also ich hab im contenido eingestellt, das der mit cookie arbeiten soll, und das der eintrag von mir freigeschaltet werden muss.
jetzt wird bei jedem eintrag in der errorr log gelistet

Code: Alles auswählen

[23-Feb-2004 22:30:32] PHP Warning:  Cannot modify header information - headers already sent by (output started at /.2/www/dewio/kirchekelzenberg/kirchekelzenberg.de/con_kike/cms/front_content.php(546) : eval()'d code:11) in /.2/www/dewio/kirchekelzenberg/kirchekelzenberg.de/con_kike/cms/front_content.php(546) : eval()'d code on line 652
[23-Feb-2004 22:31:15] Invalid SQL: UPDATE con_guestbook SET active= WHERE id='' LIMIT 1<br><br>
was ist da noch falsch ?
das kann ja nicht sein, das der mir sowas voren kopf wirft, aber das gb lüppt im frontend ohne probs :)

:D
neu :)

Verfasst: Mi 25. Feb 2004, 07:58
von Snoopy
@maTTos

3. Gibt jemand eine Zeichenfolge ohne Leerzeichen ein, kann das Layout gesprengt werden.
in Gästebuch Ausgabe im MODUL OUTPUT folgende Änderung:

Code: Alles auswählen

-------- alter Code -------------
echo "</tr>";
    echo "<tr><td class=text ID=fontCMS_VALUE[3] colspan=3 valign=top><p>".stripslashes($db->f("comments"))."</p></td></tr>"; 

    //Eintrag aktivieren/deaktivieren
-------- alter Code Ende --------

-------- neuer Code -------------
echo "</tr>";
$laenge = strlen (stripslashes($db->f("comments")));
$leer = substr_count ((stripslashes($db->f("comments")))," ");
if (( $laenge > 80)&&($leer < 1)){
$ausgabe = wordwrap( (stripslashes($db->f("comments"))), 50, "<br>", 1);

if (( $laenge > 100)&&($leer < 1)){
$ausgabe = "Netter Versuch !!";
}
}
else {
$ausgabe = wordwrap( (stripslashes($db->f("comments"))), 80,  1);
}
echo "<tr><td class=text ID=fontCMS_VALUE[3] colspan=3 valign=top><p>$ausgabe\n</p></td></tr>"; 

    //Eintrag aktivieren/deaktivieren
-------- neuer Code Ende --------    


in Gästebuch Eingabe im MODUL OUTPUT folgende Änderung:

Code: Alles auswählen

	
-------- alter Code -------------
// wenn ein eintrag geschrieben werden soll 
if($a == "send") { 
  // Formatierung des Textes aus dem Kommentarfeld 
if($name!=""&&$comments!="")  //Abfangen der "leeren" Einträge 
-------- alter Code Ende --------


-------- neuer Code -------------
// wenn ein eintrag geschrieben werden soll 
if($a == "send") { 
//abfangen von Zeichenfolgen ohne Leerzeichen   
$laenge = strlen ($comments);
$leer = substr_count ($comments," ");
if (( $laenge > 80)&&($leer < 1)){
unset ($comments);
}
// Formatierung des Textes aus dem Kommentarfeld 
 if($name!=""&&$comments!="")  //Abfangen der "leeren" Einträge
-------- neuer Code Ende -------- 
4. Wir dem Feld "Cookie Lifetime (1 = 1 Tag etc.) : " kein Wert zugewiesen, so bleibt die Ausgabeseite weiß. Egal ob Cookies aktiviert sind oder nicht.
keine Ahnung, wie man das abfängt, trifft aber auch auf jede menge Andere Module zu

@all
wenn ich scho das Gästebuch wirklich 1 zu 1 kopiert, dann fände ich es doch fair wenn Ihr meinen Namen mit email erwähnt, mache ich ja schliesslich auch. :!:

Verfasst: Mi 25. Feb 2004, 11:30
von koffer
Snoopy hat geschrieben:

@all
wenn ich scho das Gästebuch wirklich 1 zu 1 kopiert, dann fände ich es doch fair wenn Ihr meinen Namen mit email erwähnt, mache ich ja schliesslich auch. :!:
Hallo Snoopy,

hab deinen Namen drunter gesetzt. Sorry...
Ist denke ich jetzt ok so.

MfG,
koffer

Verfasst: Mi 25. Feb 2004, 17:09
von CyberDan
Hallo snoopy,

du hast da ein sehr schönes Modul geschrieben 8)
Nur sind noch ein paar Bugs drin:

1. Ab und zu wird statt eines Leerzeichen eine 1 dargestellt (siehe letzter Erintag in deinem Gästebuch)

2. Es sind keine breaks beim eintrag möglich, d.h. alles wird in fortlaufend in eine Zeile geschrieben.

Ansonsten nicht schlecht. Ich werde es mir "ausleihen" und nätürlich mit deinem Namen und Link versehen :wink:

Verfasst: Do 26. Feb 2004, 11:36
von Snoopy
zu Punkt 1: folgender Fehler hat sich beim abfangen der obigen Fehler eingeschlichen.

Code: Alles auswählen

$ausgabe = wordwrap( (stripslashes($db->f("comments"))), 80,  1);
ändern in:
$ausgabe = wordwrap( (stripslashes($db->f("comments"))), 80);
zu Punkt 2: ich habe Filter eingebaut, damit böse Leute keinen bösen Code eingeben können, siehe Thread con Darth Vader.
Ich persönlich brauche das Break nicht, man kann es aber reaktivieren.

Habe allerdings im Moment nicht die Zeit, da ich an meiner eigenen Site krampfhaft arbeite.
http://www.thilo-sommer.de
Habe gerade mal die Hilfsnavigation oben auf Grafiken umgebaut, die Hauptnav geht noch garnicht !!!!

Gruß aus Hamburg :wink: