Avatar billede schjerbeck Nybegynder
24. februar 2007 - 19:39 Der er 9 kommentarer

Nyhedsbrev i php

Hej ;)
jeg vil gerne lave et nyhedsbrev i php og mysql, men jeg ved ikke lige hvordan jeg skal gøre ;)?
Avatar billede mccookie Seniormester
24. februar 2007 - 21:40 #1
Avatar billede brinck10 Nybegynder
24. februar 2007 - 22:27 #2
Opret et array, med navne som keys, og mailsne som selve arrayet.
Eksempel
$mail_list = array(
"Navn på modtager 1" => "hans@email.dk",
"Næste modtager" => "email@osv.dk",
)
Derefter lav en foreach funktion der løber array'et igennem!
Avatar billede schjerbeck Nybegynder
25. februar 2007 - 00:19 #3
Altså jeg har fået fat i den her kode, og der kan man så sende mail's fra, men mangler stadig den kode til at de kan tilmelde sig:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>

  <head>
  <title>Nyhedsbrev</title>
  <link rel="stylesheet" type="text/css" href="../style.css">
<style>
fieldset
    {
    border:2px groove rgb(0,0,0);
    width:400px;
    padding: 15px;
    }
legend
    {
    letter-spacing: 3px;
    color:rgb(0,0,0);
    font-weight: bold;
    }
label
    {
    width:150px;
    vertical-align:top;
    color:rgb(0,0,0);
    float:left;
    }
div
    {
    margin-top:15px;
    }

#t1, #t2, #t3, #t4, #t5
    {
    border:1px inset rgb(0,0,0);
    width: 300px;
    background:rgb(255,255,255);
    }
#t5    {
    height:80px;
    overflow:auto;
    }
#submit
    {
    background: rgb(255,255,255) no-repeat 0% 50%;
    border:2px outset rgb(0,0,0);
    width:150px;
    }
</style>
</head>
<body background="../bg2.gif">

<form action="admin.php" method="post">
<p>
<fieldset>
<legend><h3>Oplysninger</h3></legend>
<div>
<label for='t1'>Tekst:</label><textarea name="tekst" id="t1" rows="10" cols="100"></textarea><br><br>
<input type='submit' value='Send' name="submit">
</div>
</fieldset>
</form>
<a href="admin2.php">Se mailadresser</a>
</p>

<?php
if(isset($_POST['submit'])) {

$conn = mysql_connect("domæne.dk", "*", "*");
mysql_select_db("*");

$resultat = mysql_query('select * from nyhedsbrev');
while ($raekke = mysql_fetch_array($resultat)) {

if(!isset($taeller)) {
$taeller = 1;
$adresser = $raekke['mail'];
}
else { $taeller = $taeller+1;
$adresser .= "," . $raekke['mail'];
}
}

$tekst = $_POST['tekst'];
$subject = "Nyhedsbrev fra Clint-Mathis";
$headers = "Content-Type: text/html; charset=iso-8859-1\n";
$headers .= "From: Clint-Mathis <email>";
mail($adresser, $subject, $tekst, $headers);

echo "Mail sendt!!";
}
?>

</body>
</html>
Avatar billede mccookie Seniormester
25. februar 2007 - 01:03 #4
Prøv at se google.com

http://www.google.com/search?sourceid=navclient&ie=UTF-8&rls=WZPA,WZPA:2006-18,WZPA:en&q=php+script+newsletter

Du bliver nødt til selv at gøre lidt...du får ikke bare et copypaste eksempel.

Og der ligger masser af færdige eksempler

///McCookie
Avatar billede mccookie Seniormester
25. februar 2007 - 01:05 #5
Her er der også lidt:
http://www.eksperten.dk/spm/382859
Avatar billede mccookie Seniormester
25. februar 2007 - 01:06 #6
Avatar billede mccookie Seniormester
25. februar 2007 - 01:06 #7
Avatar billede schjerbeck Nybegynder
26. februar 2007 - 09:51 #8
Så fik jeg lavet en til/frameld, men den virker ikke helt.
for det første kan jeg ikke se email'sene i min mysql tabel
og for det andet skulle man ikke kunne tilmelde sig to gange, så skulle der stå at den findes, men vis man tilmelder anden gang står der bare at man er tilmeldt, og ikke at man allerade er tilmeldt. men det er nok fordi at når de tilmelder sig, kommer de aldrig ind i tabellen

Her er koden jeg har indtil videre :
<?php

if ($_POST['nyhedsbrev']) { // hvis man har trykket "submit"
mysql_connect('*','*','*');
mysql_select_db('*');

    if ($_POST['tilmelding'] && $_POST['email']) { // hvis man har udfyldt radio og email feltet.
        if ($_POST['tilmelding'] == "ja") {
            $tjek_email = mysql_query("SELECT * FROM `nyhedsbrev` WHERE 1 = '$_POST[email]'");
            $tael_email = mysql_num_rows($tjek_email);
            if ($tael_email == 1) {
                header ("Location: ". $_SERVER['PHP_SELF']. "?nyhedsbrev=findes");
            } else {
                mysql_query("INSERT INTO nyhedsbrev (email) VALUES ('$_POST[email]')");
                header ("Location: ". $_SERVER['PHP_SELF']. "?nyhedsbrev=ok");
            }
        } elseif ($_POST['tilmelding'] == "nej") {
            mysql_query("DELETE FROM * `nyhedsbrev` WHERE 1 email = '$_POST[email]'");
            header ("Location: ". $_SERVER['PHP_SELF']. "?nyhedsbrev=slettet");
        }
    } else {
        header ("Location: ". $_SERVER['PHP_SELF']. "?nyhedsbrev=fejl");
    }
}

if ($_GET['nyhedsbrev'] == "ok") {
    echo "<font color=\"#ff0000\">Du er nu tilmeldt nyhedsbrevet!</font><br>";
}
if ($_GET['nyhedsbrev'] == "findes") {
    echo "<font color=\"#ff0000\">Du findes allerede i vores nyhedsbrev!</font><br>";
}
if ($_GET['nyhedsbrev'] == "fejl") {
    echo "<font color=\"#ff0000\">Du skal huske at skrive en e-mail i feltet!</font><br>";
}
if ($_GET['nyhedsbrev'] == "slettet") {
    echo "<font color=\"#ff0000\">Du er nu fjernet fra nyhedsbrevet!</font><br>";
}

?>

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" style="margin: 0px; padding: 0px;">
    <b>Nyhedsbrev:</b><br>
    Tilmeld <input type="radio" name="tilmelding" value="ja" CHECKED>
    Frameld <input type="radio" name="tilmelding" value="nej">
    <input type="text" name="email" maxlength="50" value="Din@e-mail.dk" style="height: 16px; border: 1px Solid Black; font-family: Verdana; font-size: 10px;"> <input type="submit" name="nyhedsbrev" value="OK" style="border-bottom: 1px Solid Black; border-right: 1px Solid Black; font-family: Verdana; font-size: 10px; width: 30px; height: 16px;">
</form>
Avatar billede windcape Praktikant
26. februar 2007 - 09:52 #9
Skrev noget grundlæggende i et andet spørgsmål :)

http://www.dragons-lair.org/module/repository/PHP/NewsLetter
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester