Zudila AG

Webseiten-Erstellung
Webseiten-Programmierung
Webseiten-Wartung
8057 Zürich
Tel: +41 44 310 14 25
Fax: +41 44 310 14 26
Mob: +41 79 691 87 58
vCard, Skype: juergzuerich Skype: juergzuerich

Funktion mit PHP: Gästebuch 1.4 ohne Zeilennummern anzeigen

PHP: Gästebuch v1.4

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html>
  4. <head>
  5. <script src="/script/formpruef-de.js" type="text/javascript"></script>
  6. </head>
  7.  
  8. <body onload="startnname()">
  9.  
  10. <?php
  11. include_once('../script/inc.php');
  12. include_once('../script/funktionen.php');
  13.  
  14. // Variablen auf 0 setzen
  15. $nname = ''; $vname =''; $ort = ''; $email = ''; $beitrag = '';
  16. $t_nname = ''; $t_ort = ''; $t_email = ''; $t_beitrag = '';
  17.  
  18. // code erstellen, um zu verhindern, dass Spam erfolgt
  19. $code = date('m') * 3 + date('Y') * 7 + 59 + date('d') * 23 + 47;
  20.  
  21. if (isset($_POST['submit'])) {
  22.    
  23.   // richtige Form prüfen -> die
  24.   if (strlen($_POST['nname'])  > 50 ) die ('Manipulation') ;
  25.   if (strlen($_POST['vname'])  > 50 ) die ('Manipulation') ;
  26.   if (strlen($_POST['ort'])    > 50 ) die ('Manipulation') ;
  27.   if (strlen($_POST['email'])  > 50 ) die ('Manipulation') ;
  28.  
  29.   if (!isset($_POST['code']) || $_POST['code'] != $code) die('Mailcode fehlt!');
  30.    
  31.   // Tags entfernen
  32.   $nname   = strtr(trim(strip_tags($_POST['nname'])),'@\/','   ');
  33.   $vname   = strtr(trim(strip_tags($_POST['vname'])),'@\/','   ');
  34.   $ort     = strtr(trim(strip_tags($_POST['ort'])),'@\ ','   ');
  35.   $email   = trim(strip_tags($_POST['email']));    
  36.   $beitrag = strtr(trim(strip_tags($_POST['beitrag'])),'@\/','   ');
  37.    
  38.   // Lange Wörter (>50) zwangstrennen, um richtige Darstellung zu erhalten.
  39.   $beitrag = wordwrap($beitrag, 50, ' ', 1);
  40.   // doppelte Leerstellen entfernen
  41.   $beitrag = str_replace('  ', ' ', $beitrag);
  42.      
  43.   // pruefen ob alle Variablen richtig
  44.   if ( $nname == "" )     { $t_nname = "Bitte Nachname angeben!" ; }
  45.   if ( $nname == $vname ) { $t_nname = "Das kann nicht sein, Vor- und Nachname!" ; }
  46.   if ( $ort == "" )       { $t_ort   = "Bitte Ort angeben!" ; }
  47.   if ( $email == "" )     { $t_email = "" ; }
  48.   else {
  49.     if(check_email($email)) { $t_email = "" ; }
  50.     else { $temail = "E-Mail nicht richtig!" ; }
  51.   }
  52.   if ( $beitrag == "" ) { $t_beitrag = "Bitte Beitrag schreiben!" ; }
  53.  
  54.   // wenn i.O., Mails senden und eintragen in DB
  55.   if ( $t_nname == "" && $t_ort == "" && $t_beitrag == "" && $t_email == "" ) {
  56.  
  57.     $headers  = "MIME-Version: 1.0\n";
  58.     $headers .= "Content-Type: text/plain; charset=iso-8859-1\n";
  59.     $headers .= "From:xy <info@xy.xy>\n";
  60.     $headers .= "Reply-To: info@xy.xy\n";
  61.     $headers .= "X-Sender-IP:".$REMOTE_ADDR."\n";
  62.     $headers .= "X-Mailer:PHP/".phpversion();
  63.  
  64.     $webmaster = "xy@xy.xy";
  65.     $betreff = "Gästebuch";
  66.     $kopf1 = "Folgender Eintrag erfolgte:\n\n";
  67.     $eintrag = "Nachname: ".$nname."\nVorname: ".$vname."\nOrt: ".$ort."\nEMail: ".$email."\n\n".$beitrag."\n";
  68.     $loeschlink = "\n\nLöschen: http://www.xy.xy/scripte/gaestebuch_loe.php\n\n";
  69.     $text1 = $kopf1.$eintrag.$loeschlink;
  70.  
  71.     @mail($webmaster,$betreff,$text1,$headers);
  72.  
  73.     if ($email !=""){
  74.       $kopf2 = "Sie haben in unser Gästebuch folgenden Eintrag vorgenommen:\n\n";
  75.       $fuss2 = "\n\nVielen Dank für Ihren Eintrag\nXY\nwww.xy.xy";
  76.       $text2 = $kopf2.$eintrag.$fuss2;
  77.       @mail($email,$betreff,$text2,$headers);
  78.     }
  79.  
  80.     // Eintraege an DB gaestebuch senden
  81.     $query = "INSERT into gaestebuch (vname,nname,ort,email,beitrag)
  82.    VALUES('$vname','$nname','$ort','$email','$beitrag')";
  83.     $result = mysql_query($query, $conn) or mysql_die();
  84.  
  85.     // gegebenenfalls Scriptteil Newsletter
  86.  
  87.         echo '
  88.         <p class="center"><strong>Erfolgreich eingef&#252;gt!</strong></p>
  89.         ';
  90.  
  91.     // Felder leeren
  92.     $nname = "" ; $vname = "" ; $ort = "" ; $email = "" ; $beitrag = "" ;
  93.   }
  94. }
  95. // submit abgeschlossen, es folgt die eigentliche Seite ---------------
  96.  
  97. echo '
  98. <form method="post" action="'.htmlspecialchars($_SERVER['PHP_SELF']).'" name="meldung">
  99. <table width="100%" summary="Eingabeformular">
  100.     <colgroup>
  101.         <col width="150" />
  102.         <col />
  103.     </colgroup>
  104.     <tr>
  105.         <td>Nachname</td>
  106.         <td>
  107.             <input type="text" name="nname" size="40" maxlength="50" tabindex="1" value="'.$nname.'" />
  108.             <span class="rot"><strong>'.$t_nname.'&#160;</strong></span>
  109.         </td>
  110.     </tr>
  111.     <tr>
  112.         <td>Vorname</td>
  113.         <td><input type="text" name="vname" size="40" maxlength="50" tabindex="2" value="'.$vname.'" /></td>
  114.     </tr>
  115.     <tr>
  116.         <td>Ort</td>
  117.         <td>
  118.             <input type="text" name="ort" size="40" maxlength="50" tabindex="3" value="'.$ort.'" />
  119.             <span class="rot"><strong>'.$t_ort.'&#160;</strong></span>
  120.         </td>
  121.     </tr>
  122.     <tr>
  123.         <td>E-Mail</td>
  124.         <td>
  125.             <input type="text" name="email" size="40" maxlength="50" tabindex="4" value="'.$email.'" />
  126.             <span class="rot"><strong>'.$t_email.'&#160;</strong></span>
  127.         </td>
  128.     </tr>
  129.     <tr>
  130.         <td>Beitrag</td>
  131.         <td>
  132.             <textarea rows="9" name="beitrag" cols="60" tabindex="5">'.$beitrag.'</textarea>
  133.             <br /><span class="rot"><strong>'.$t_beitrag.'&#160;</strong></span>
  134.         </td>
  135.     </tr>
  136.     <tr>
  137.         <td>&#160;</td>
  138.         <td>
  139.             <input type="hidden" id="code" name="code" value="'.$code.'" />
  140.             <input class="norm" type="submit" name="submit" value="abschicken" tabindex="6" />
  141.         </td>
  142.     </tr>
  143. </table>
  144. </form>
  145. ';
  146. ?>
  147.  
  148. <h4>G&#228;stebucheintragungen</h4>
  149.  
  150. <?php
  151. // Verbindung mit DB fuer Eintragungen anzeigen
  152. $query = "SELECT *, DATE_FORMAT(tstamp,'%d.%m.%y') AS tstamp_f FROM gaestebuch ORDER BY tstamp DESC";
  153. $result = mysql_query($query,$conn);
  154. $num = mysql_num_rows($result);
  155.  
  156. for ($i = 0; $i < $num; $i++){
  157.   $row = mysql_fetch_array($result);
  158.   echo '
  159. <table width="100%">
  160.  <colgroup>
  161.    <col width="60" />
  162.     <col />    
  163.     <col width="50" />     
  164.     <col width="150" />    
  165.  </colgroup>
  166.  <tr>
  167.    <td >Name:</td>
  168.    <td>'.$row['vname'].' '.$row['nname'].'</td>
  169.    <td>Ort:</td>
  170.    <td>'.$row['ort'].'</td>
  171.  </tr>
  172.  <tr>
  173.    <td>Mail:</td>
  174.    <td>'.$row['email'].'</td>
  175.    <td>Date:</td>
  176.    <td>'.$row['tstamp_f'].'</td>
  177.  </tr>
  178. </table>
  179. <p class="bgweiss">'.nl2br($row['beitrag']).'</p>
  180.  ';
  181. }
  182. mysql_close($conn);
  183. ?>
  184.  
  185.     </td>
  186.   </tr>
  187. </table>
  188. <!--
  189. Quelle Script: http://www.zudila.ch/scripte/php_gaestebuch.php
  190. Zudila Gästebuch v1.4, GPL
  191. -->
  192.  
  193. </body>
  194. </html>
  195.  
Script Update: 29.04.08

Copyright © 1998 - 2010, Zudila AG, CH 8057 Zürich Diese Seite (www.zudila.ch/scripte/php_gaestebuch_anz.php) wurde aktualisiert: 29.04.08

Besucher heute: 160 Seitenaufrufe heute: 558 gerade online: 2
Besucher gestern: 220 Seitenaufrufe gestern: 470 max. online: 135
Besucher pro Tag: 206,52 Seitenaufrufe pro Tag: 680,53 Eigene Seitenaufrufe: 54
Valid XHTML 1.0! Valid CSS! ICRA Best viewed with any browser

www.zudila.ch   info@zudila.ch

nach oben
Herr Jürg Dieter Lüthard Jürg D. Lüthard Zudila AG www.zudila.ch Krokusweg 6 Switzerland 8057 Zürich Zürich +41 44 310 14 25 +41 79 691 87 58 +41 44 310 14 26
N 47º 24.2416 O 8º 32.9866
business Webseiten erstellen, programmieren, warten /
Web pages provide, program, wait /
Les pages Web fournissent, programment, attendent