tm Gästebuch - ein simples, frisches, sauberes Gästebuch-Script

Nachdem die guten alten "Gästebücher" bei der neuen, tollen Web 2.0 Welle etwas untergegangen sind, bekam ich vor einiger Zeit für ein neues Web-Projekt die Anforderung, dass ein Gästebuch enthalten sein soll.

Gesagt, getan, programmiert.
Und hier für die freie Verwendung zur Verfügung gestellt.

Hier eine schmal-gehaltene Übersicht:

tm Gästebuch

Features:

  • Potenzielle Einträge werden geprüft
  • Vor (automatischen) Spam-Einträgen wird geschützt
  • Der Admin kann Einträge bearbeiten / löschen / kommentieren
  • IP-Adresse des Nutzers wird gespeichert und kann bei bedarf auf der Hauptseite angezeigt werden
  • Mail-Funktion bei neuem Eintrag (optional)
  • CSS-basierend - kann somit ohne großen Aufwand für die eigene Homepage angepasst werden.

Installation:

  1. Kopiere die Dateien in einen Ordner deines Webservers
  2. Passe die "tmbg-config.php" entsprechend an (Verbindungseinstellungen + Optionen)
  3. Führe entweder die Datei "/tmgb-install/install.php" aus (Dabei wird eine Datenbank mit Tabelle erzeugt) oder importiere die "tm_guestbook.sql", mit Hilfe von PHPMyAdmin o.ä.
  4. Fertig. Ab sofort können Einträge erfolgen...

To Do:

  • Passwort-Schutz für den Admin-Bereich ;-)
  • ...? Was immer das Herz begehrt

Angefügte Dateien:

» tm_gaestebuch-0.9.zip «

weiterlesen

abgelegt in Projekte von admin am 2009-04-28

 

 

Open-Source Website-Suche mit integrierter Autovervollständigung

Dieses PHP- Open-Source "Search-Script" basiert auf dem "CJ Website Search".

Es wurde für ein Projekt ins Deutsche übersetzt und (meiner Meinung nach) noch ein bisschen optimiert.

Das Script ist leicht zu installieren und beinhaltet eine Administrationsoberfläche.

Das Suchfeld beinhaltet eine Autovervollständigung. Oft verwendete Suchbegriffe für die Autovervollständigung können in der searchform.js editiert werden. Searchform stammt von CSSGlobe.

Suchergebnisse werden manuell eingeben. So kann entschieden werden, welche Suchbegriffe gefunden werden sollen und auf welche Seite sie verlinken.
Dies bietet insbesondere Vorteile, wenn man eigene Templates benutzt und Design-Snippets "included".


Konfiguriert werden muss nur die config.php - hier muss lediglich der rootpfad zum Scriptordner angegeben werden.

Screenshots

tmSuche
tmSuche
 

Download

weiterlesen

abgelegt in Projekte von admin am 2008-01-25

 

 

PHP: Werbefreier Domaincheck für die eigene Homepage

Oft ist es erwünscht, auf der eigenen Homepage einen Domaincheck-Service anzubieten.
Gerade wenn man sich mit Webdesign und allgemein mit dem WWW beschäftigt, kann dies auf der eigenen Homepage von Vorteil sein.

Dr. Web veröffentliche mehrere PHP-Scripts, die nun nicht mehr nur den zahlenden Abonnenten zur Verfügung stehen, sondern kostenlos von jedermann gelesen und heruntergeladen werden können.

Sehr interessant ist hierbei das Script für den werbefreien Domaincheck auf der eigenen Seite:



<html>
<head>
<title>Domaincheck</title>
</head>
<body>

<form action="<? $_SERVER["PHP_SELF"] ?>" method="post">

<p>Pr&uuml;fen Sie, ob Ihre Wunschdomain noch frei ist!</p>

<?

$domain_name = $_POST["domain_name"];
$domain_endung = $_POST["domain_endung"];

$domain = $domain_name.$domain_endung;

if($domain_endung == ".de") $domain_endung_de = " selected=\"selected\"";
if($domain_endung == ".at") $domain_endung_at = " selected=\"selected\"";
if($domain_endung == ".ch") $domain_endung_ch = " selected=\"selected\"";
if($domain_endung == ".com") $domain_endung_com = " selected=\"selected\"";
if($domain_endung == ".net") $domain_endung_net = " selected=\"selected\"";
if($domain_endung == ".org") $domain_endung_org = " selected=\"selected\"";

?>

<p><input type="text" name="domain_name" value="<? echo $domain_name ?>" />
<select name="domain_endung">
    <option<? echo $domain_endung_de ?>>.de</option>
    <option<? echo $domain_endung_at ?>>.at</option>
    <option<? echo $domain_endung_ch ?>>.ch</option>
    <option<? echo $domain_endung_com ?>>.com</option>
    <option<? echo $domain_endung_net ?>>.net</option>
    <option<? echo $domain_endung_org ?>>.org</option>
</select></p>

<p><input type="submit" value="Domain pr&uuml;fen" />

</form>

<?

$ausgabe_unzulaessig = "Der von Ihnen gew&auml;hlte Domainname ist nicht zul&auml;ssig.";
$ausgabe_verbindung = "Es konnte keine Verbindung zum Whois-Server aufgenommen werden.";
$ausgabe_frei = "Der von Ihnen gew&auml;hlte Domainname <span style=\"font-weight:bold\">".$domain."</span> ist noch frei.";
$ausgabe_vergeben = "Der von Ihnen gew&auml;hlte Domainname <span style=\"font-weight:bold\">".$domain."</span> ist bereits vergeben.";

if($domain_name != "" && $domain_endung != "") {

    switch($domain_endung) {
        case ".de":
            $daten = array("whois.denic.de", "status: free", "status: invalid", "connection refused");
            break;
        case ".at":
            $daten = array("whois.nic.at", "nothing found");
            break;
        case ".ch":
            $daten = array("whois.nic.ch", "we do not have an entry");
            break;
        case ".com":
            $daten = array("whois.internic.net", "no match");
            break;
        case ".net":
            $daten = array("rs.internic.net", "no match");
            break;
        case ".org":
            $daten = array("whois.networksolutions.com", "no match");
            break;
        default:
            die("Diese Domainendung wird nicht unterst&uuml;tzt.");
            break;
    }

    $server = $daten[0];
    $meldung_frei = $daten[1];
    $meldung_unzulaessig = $daten[2];
    $meldung_verbindung = $daten[3];

    $check = fsockopen($server, 43);

    if($check) {
        fputs($check, $domain." \r\n");
        while(!feof($check)) $ergebnis = $ergebnis.fgets($check, 128);
        fclose($check);
    }

    $ergebnis = strtolower($ergebnis);
    while(substr_count($ergebnis, "  ") > 0) $ergebnis = str_replace("  ", " ", $ergebnis);

    if(ereg($meldung_frei, $ergebnis) && $ausgabe == "") {
        $ausgabe = $ausgabe_frei;
    } else if(ereg($meldung_unzulaessig, $ergebnis) && $ausgabe == "") {
        $ausgabe = $ausgabe_unzulaessig;
    } else if(ereg($meldung_verbindung, $ergebnis) && $ausgabe == "") {
        $ausgabe = $ausgabe_verbindung;
    } else if($domain != "" && $ausgabe == "") {
        $ausgabe = $ausgabe_vergeben;
    }

}

echo "<p>".$ausgabe."</p>\r\n";

?>

</body>
</html>

Abschließend sei noch jedem einen Besuch beim Dr. Web ans Herz gelegt.

weiterlesen

abgelegt in Codeschnipsel von admin am 2007-10-25

 

 

Vertikale (mittige) Ausrichtung in einem (X)HTML Element

Oft möchte man ein Zeichen oder Wort in einem (X)HTML-Element vertikal ausrichten (z.B. für ein Menü o.ä.).
Doch die vorhandene CSS-Eigenschaft “vertical-align” ist leider nicht immer zuverlässig.

Würde man zum Beispiel im Absatz mit fester Höhe eine Zeile oder ein einzelnes Wort ausgeben wollen, so positioniert sich die Zeichenfolge oben links.

Eine mögliche Lösung

Mit der CSS-Eigentschaft "height" wird dem Element eine feste Höhe und mit "color" (color zur Verdeutlichung) eine Hintergrundfarbe zugewiesen.

p { height: 50px; color:#abc7db; }

In der Ausgabe würde der Text oben Links stehen:


Mit dem CSS-Befehl "line-height" kann der Browser jedoch die Mitte der Zeile errechnen und dadurch den eigentlichen Inhalt vertikal zentrieren:

p { height: 50px; color:#abc7db; line-height: 50px; }


Aussehen würde es nun so:


Kleiner Nachteil

Da die Default-Höhe der Zeile geändert wird, ist diese Lösung für Texte, die über mehrere Zeilen verteilt sind, nicht zu empfehlen.

weiterlesen

abgelegt in Codeschnipsel von admin am 2007-10-08

 

 

PHP HTML-Tags aus Datenbankabfrage (MySQL) entfernen/ ausblenden mittels strip_tags

Wenn man beispielsweise einen Text aus einer MySQL-Datenbank auslesen möchte, hier aber auf die HTML-Tags verzichten will geht dieses sehr bequem über den Befehl strip_tags.

Bespiel:

$text = "<b>Hallo</b>. Wie siehts <i>aus</i>?";
echo strip_tags($text);

Würde normal folgende Ausgabe ergeben: Hallo. Wie siehts aus?
Mit dem gestrippten Tags, aber so: Hallo. Wie siehts aus?

Ausnahmen können auch definiert werden:

echo strip_tags($text, '<b><i>');

 Würde die Attribute <b> und <i> erlauben.

weiterlesen

abgelegt in Codeschnipsel von admin am 2007-10-07

 

 

Seite 3 von 6.  <  1 2 3 4 5 6   >