Anmeldeformular für den Newsletter

Gesperrt
Halma
Beiträge: 8
Registriert: Do 16. Okt 2003, 16:02
Wohnort: Nähe Oldenburg
Kontaktdaten:

Anmeldeformular für den Newsletter

Beitrag von Halma » Sa 1. Nov 2003, 14:23

Hallo, habe da noch man ne Frage!

Beim CONTENIDO CMS ist doch ein Newsletter integriert! Wie bzw. woher bekomme ich ein Modul, in dem der User seine Mailadresse eingeben kann, und diese im System gespeichert wird???

Ich habe schon die Version hier aus dem Forum ausprobiert, aber die funzt irgendwie nicht!

Gruß

Halma

jwulfes
Beiträge: 60
Registriert: Mo 8. Sep 2003, 20:35
Kontaktdaten:

Re: Anmeldeformular für den Newsletter

Beitrag von jwulfes » Mo 3. Nov 2003, 09:47

Hallo halma,

das würde mich auch interessieren.
Habe 4.4.1 erst vor ein paar Tagen inst. und bin hier noch ein ziemlicher Anfänger.
Sicherlich kann uns hier jemand helfen :D

Gruß
Joerg

tuddelouie
Beiträge: 4
Registriert: Mo 22. Dez 2003, 23:59
Kontaktdaten:

Beitrag von tuddelouie » Di 23. Dez 2003, 00:00

Hallo alle zusammen,

würde mich auch mal interessieren, wie ich dem user eine Anmeldung für den NL anbieten kann.

laurisilva
Beiträge: 40
Registriert: Di 11. Nov 2003, 19:16
Kontaktdaten:

Beitrag von laurisilva » Di 23. Dez 2003, 12:17

Hallo,
ich verwende folgende Module:
(Leider weiß ich nicht mehr wo ich die herhabe, sonst würde ich selbstverständlich den Autor nennen.)

1. Newsletter-Funktionen (Output)

Code: Alles auswählen

<?php 

if (!(strstr($email,".") AND strstr($email,"@")) AND $email != "") {
$error_mail = "ff9966";
echo "<span class=red>Sie haben keine gültige EMail Adresse angegeben, bitte überprüfen Sie Ihre Eingabe </span>";
}
else {
$from = "Newsletter <newsletter@datenbank-coaching.de>"; 
$confirmText = "Vielen Dank für Ihren Eintrag in unsere Newsletter-Kartei!\n Sehr geehrter Interessent,\n um Ihre Teilnahme am Newsletter zu bestätigen, klicken Sie bitte auf untenstehenden Link:"; 

if ($action == "subscribe") 
{ 
  
  $sql = "SELECT idnewsrcp FROM ".$cfg["tab"]["news_rcp"] ." WHERE email = '$email' AND idclient='$client' AND idlang='$lang'"; 
  
  $db->query($sql); 
  if (!$db->next_record()) 
  { 
  $body = $confirmText."\n".$cfgClient[$client]["path"]["htmlpath"]."news.php?confirm=".md5($email)."\n\n"; 


  $sql = "INSERT INTO ".$cfg["tab"]["news_rcp"] ." SET idnewsrcp = '".$db->nextid($cfg["tab"]["news_rcp"])."', idclient='$client', idlang='$lang', email='$email', name='$email', deactivated='1'"; 
  $db->query($sql); 

  mail("$email", "Newsletter-Bestätigung", "$body", 'From: '.$from."\n"."X-Mailer: Contenido [PHP/" . phpversion()."]"); 

  echo "<span class=\"red\">Sehr geehrter Interessent,<br><br>es wurde Ihnen eine E-Mail geschickt, um Ihre Teilnahme am Newsletter zu bestätigen.</span>"; 
  } else { 
  echo "<span class=\"red\">Diese E-Mail-Adresse ist bereits für den Newsletter eingetragen.</span>"; 
  } 
} 
}

if (strlen($confirm) == 32) 
{ 
  $sql = "SELECT idnewsrcp, email FROM ".$cfg["tab"]["news_rcp"] ." WHERE idclient='$client' AND idlang='$lang' AND deactivated = 1"; 
  $db->query($sql); 

  while ($db->next_record()) 
  { 
    if ($confirm == md5($db->f("email"))) 
    { 
       $sql = "UPDATE " .$cfg["tab"]["news_rcp"] ." SET deactivated = '0' WHERE idnewsrcp = '".$db->f("idnewsrcp")."'"; 
       $db->query($sql); 
       echo "<span class=\"red\">Vielen Dank, Sie wurden nun in den Newsletter aufgenommen.</span>"; 
    } 
  } 

} 

if (strlen($stop) == 32) 
{ 
  $sql = "SELECT idnewsrcp, email FROM ".$cfg["tab"]["news_rcp"] ." WHERE idclient='$client' AND idlang='$lang'"; 
  $db->query($sql); 

  while ($db->next_record()) 
  { 
    if ($stop == md5($db->f("email"))) 
    { 
       $sql = "UPDATE " .$cfg["tab"]["news_rcp"] ." SET deactivated = '1' WHERE idnewsrcp = '".$db->f("idnewsrcp")."'"; 
       $db->query($sql); 
       echo "Sie wurden von der Newsletterverteilung ausgenommen."; 
    } 
  } 
} 

if (strlen($goon) == 32) 
{ 
  $sql = "SELECT idnewsrcp, email FROM ".$cfg["tab"]["news_rcp"] ." WHERE idclient='$client' AND idlang='$lang'"; 
  $db->query($sql); 

  while ($db->next_record()) 
  { 
    if ($goon == md5($db->f("email"))) 
    { 
       $sql = "UPDATE " .$cfg["tab"]["news_rcp"] ." SET deactivated = '0' WHERE idnewsrcp = '".$db->f("idnewsrcp")."'"; 
       $db->query($sql); 
       echo "Der Newsletter wird nun wieder an Sie verschickt."; 
    } 
  } 
} 

if (strlen($unsubscribe) == 32) 
{ 
  $sql = "SELECT idnewsrcp, email FROM ".$cfg["tab"]["news_rcp"] ." WHERE idclient='$client' AND idlang='$lang'"; 
  $db->query($sql); 

  while ($db->next_record()) 
  { 
    if ($unsubscribe == md5($db->f("email"))) 
    { 
       $sql = "DELETE FROM " .$cfg["tab"]["news_rcp"] ." WHERE idnewsrcp = '".$db->f("idnewsrcp")."'"; 
       $db->query($sql); 
       echo "Sie wurden nun aus unserer Empfängerdatenbank entfernt."; 
    } 
  } 
} 

?> 
2. Newsletter-Eintrageformular (Output)

Code: Alles auswählen

<?php 

include($cfg['path']['contenido']."includes/cfg_language_de.inc.php");


$newsletterIDCatArt = 500; 

?> 

<form name="Kontakt" method="post" action="front_content.php">
						   
						<table class=tab1 width="100%" border="0" cellspacing="0" cellpadding="0">
							<tr>
								<td></td>
					<td width="121"></td>
					<td></td>
							</tr>
							<tr>
								<td>&nbsp;</td>
					<td valign="bottom" width="121"><font color="#20315e">Ihre Email-Adresse:</font></td>
					<td><input type="hidden" name="idcatart" value="<?php echo $newsletterIDCatArt; ?>"><input class="input" name="email" type="text"<?
if (isset($error_mail)) echo "style='background-color:$error_mail' value='$email'";

?>><input type="hidden" name="action" value="subscribe">&nbsp;&nbsp;&nbsp;<input class="button" type="submit" value="Anmelden!"></td>
							</tr>
							<tr>
								<td></td>
					<td width="121"></td>
					<td>&nbsp;</td>
							</tr>
						</table>
					</form>
Beide Module müssen in dieser Reihenfolge im gleichen Artikel eingepflegt sein.
Leider funktioniert seit dem Upgrade auf 4.4.2 die Übergabe folgender Variable

Code: Alles auswählen

$newsletterIDCatArt = 500; 
(enthält die idcatart der Newsletter Seite mit obigen Modulen) nicht mehr. Deshalb habe ich ein bischen beschissen und diese variable in der Datei news.php (liegt in /CMS/) gesucht, gelöscht und stattdessen direkt idcatart=NummerderNewsletterseite eingetragen. Ist nicht so elegant - funktioniert aber. Wer was besseres weiß schaffe bitte Abhilfe.

Diese Module beinhalten das Versenden einer Verifizierungsmail an den Eintragenden - ist ja heutzutage nicht ganz unwichtig.
CSS müssen entsprechend den eigenen Wünschen angepasst werden.

Viele Spass
Anian
-------------------------------------------------------
www.anian-leistner-webdesign.de

Gesperrt