Subversion-Projekte lars-tiefland.php_share

Revision

Blame | Letzte Änderung | Log anzeigen | RSS feed

<?
        function is_mail($m)
        {
                $error=false;
                $m1 = $m;
                $illegal = array ("/ /","/Ä/","/Ö/","/Ü/","/ä/","/ö/","/ü/");       // illegale Zeichen filtern;
                $legal =   "";                                                                                                    //
                $m = preg_replace ($illegal, $legal, $m);                                                 //
                if ($m != $m1)                                                                  {$error = true;}  //
                
                if (substr_count($m, "@") != 1)                                 {$error = true;}  // @ vorhanden
                if (strpos($m, "@") > 0) {} else                                {$error = true;}  // darf nicht an erster Stelle stehen
                if ((strrpos($m, "@")+1) == strlen($m))                 {$error = true;}  // darf nicht an letzter Stelle stehen

                if ((strrpos($m, "@")+1) < strrpos($m, ".")) {} else                      // mindestens ein Punkt nach dem @ mit
                                                                                                                {$error = true;}  // mindestens einem Zeichen Abstand
                if ((strrpos($m, ".")+1) == strlen($m))                 {$error = true;}  // darf nicht an letzter Stelle stehen
                
                if ($error == true) { return false; } else { return true; }
        }

        if ($action)
        {
                // Mailcheck, Eintrag in DB und Mailgenerierung
                if (is_mail($mail))
                {
                        $query="insert into Logins (Status,E_Mail,erstellt_am,erstellt_von,letzte_Aenderung_am,letzte_Aenderung_von) values ('Newsletter','$mail',NOW(),'webinterface',NOW(),'webinterface');";
                        $result = mysql_query ($query);
                        $answer=1;
                        // $ID=mysql_insert_id();
                        if ($ID=mysql_insert_id() && $result == true)
                        {
                                $message = "Hallo, \n\nSie haben sich für den Newsletter eingetragen und bekommen \n";
                                $message .= "diese Bestätigungsmail. Bitte klicken Sie auf den unten stehenden Link";
                                $message .= " und bestätigen Sie Ihren Eintrag in den Newsletter Service.\n\n\n";
                                $message .= "LINK: http://www.mediaran.de/news/newsletter.php?ID=".mysql_insert_id()."&subscribe=1&mail=".urlencode($mail);
                                $message .= "\n\nMfG Ihr mediaran.de Team";
                                mail($mail,"Bitte bestätigen!","$message","From: mediaran.de <newsletter@mediaran.de>");
                        }
                        else
                        {
                                $answer=3;
                        }
                }
                else
                {
                        $answer=2;
                }
        }
        else
        {
                if
                (
                        isset($_GET[m])
                        &&
                        isset($_GET[v])
                )
                {
                        $query = "select * FROM Logins WHERE E_Mail='$_GET[m]'";
                        $result = mysql_query ($query) or die (mysql_errno().": ".mysql_error()."<hr>$query<hr>");
                        if (mysql_num_rows($result) > 0)
                        {
                                while($zeile=mysql_fetch_assoc($result))
                                {
                                        $query = "
                                                delete from
                                                        Logins_to_Verteiler
                                                WHERE
                                                        Logins = '".$zeile[ID]."'
                                                and
                                                        Verteiler = '".$_GET[v]."'
                                                ";
                                        $res2=mysql_query ($query) or die (mysql_errno().": ".mysql_error()."<hr>$query<hr>");
                                        mail("niewerth@weban.de","Verteiler-Stornobestätigung","$query","From: mediaran.de <newsletter@mediaran.de>");
                                        if (mysql_affected_rows() > 0)
                                        {
                                                $answer=4;
                                        }
                                }
                        }
                        else
                        {
                                $answer=5;
                        }
                }
        }
        if ($ID && $subscribe)
        {
                /* Bestätiger */
                $sql    = "SELECT IF(a.Logins='$ID','true','false') AS aktiviert, 
                if(u.E_Mail='".urldecode($mail)."','true','false') AS realer_benutzer, 
                u.E_Mail AS Mail FROM Logins u LEFT JOIN Logins_to_Verteiler a ON(a.Logins=$ID) 
                WHERE u.ID = '$ID' AND u.E_Mail='".urldecode($mail)."'";
                
                $query = mysql_query($sql) or print(mysql_error());
                $row   = mysql_fetch_array($query);
                print_r($row);
                if($row['aktiviert'] == 'true' && $row['realer_benutzer'] == 'true')
                {
                        // TODO schon Aktiv
                        $answer = 7;
                 }elseif($row['aktiviert'] == 'false' && $row['realer_benutzer'] == 'true')
                 {
                        $query="insert into Logins_to_Verteiler (Verteiler,Logins) values (4,$ID);";
                        $result = mysql_query ($query) or die (mysql_errno().": ".mysql_error());
                        $msg_to="info@mediaran.de";
                        mail($msg_to,"Newsletter Neueintrag","Name: $name\nE-Mail: $mail","From: Webinterface <newsletter@mediaran.de>");                       
                        if($query)
                        { 
                         // Begrüßungsmail schicken   
                         mail($row['Mail'], "Begrüßungsmail", $greetings,"From: mediaran.de <newsletter@mediaran.de>");
                         $answer = 6;
                        }
                }else{
                         // Fehler Generieren
                         $answer = 8;
                }
        }
?>

<?
        switch ($answer)
        {
                case 1:
?>
  <p class="head">Danke f&uuml;r Ihr Interesse!</p>
  <p class="fliess">Ihre E-Mail-Adresse wurde in unseren Newsletter eingetragen.</p>
  <?            
                        break;
                case 2:
?>
  <p class="head">Fehler!</p>
  <p class="fliess">Ihre E-Mail-Adresse konnte nicht aufgelöst werden.<br>
  Bitte überprüfen Sie Ihre Eingaben.</p>
  <?
                        break;
                case 3:
?>
  <p class="fliess">Ihre E-Mail-Adresse ist bereits in diesen Newsletter eingetragen.</p>
  <?
                        break;
                case 4:
?>
  <p class="fliess">Ihre E-Mail-Adresse wurde aus diesem Newsletter entfernt.</p>
  <?
                        break;
                case 5:
?>
  <p class="head">Fehler!</p>
  <p class="fliess">Ihre E-Mail-Adresse konnte nicht gefunden werden.<br>
    Bitte überprüfen Sie Ihre Eingaben.<br>
  Sollte dieses Problem weiterhin bestehen, wenden Sie sich bitte an <a href="mailto:info@mediaran.de">info@mediaran.de</a></p>
  <?
                        break;
                
                default:
?>
  <p class="head">Mit unseren Infos<br>
  sind Sie weiter vorn!</p>
  <p class="fliess">Bestellen Sie hier Ihren pers&ouml;nlichen Newsletter</p>
  <?
                        break;
                case 6:
?>
  <p class="fliess">Sie wurden Freigeschaltet</p>
  <?
                        break;
                case 7:
?>
  <p class="fliess">Sie sind bereits Freigeschaltet!</p>
  <?
                        break;
                case 8:
?>  
  <p class="fliess">Es ist ein Fehler aufgetreten!</p>
  <? 
                        break;
        }
?>
<?
 if(!$answer)
 {
?>
  <form method="post" name="news" id="news">
    <table cellpadding=3 cellspacing=1 width="100%" 

                gcolor="#CCCCCC">
<tr valign="top">
        <td width="35%" class="fliess-weiss">E-Mail*</td>
        <td width="60%">
          <input type="text" name="mail" class="txt" size="20" maxlength="50" value="<? echo $mail ?>">
        </td>
      <tr valign="top">
        <td colspan="2" class="fliess-weiss">*Pflichtfelder</td>
      <tr align="right">
        <td colspan="2">
          <input name="action" type=submit class="button" value="Eingabe senden">
        </td>
    </table>
  </form>
<? } ?>