Gästebuch mit SMS Funktion
Verfasst: Sa 27. Jan 2007, 19:41
Hallo,
Ich mal in das folgene Gästebuch die SMS Funktion von SMSKaufeneingebaut.
So bekommt man bei jedem Eintrag ins Gästebuch eine SMS an sein Handy geschickt.
Hier der Input für die Gästebuch Eingabe:
und der Output:
Zum Anmelden bei SMS Kaufen könnt ihr hier..
hf
Ich mal in das folgene Gästebuch die SMS Funktion von SMSKaufeneingebaut.
So bekommt man bei jedem Eintrag ins Gästebuch eine SMS an sein Handy geschickt.
Code: Alles auswählen
/***********************************************
* CONTENIDO MODUL - INPUT
*
* Modulname : Guestbook Eingabe v1.1
* Copyright : P.beauvain
* Created : 14-02-2004
* Modified : Feb. 29th 2004 by Lars D. Forseth <lars@forseth.de>
************************************************/
Hier der Input für die Gästebuch Eingabe:
Code: Alles auswählen
/***********************************************
* CONTENIDO MODUL - INPUT
*
* Modulname : Guestbook Eingabe v1.1
* Copyright : P.beauvain
* Created : 14-02-2004
* Modified : Feb. 29th 2004 by Lars D. Forseth <lars@forseth.de>
************************************************/
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>";
echo "<br />";
echo "<table align=\"center\" width=\"400\" border=\"0\" cellpsacing=\"0\" cellpadding=\"0\"
style=\"font-size: 10pt; border: 1px;border-color: #000000;
border-style: solid; background-color: #EFEFEF;\">
<tr><td><b>Daten für den SMS Versand</b></td></tr>
<tr><td>Benutzername: </td><td><input type=\"\" name=\"CMS_VAR[10]\" value=\"CMS_VALUE[10]\" size=\"60\"></td></tr>
<tr><td>Passwort: </td><td><input type=\"\" name=\"CMS_VAR[11]\" value=\"CMS_VALUE[11]\" size=\"60\"></td></tr>
<tr><td>Absendename: </td><td><input type=\"\" name=\"CMS_VAR[12]\" value=\"CMS_VALUE[12]\" size=\"60\"></td></tr>
<tr><td>Handy Nummer: </td><td><input type=\"\" name=\"CMS_VAR[13]\" value=\"CMS_VALUE[13]\" size=\"60\"></td></tr>
</table>";
Code: Alles auswählen
<?php
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname : Guestbook Eingabe v1.1
* Copyright : P.beauvain
* Created : 14-02-2004
* Modified : Mar. 1st 2004 by Lars D. Forseth <lars@forseth.de>
************************************************/
//SMS Schnittstellen Daten
$username = "CMS_VALUE[10]";
$passwort = "CMS_VALUE[11]";
$absender = "CMS_VALUE[12]";
$to = "CMS_VALUE[13]";
//SMS End
$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"; }
/* in diesem Ordner liegen meine smileys für das Gästebuch
(sollte nicht mit "/" beginnen, MUSS aber mit "/" enden!)
*/
$dir = "templates/smileys/";
/* end definition v. "$dir" */
echo "
<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<br> den Code eingeben, der erste Smiley wäre dann z.B.: :-)</div></p>
";
if ($a == "add") {
echo "
<br>";
echo "
<form name='gb' id='gb' action=".$link." method='post'>";
echo "
<input type=\"hidden\" name=\"a\" value=\"send\">";
echo "
<table border=0 cellpadding=2 cellspacing=0>
<tr class=text>
<td align=right class=feldbeschriftung><B> Name: </b></td>
<td><input type=text name=name value='$name' class=textfeld></td>
<td rowspan=8 valign=top>
<table border=0 align=right cellspacing=0 cellpadding=0>
<tr class=text>
<td class=text><strong>Bedeutung</strong></td>
<td class=text><div align=center><strong>Icon </strong></div></td>
<td class=text><strong> Code</strong></td>
</tr>
<tr class=text>
<td>lacht</td>
<td align=center valign=middle><img src=".$dir."smile.gif onClick=insert(':-)');></td>
<td>:-)</td>
</tr>
<tr class=text>
<td>Zunge streckend</td>
<td align=center valign=middle><img src=".$dir."tongue.gif onClick=insert(':-P');></td>
<td>:-P</td>
</tr>
<tr class=text>
<td>zuzwinkernd</td>
<td align=center valign=middle><img src=".$dir."wink.gif onClick=insert(';-)');></td>
<td>;-)</td>
</tr>
<tr class=text>
<td>laut lachend</td>
<td align=center valign=middle><img src=".$dir."laugh.gif onClick=insert(':lol:');></td>
<td>:lol:</td>
</tr>
<tr class=text>
<td>unsicher</td>
<td align=center valign=middle><img src=".$dir."unsure.gif onClick=insert(':unsure:');></td>
<td>:unsure:</td>
</tr>
<tr class=text>
<td>cool</td>
<td align=center valign=middle><img src=".$dir."cool.gif onClick=insert('8-)');></td>
<td>8-)</td>
</tr>
<tr class=text>
<td>nicht versteht</td>
<td align=center valign=middle><img src=".$dir."huh.gif onClick=insert(':huh:');></td>
<td>:huh:</td>
</tr>
<tr class=text>
<td>wütend</td>
<td align=center valign=middle><img src=".$dir."mad.gif onClick=insert(':angry:');></td>
<td>:angry:</td>
</tr>
<tr class=text>
<td>erstaunt</td>
<td align=center valign=middle><img src=".$dir."blink.gif onClick=insert(':blink:');></td>
<td>:blink:</td>
</tr>
<tr class=text>
<td>traurig</td>
<td align=center valign=middle><img src=".$dir."sad.gif onClick=insert(':-(');></td>
<td>:-(</td>
</tr>
<tr class=text>
<td>breit grinsend</td>
<td align=center valign=middle><img src=".$dir."biggrin.gif onClick=insert(':-))');></td>
<td>:-))</td>
</tr>
<tr class=text>
<td>erschrocken</td>
<td align=center valign=middle><img src=".$dir."surprised.gif onClick=insert(':-O');></td>
<td>:-0</td>
</tr>
<tr class=text>
<td>augenrollen</td>
<td align=center valign=middle><img src=".$dir."rolleyes.gif onClick=insert(':rolleyes:');></td>
<td>:rolleyes:</td>
</tr>
</table>
</td>
</tr>
<tr class=text>
<td align=right width=12% class=feldbeschriftung> E-Mail: </td>
<td><input type=text name=email value='$email' class=textfeld></td>
</tr>
<tr class=text>
<td align=right width=12% class=feldbeschriftung> Homepage: </td>
<td><input type=\"text\" name=\"url\" value=\"$url\" class=\"textfeld\"></td>
</tr>
<tr valign=top class=text>
<td align=right width=10% class=feldbeschriftung><b> Kommentar: </b></td>
<td>
<textarea name=\"comments\" cols=21 rows=11 wrap=physical class=textfeld style=\"width:170px; height:130px\">
$comments
</text"."area>
</td>
</tr>
<tr class=text>
<td align=right>
<!-- <a href=$link onClick=gb.submit();>Eintragen</a> -->
<input type=\"submit\" value=\"Eintragen\" class=\"button\"></td>
</tr>
</table>
</form>
";
} // end "if($a == "add")"
// wenn ein eintrag geschrieben werden soll
if($a == "send") {
// Formatierung des Textes aus dem Kommentarfeld
if($name!="" && $comments!="") { //Abfangen der "leeren" Einträge
/* filter given data */
$error = "no";
$mailkomm = stripslashes($comments);
$comments = trim($comments);
$comments = nl2br($comments);
$comments = str_replace("'","",$comments);
$comments = str_replace(";","",$comments);
$comments = str_replace("--","",$comments);
$comments = htmlentities($comments);
$comments = str_replace("<br />","",$comments);
$comments = str_replace("<br/>","",$comments);
$comments = str_replace("<br>","",$comments);
$comments = str_replace("\n","<br>",$comments);
// filter email
if ($error == "no") {
if ($email) {
if (strlen($email) > 50) {$error = "Emailadresse ist zu lang! (max. 50 Zeichen erlaubt)";}
else {
$valid = (eregi ("^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]+$",$email));
if (!$valid == 1) {$error = "Emailadresse ist ungültig, bitte überprüfen!";}
else {
$parts = explode("@",$email);
$lasts = explode(".",$parts[1]);
$domain = $lasts[(count($lasts)-2)].".".$lasts[(count($lasts)-1)];
$valid = (int) (checkdnsrr($domain,ANY));
if ($valid == 0) {$error = "Emailadresse ist ungültig, bitte überprüfen!";}
} // end else
} // end else
} // end if email
} // end if no error
// filter name
if ($error == "no") {
if (strlen($name) > 30) {$error = "Name ist zu lang! (max. 30 Zeichen erlaubt)";}
else {
$name = nl2br($name);
$name = str_replace("'","",$name);
$name = str_replace(";","",$name);
$name = str_replace("--","",$name);
$name = htmlentities($name);
}
} // end if
// filter url
if ($error == "no") {
if ($url) {
if (strlen($url) > 100) {$error = "URL ist zu lang! (max. 100 Zeichen erlaubt)";}
else {
$url = str_replace("\n","",$url);
$url = str_replace("'","",$url);
$url = str_replace(";","",$url);
$url = str_replace("--","",$url);
$url = str_replace("\"","",$url);
$url = str_replace("'","",$url);
$url = str_replace("\'","",$url);
$url = str_replace(" ","",$url);
$url = strtolower($url);
$sheme_given = (eregi("^([a-z]+://)",$url));
if ($sheme_given == 0) {$url = "http://".$url;}
$url1 = (parse_url($url));
$host = $url1["host"];
$valid = (eregi("([a-z0-9_\\-\\.])+(\\.)+([a-z]{2,4})",$host));
if (!$valid == 1) {$error = "Homepage ist ungültig, bitte überprüfen!";}
else {
$valid = (int) (checkdnsrr($host,ANY));
if ($valid == 0) {$error = "Homepage ist ungültig, bitte überprüfen!";}
} // end else
} // end else
} // end if url
} // end if
if ($error == "no") {
if (strlen($comments) > 3000) {$error = "Kommentar ist zu lang! (max. 3000 Zeichen erlaubt)";}
else { // no errors in given data yet...
//-------------------- konvertiere Smileys ---------------------------------
$comments = eregi_replace(":-\)\)|:\)\)|:biggrin:",
"<img src=\'".$dir."biggrin.gif\' border=\'0\'>",$comments);
$comments = eregi_replace(":-\)|:\)|:smile:",
"<img src=\'".$dir."smile.gif\' border=\'0\'>",$comments);
$comments = eregi_replace(":-D|:-D|:lol:",
"<img src=\'".$dir."laugh.gif\' border=\'0\'>",$comments);
$comments = eregi_replace(":huh:",
"<img src=\'".$dir."huh.gif\' border=\'0\'>",$comments);
$comments = eregi_replace(":rolleyes:",
"<img src=\'".$dir."rolleyes.gif\' border=\'0\'>",$comments);
$comments = eregi_replace(":O\)|:o\)",
"<img src=\'".$dir."smile2.gif\' border=\'0\'>",$comments);
$comments = eregi_replace(";-\)|;\)|:wink:",
"<img src=\'".$dir."wink.gif\' border=\'0\'>",$comments);
$comments = eregi_replace(":-\(|:\(|:sad:",
"<img src=\'".$dir."sad.gif\' border=\'0\'>",$comments);
$comments = eregi_replace(":angry:",
"<img src=\'".$dir."mad.gif\' border=\'0\'>",$comments);
$comments = eregi_replace(":-D|:D|:happy:",
"<img src=\'".$dir."happy.gif\' border=\'0\'>",$comments);
$comments = eregi_replace(":heart:",
"<img src=\'".$dir."heart.gif\' border=\'0\'>",$comments);
$comments = eregi_replace(":-P|:P|:tongue:",
"<img src=\'".$dir."tongue.gif\' border=\'0\'>",$comments);
$comments = eregi_replace("8-\)|8\)|:cool:",
"<img src=\'".$dir."cool.gif\' border=\'0\'>",$comments);
$comments = eregi_replace(":-\(|:\(|:weep:",
"<img src=\'".$dir."weep.gif\' border=\'0\'>",$comments);
$comments = eregi_replace(":-o|:o|:astonished:",
"<img src=\'".$dir."surprised.gif\' border=\'0\'>",$comments);
$comments = eregi_replace(":blink:",
"<img src=\'".$dir."blink.gif\' border=\'0\'>",$comments);
$comments = eregi_replace(":wub:",
"<img src=\'".$dir."wub.gif\' border=\'0\'>",$comments);
$comments = eregi_replace(":unsure:",
"<img src=\'".$dir."unsure.gif\' border=\'0\'>",$comments);
// see if there are more smileys than allowed:
$imgs = explode("<img src=",$comments);
$imgs = count($imgs);
if ($imgs > 10) {
$error = "Zu viele Smileys! (max. 10 Stück pro Eintrag)";
$comments = "";
} // end if($imgs > 10)
} // end else no errors
} // end else ("no errors in given data yet")
/* end "filter given data" */
/* if no error was found while filtering */
if ($error == "no") {
/* search for words longer than 50 chars and shorten them + <br> */
$c = 0;
for ($i=0; $i < strlen($comments); $i++) {
$c++;
if (($comments[$i] == " ") or ($comments[$i] == "\n") or
($comments[$i] == "\r")) {$c = 0;}
if ($c > 48) {
$comments = substr_replace($comments, "-<br>", $i, 0);
$i = $i+4;
$c = 0;
} // end if
} // end for
// ---------Abschnitt nach n Zeichen -------------------------------------
//$z = (int) ("CMS_VALUE[7]");
//for ($i=$z; $i < $z+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 .= ' .....';
// } // end if
//} // end for
// -------------- IP /Host speichern ----------------------------------
$ip = getenv('REMOTE_ADDR');
$host = gethostbyaddr($ip);
// -------------- Cookie Setzen ---------------------------------------
/* if no cookie lifetime given */
$lifetime = (int) ("CMS_VALUE[8]");
if($lifetime!="0" && $lifetime!=""){setcookie("Eintrag","ja",time()+ ($lifetime*24*3600));}
/* end if no cookie-lifetime given */
if($HTTP_COOKIE_VARS["Eintrag"]=="ja" && $sperre ==1){
echo "<br><p><font class=text><b>Sie haben sich bereits eingetragen !<br>";
if ($lifetime == 1){echo "Sie können sich Morgen erneut eintragen.";}
else {echo "Sie können sich in CMS_VALUE[8] Tagen erneut eintragen.</b></p>";}
} // end if
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");
// SMS
if (isset($_POST['email']) || ($_POST['gb']))
{
// Text-Sezierung
// $comments = nl2br($comments);
$name = html_entity_decode($name);
$textkurz = substr($mailkomm, 0, 120);
$textkurz = trim($textkurz);
$textkurz = str_replace("<br>", " ", $textkurz);
$textkurz = str_replace("\n", " ", $textkurz);
$anhang = "...";
$von = "Gästebucheintrag von: ";
$trenn = "! ";
$sms = urlencode($von) . urlencode($name) . urlencode($trenn) . urlencode($textkurz) . urlencode($anhang);
$url = "http://gateway.smskaufen.de/" . "?id=" . $username . "&pw=" . $passwort . "&absender=" . $absender . "&empfaenger=" . $to . "&text=" . $sms . "&type=2";
$fp = fopen($url, 80, "r");
$reply = fgets($fp, 1024);
fclose($fp);
} // Ende SMS
}; // End if
echo "<br><p class=text><b>Danke, Ihr Beitrag wurde eingetragen.</b></p><br>";
} // end else
} // end "if no error was found while filtering"
/* errors were found in given data */
else {
$comments = str_replace("<br>","\n",$comments);
echo "
<br><br><br><font color=\"red\"><b><u>Fehler</u><br>".$error."</b></font><br><br>
<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 type=\"submit\" value=\"« zurück\" class=\"button\">
</form>
<br><br><br>";}
// end "errors were found in given data"
} // end "Abfangen von leeren Einträgen
else {
$comments = str_replace("<br>","\n",$comments);
echo "
<br><p><font class=\"text\"><b>Bitte überprüfen Sie ihre Eingaben!</b></p><br><br>
";
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 type=\"submit\" value=\"« zurück\" class=\"button\">
</form>
";
} // end else
} // end if($a == "send")
?>
hf