03. december 2005 - 11:31
Der er
13 kommentarer og 1 løsning
Scriptet til at sende ud!
Hejsa Folk på eksperten. Jeg har fået bikset et nyhedsbrevssystem sammen, men den gider ikke at udsende? Nogen som kan hjælpe? //Kode Start// <?php session_start(); require("db.php"); $fra = "nickern@sol.dk"; if ($_GET['mode'] == "admin" || $_POST['mode'] == "admin") { if ($_SESSION['id'] == 1) { if ($overskrift || $indhold) { if ($overskrift && $indhold) { if (sizeof($til) > 0) { $antal=0; for ($i=0; $i<sizeof($til);$i++) { // -- headers -- $headers = 'From: "'.$fra.'" <'.$fra.'> Reply-To: "'.$fra.'" <'.$fra.'>; X-Mailer: PHP/'.phpversion().'; Content-Type:text/html; charset="iso-8859-1";'; // -- End headers -- if (mail($til[$i],$overskrift,$indhold,$headers)) { $antal++; $_SESSION['udført'] = "<i>".$antal." Mail(s) blev sendt</i>"; } } header("location: $PHP_SELF?mode=admin"); exit; } else { $_SESSION['fejl'] = "Du har ikke valgt nogen at sende til"; } } else { $_SESSION['fejl'] = "Alle felter blev ikke udfyldt"; } } else { ?> <html> <head> <title>Nyhedsbrev</title> <meta name="Generator" content="Stone's WebWriter 4"> <script> var checkflag = "true"; function check(field) { if (checkflag == "false") { for (i = 0; i < field.length; i++) { field[i].checked = true; } checkflag = "true"; return "Fjern markeringer"; } else { for (i = 0; i < field.length; i++) { field[i].checked = false; } checkflag = "false"; return "Markér alt"; } } </script> </head> <body bgcolor=#DBE3E6> <h2>Her kan du sende nyhedsbrev</h2> <?php $skriv = $_SESSION['udført'] != "" ? $_SESSION['udført'] : ""; $_SESSION['udført'] == ""; echo "<i>".$skriv."</i>"; ?> <form action="<?php echo $PHP_SELF ?>" method="post"> <input type="hidden" name="mode" value="admin"> Overskrift: <input type="text" name="overskrift" value="<?php echo $overskrift; ?>"><br> <br> Besked:<br> <textarea name='indhold' cols='50' rows='5' wrap='virtual'><?php echo $indhold; ?></textarea><br> <br> Til:<br> <br> <?php $result = mysql_query("SELECT * FROM nyhedsbrev") or die (mysql_error()); $antal = mysql_num_rows($result); if ($antal == 0) { echo "Der er ingen brugere"; } else { echo "<table>\n"; while ($myrow = mysql_fetch_array($result)) { echo "<tr>\n"; echo " <td>\n"; echo $myrow['email']."\n"; echo " </td>\n"; echo " <td>\n"; echo " <input id='til' checked='checked' type='checkbox' name='til[]' value='".$myrow['email']."'>\n"; echo " </td>\n"; echo "</tr>\n"; } echo "</table>\n"; } ?> <br> <input type="button" value="Fjern markeringer" onclick="this.value=check(this.form.til);"> <input type='submit' value='Send'> </form> </body> </html> //Kode Slutt//
Annonceindlæg fra Cognizant
AI er ikke problemet. Eksekvering er.
Der bliver investeret massivt i AI. Teknologien er mere tilgængelig end nogensinde, og ambitionerne er høje. Alligevel oplever mange virksomheder, at resultaterne udebliver.
03. december 2005 - 21:08
#1
Ingen som kan se sig ud af det?
04. december 2005 - 16:34
#2
Hvor har du alle dine modtagers emails stående henne?
04. december 2005 - 19:47
#3
<?php session_start(); require("db.php"); $fra = "nickern@sol.dk"; if ($_GET['mode'] == "admin" || $_POST['mode'] == "admin") { if ($_SESSION['id'] == 1) { if ($overskrift || $indhold) { if ($overskrift && $indhold) { if (sizeof($til) > 0) { $antal=0; for ($i=0; $i<sizeof($til);$i++) { // -- headers -- $headers = 'From: "'.$fra.'" <'.$fra.'> Reply-To: "'.$fra.'" <'.$fra.'>; X-Mailer: PHP/'.phpversion().'; Content-Type:text/html; charset="iso-8859-1";'; // -- End headers -- if (mail($til[$i],$overskrift,$indhold,$headers)) { $antal++; $_SESSION['udført'] = "<i>".$antal." Mail(s) blev sendt</i>"; } } header("location: $PHP_SELF?mode=admin"); exit; } else { $_SESSION['fejl'] = "Du har ikke valgt nogen at sende til"; } } else { $_SESSION['fejl'] = "Alle felter blev ikke udfyldt"; } } else { ?> <html> <head> <title>Nyhedsbrev</title> <meta name="Generator" content="Stone's WebWriter 4"> <script> var checkflag = "true"; function check(field) { if (checkflag == "false") { for (i = 0; i < field.length; i++) { field[i].checked = true; } checkflag = "true"; return "Fjern markeringer"; } else { for (i = 0; i < field.length; i++) { field[i].checked = false; } checkflag = "false"; return "Markér alt"; } } </script> </head> <body bgcolor=#DBE3E6> <h2>Her kan du sende nyhedsbrev</h2> <?php $skriv = $_SESSION['udført'] != "" ? $_SESSION['udført'] : ""; $_SESSION['udført'] == ""; echo "<i>".$skriv."</i>"; ?> <form action="<?php echo $PHP_SELF ?>" method="post"> <input type="hidden" name="mode" value="admin"> Overskrift: <input type="text" name="overskrift" value="<?php echo $overskrift; ?>"><br> <br> Besked:<br> <textarea name='indhold' cols='50' rows='5' wrap='virtual'><?php echo $indhold; ?></textarea><br> <br> Til:<br> <br> <?php $result = mysql_query("SELECT * FROM nyhedsbrev") or die (mysql_error()); $antal = mysql_num_rows($result); if ($antal == 0) { echo "Der er ingen brugere"; } else { echo "<table>\n"; while ($myrow = mysql_fetch_array($result)) { echo "<tr>\n"; echo " <td>\n"; echo $myrow['email']."\n"; echo " </td>\n"; echo " <td>\n"; echo " <input id='til' checked='checked' type='checkbox' name='til[]' value='".$myrow['email']."'>\n"; echo " </td>\n"; echo "</tr>\n"; } echo "</table>\n"; } ?> <br> <input type="button" value="Fjern markeringer" onclick="this.value=check(this.form.til);"> <input type='submit' value='Send'> </form> </body> </html> <?php } } } else { if(isset($_POST["email"])) { $add_email = addslashes($_POST['email']); $add_IP = addslashes($REMOTE_ADDR); $sql = "INSERT INTO nyhedsbrev (email,tid,ip) VALUES ('".$add_email."',NOW(),'".$add_IP."')"; mysql_query($sql) or die (mysql_error()); $_SESSION['udført'] = "Email tilføjet"; header("location: $PHP_SELF"); exit; } ?> <html> <head> <title>Nyhedsbrev</title> </head> <body bgcolor=#DBE3E6> <script> function email_check(){ if (!document.nyhedsbrev.email.value.match(/^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/)) { alert("Indtast korrekt email"); document.tjek_email.email.focus (); return false; } } </script> <center> <?php $skriv = $_SESSION['udført'] != "" ? $_SESSION['udført'] : ""; $_SESSION['udført'] == ""; echo "<i>".$skriv."</i>"; ?> <form target="<?php echo $PHP_SELF; ?>" method="post" name="nyhedsbrev" onsubmit="return email_check();"> Skriv din Email <input type="text" name="email"> <input type="submit" value="Tilmeld"> </form> </center> </body> </html> <?php } ?>
04. december 2005 - 19:47
#4
det er hele min kode
04. december 2005 - 19:50
#5
Jeg spørger lige lidt anderledes, gemmer du email adresser i en database?
04. december 2005 - 20:57
#6
ja da - self
05. december 2005 - 07:57
#7
Du skal ihf overveje at bruge: $_POST['overskrift'] og ikke $overskrift og sådan er det med alle dine felter... Prøv så i toppen af alle din if()... At lav evt over eller under dem... echo "If...."; Så kan du se hvilken if som "virker" og hvilken som ikke gør.
05. december 2005 - 16:22
#8
forstår desværre ikke helt hvad du mener?
05. december 2005 - 20:00
#9
Noget i denne stil: if ($_GET['mode'] == "admin" || $_POST['mode'] == "admin") { echo "admin mode ok<br>\n"; if ($_SESSION['id'] == 1) { echo "session ok<br>\n"; if ($overskrift || $indhold) { echo "Overskrift eller Indhold ok<br>\n"; if ($overskrift && $indhold) { echo "Overskrift og Indhold ok<br>\n"; if (sizeof($til) > 0) { echo "Sizeof ok<br>\n";
05. december 2005 - 21:29
#10
jakobdo - sorry... men kan ikke se hvad dette skal bruges til - og hvor det skal sættes ind og hvad som skal efter min if?
05. december 2005 - 21:53
#11
Det er for at teste om det går godt så langt...
09. august 2007 - 11:59
#12
okay - gider du at ligge et svar jakob?
09. august 2007 - 12:18
#13
Svar!
09. august 2007 - 13:24
#14
Takker for point.
Vi tilbyder markedets bedste kurser inden for webudvikling