Thema: hilfe bei projekt
-
19. 01. 2012, 10:19 #1Mitglied
- Registriert seit
- Jan 2012
- Beiträge
- 19
hilfe bei projekt
hallo leute,
ich habe von der schule den auftrag einen newsletter zu gestalten.
alles schön und gut.
der newsletter enthält 9 tabellen und jeweils eine checkbox und einen senden button.
nun sollte durch anhakeln der checkbox und betätigen des buttons eine mail verschickt werden.
nun sitz ich ratlos rum und hab kein plan wie ich die mail verschicken soll...
ich hab schon gegoogelt aber irgendwie funktionierts nicht...
kann mir einer von euch helfen wie ich weiterkomme bzw. wie ich vorgehen soll???
wäre echt nett
mfg painboarder
-
19. 01. 2012, 13:05 #2
Re: hilfe bei projekt
Hey,
ich würde das per isset($_POST['submit'] lösen. Dazu dann noch deine anderen Abfragen (ggf. Captcha usw.) verschachteln / mit abfragen.
Gruß godlike
edit: Wie jetzt? Du hast in der Newsletter einen Sende-Button!?
-
19. 01. 2012, 13:47 #3
Du solltest ein Problem genauer beschreiben. Was genau meinst du mit der Aussage, der `Newsletter` würde Checkbox-Steuerelemente enthalten? Handelt es sich um eine HTML-E-Mail? Um eine Webseite? Sollte es sich um eine Webseite handeln, steht dir eine serverseitige Skriptsprache wie z.B. PHP zum Verarbeiten der Formulardaten zur Verfügung?
Sofern es sich - wie godlike vermutet - um eine Webseite handelt und du PHP zur Auswertung der Formulardaten nutzt, kann ich zum Verschicken der E-Mail - insbesondere dann, wenn es sich um etwas komplexere (MIME-)Mails handelt - nur stark zur Verwendung einer bestehenden Bibliothek wie z.B. Swift Mailer raten. Es ist nicht trivial, gültige MIME-E-Mails zu erzeugen, erzeugst du ungültige E-Mails, ist die Gefahr von schwer nachzuvollziehenden Fehlern relativ hoch. Unter http://swiftmailer.org/docs/messages.html findest du grundlegende Informationen zur Erstellung einer E-Mail mittels Swift Mailer.
-
19. 01. 2012, 14:18 #4Mitglied
(Threadstarter)
- Registriert seit
- Jan 2012
- Beiträge
- 19
Re: hilfe bei projekt
ja ich habe mit html einen newsletter erstellt.
dort gibt es einen senden button und mit dem button soll dann direkt eine mail verschickt werden!
hier mal mein html
ich habe den inhalt mal rausgelöscht is aber auch irelevant, da es sich ja nur um die checkboxen handelt!
HTML-Code:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=windows-1250"> <meta name="generator" content="PSPad editor, www.pspad.com"> <title></title> </head> <body> <form action="newsletter_10.01.2012.php" method=post> <!-- Beginn Tabellen--> <table cellspacing="10" cellpadding="20"> <tr> <td> <!--Tabelle1--> <div align="right"> <table border="1" rules="groups" bordercolor="black"> <thead> <tr> <td align="center"><input type="checkbox" name="mark[]" value="beispiel1"><i><h1>Beispiel</h1></i></td> </tr> </thead> <tfoot> <tr> <td>Beispieltext</td> </tr> </table> </td> <td> <!--Tabelle2--> <div align="right"> <table border="1" rules="groups" bordercolor="black"> <thead> <tr> <td align="center"><input type="checkbox" name="mark[]" value="beispiel2"><i><h1>Beispiel</h1></i></td> </tr> </thead> <tfoot> <tr> <td>Beispieltext</td> </tr> </table> </td> <td> <!--Tabelle3--> <div align="right"> <table border="1" rules="groups" bordercolor="black"> <thead> <tr> <td align="center"><input type="checkbox" name="mark[]" value="beispiel3"><i><h1>Beispiel</h1></i></td> </tr> </thead> <tfoot> <tr> <td>Beispieltext</td> </tr> </table> </td> </tr> <tr> <td> <!--Tabelle4--> <div align="right"> <table border="1" rules="groups" bordercolor="black"> <thead> <tr> <td align="center"><input type="checkbox" name="mark[]" value="beispiel4"><i><h1>Beispiel</h1></i></td> </tr> </thead> <tfoot> <tr> <td>Beispieltext</td> </tr> </table> </td> <td> <!--Tabelle5--> <div align="right"> <table border="1" rules="groups" bordercolor="black"> <thead> <tr> <td align="center"><input type="checkbox" name="mark[]" value="beispiel5"><i><h1>Beispiel</h1></i></td> </tr> </thead> <tfoot> <tr> <td>Beispieltext</td> </tr> </table> </td> <td> <!--Tabelle6--> <div align="right"> <table border="1" rules="groups" bordercolor="black"> <thead> <tr> <td align="center"><input type="checkbox" name="mark[]" value="beispiel6"><i><h1>Beispiel</h1></i></td> </tr> </thead> <tfoot> <tr> <td>Beispieltext</td> </tr> </table> </td> </tr> <tr> <td> <!--Tabelle7--> <div align="right"> <table border="1" rules="groups" bordercolor="black"> <thead> <tr> <td align="center"><input type="checkbox" name="mark[]" value="beispiel7"><i><h1>Beispiel</h1></i></td> </tr> </thead> <tfoot> <tr> <td>Beispieltext</td> </tr> </table> </td> <td> <!--Tabelle8--> <div align="right"> <table border="1" rules="groups" bordercolor="black"> <thead> <tr> <td align="center"><input type="checkbox" name="mark[]" value="beispiel8"><i><h1>Beispiel</h1></i></td> </tr> </thead> <tfoot> <tr> <td>Beispieltext</td> </tr> </table> </td> <td> <!--Tabelle9--> <div align="right"> <table border="1" rules="groups" bordercolor="black"> <thead> <tr> <td align="center"><input type="checkbox" name="mark[]" value="beispiel9"><i><h1>Beispiel</h1></i></td> </tr> </thead> <tfoot> <tr> <td>Beispieltext</td> </tr> </table> </td> </tr> <input type=submit name=button value="Feedback abschicken"/> </table> </form> </body> </html>
-
21. 01. 2012, 11:14 #5
Re: hilfe bei projekt
was immer noch die frage aufwirft, was du eigentlich vorhast. newsletter sind nichts anderes als Emails. die werden gelesen und fertig. da werden keine checkboxen oder sonst sowas verwendet
-
23. 01. 2012, 09:30 #6Mitglied
(Threadstarter)
- Registriert seit
- Jan 2012
- Beiträge
- 19
-
23. 01. 2012, 09:49 #7
Re: hilfe bei projekt
Ja, die gute Schule zwingt auch Reihenweise die Schüler den Doctype aus dem Dokument zu entfernen um eine bessere Darstellung zu erhalten. Alles schon erlebt. Von dem her hast du dann vllt einfach die A-Karte gezogen. Bzw. dann sollte dir ein Lehrer ja auch den Sinn und die Vorgehensweise erklären können...
-
23. 01. 2012, 09:55 #8Mitglied
(Threadstarter)
- Registriert seit
- Jan 2012
- Beiträge
- 19
Re: hilfe bei projekt
ja sie haben mich gefragt ob ich mich mal drüberetzten möchte...
dann hab ich gedacht frägste mal in nem forum nach, vll kann dir ja da einer helfen
naja vll komm ich irgendwie zu ner lösung meines problemes
-
23. 01. 2012, 12:58 #9Mitglied
- Registriert seit
- Mar 2007
- Beiträge
- 2.700
Re: hilfe bei projekt
Mangels verwertbarer Informationen deinerseits kann ich gerade nur RATEN was du da vorhast.
Du hast eine Email die ein Formular enthält und die Formulardaten sollen für das Senden einer automatisierten Antwort verwendet werden? Nun, das funktioniert nicht. Die Email selber kann KEIN Formular enthalten, sie darf lediglich einen Link enthalten der zu der HTML-Seite mit dem Formular auf einem Webserver führt.
Wenn dann dort ein html-Dokument liegt das so geformt ist, wie es in deinem Startpost zu erahnen ist (grauenhafter Code nebenbei gesagt!!!), dann wird der Browser die Daten an die PHP-Datei "newsletter_10.01.2012.php" senden, dort findest du die Daten im Array $_POST. Solltest du an dieser Stelle den Begriff Array nicht verstanden haben, so hast du KEINE CHANCE die dir gestellte Aufgabe zu lösen, da musst du erst mal Programmieren lernen. Höre in diesem Fall sofort auf zu lesen, der nächste Abschnitt wird dir nicht weiter helfen. In PHP kannst du dann die mail()-Funktion nutzen um automatisch die Mail zu verschicken, dafür muss in der php.ini ein gültiger smtp-Server eingetragen sein, falls das nicht der Fall ist, wirst du dir eine Klasse suchen müssen die auch erst zur Laufzeit die Angabe eines SMTP-Servers erlaubt.
-
23. 01. 2012, 14:21 #10Mitglied
(Threadstarter)
- Registriert seit
- Jan 2012
- Beiträge
- 19
Re: hilfe bei projekt
also die aufgabe sieht so aus:
newsletter mit html gestallten
checkboxen in jeder tabelle
durch anklicken der checkbox und betätigen eines buttons soll eine mail verschickt werden mit name der tabelle und ob die checkbox aktiviert wurde
des is meine aufgabe...
ich hab hier mein php code aber anscheinend stimmt hier etwas nicht.. :/
PHP-Code:<?php
error_reporting(E_ALL); // alle fehler melden
ini_set('display_errors', 1); // fehler ausgeben
if (isset($_POST['button'])) // wenn das formular abgesendet wurde...
{
$err = array(); // array worin fehler gespeichert werden
if (!isset($_POST['mark'])) // wenn keine checkbox selektiert wurde...
{
array_push($err, "Bitte mindestens eine Checkbox auswählen!");
}
else
{
$selektiert = ""; // anlegen des strings der nach der nachfolgenden schleife die ausgewählten values/werte enthält
// $_POS T['mark'] ist ein array, daher schleife(foreach)
//foreach ($_POST['mark'] as $checkbox) // für jeden wert im array wird folgendes gemacht...
//{
//$selektiert .= $checkbox . ", "; // der wert wird dem string $selektiert hinzugefügt
//}
$selektiert = implode(',', $_POST['mark']);
// mail absenden
$empfaenger = "beispiel@gmx.de";
$betreff = "Feedback";
$mailtext = $sender. "hat folgende Angebote angekreuzt:" .$selektiert;
$mail_ok = mail($empfaenger, $betreff, $mailtext);
if (!$mail_ok)
{
// kein mail versendet...
array_push($err, "e-Mail konnte nicht versendet werden!");
}
else
{
// mail gesendet...
echo ("Mail wurde versendet!");
}
}
// fehler array ausgeben wenn fehler vorhanden
if (!empty($err)) // wenn array nicht leers ist...
{
foreach ($err as $report) // in einer schleife die fehlermeldungen ausgeben...
{
echo ($report);
}
}
}
?>
-
23. 01. 2012, 17:55 #11Mitglied
- Registriert seit
- May 2008
- Beiträge
- 122
Re: hilfe bei projekt
Hier mal dein Überarbeitet PHP script funzt bei mir aufm localhost wunderbar.
du hattest nur ein problem mit deinem e-mail versand wie dein fahler schon sagte.
PHP-Code:<?php
error_reporting(E_ALL); // alle fehler melden
ini_set('display_errors', 1); // fehler ausgeben
if (isset($_POST['button'])) // wenn das formular abgesendet wurde...
{
$err = array(); // array worin fehler gespeichert werden
if (!isset($_POST['mark'])) // wenn keine checkbox selektiert wurde...
{
array_push($err, "Bitte mindestens eine Checkbox auswählen!");
}
else
{
$selektiert = ""; // anlegen des strings der nach der nachfolgenden schleife die ausgewählten values/werte enthält
// $_POS T['mark'] ist ein array, daher schleife(foreach)
//foreach ($_POST['mark'] as $checkbox) // für jeden wert im array wird folgendes gemacht...
//{
//$selektiert .= $checkbox . ", "; // der wert wird dem string $selektiert hinzugefügt
//}
$selektiert = implode(',', $_POST['mark']);
// mail absenden
$to = "..............Hier deine E-mail dresse............";
$subject = "Feedback";
$webmaster = "............hier dein siten name ( www.example.com ) zb. damit du weißt woher die email kommt..............";
$headers = "FROM: $webmaster";
$body = "hat folgende Angebote angekreuzt:" .$selektiert;
$mail_ok = mail ($to, $subject, $body, $headers);
if (!$mail_ok)
{
// kein mail versendet...
array_push($err, "e-Mail konnte nicht versendet werden!");
}
else
{
// mail gesendet...
echo ("Mail wurde versendet!");
}
}
// fehler array ausgeben wenn fehler vorhanden
if (!empty($err)) // wenn array nicht leers ist...
{
foreach ($err as $report) // in einer schleife die fehlermeldungen ausgeben...
{
echo ($report);
}
}
}
?>
-


Zitieren

mehr lesen...







Resident Evil 6 erscheint in...
Heute, 15:21 in gulli:news