Mail fomular in einer anderen art wie realisieren?

Ich habe eine Seite namens „eingang.php“. Diese seite schaut in eine Datenbank und gibt die Werte die darin stehen in einer Tabelle wieder aus.
1 davon die da ausgegeben werden sind Email´s. Hinter dieser Email ist eine checkbox und ein Textfeld. Nun kann der User Email´s auswählen und in die Textbox eine Zeit hineinschreiben.

Bsp.: [email protected] x 12:00
so müsstet ihr es euch Vorstellen.
Anschliesend kann er dan auf Senden klicken.

Ich glaube ihr könnt es Euch jetzt denken. Jede e-mail die ausgewählt wurde, soll ihre Zeit zugesendet bekommen in einer neuen Form wo der User evtl noch zusätzlich zu der Email schreiben könnte. Mein Problem ist nun wie ich es realisiere.

hier mein bisherigre Code

eingang.php code

[php]

E-Mail:
Zeit:

<?PHP include ("../includes/_config.php");
mysql\_select\_db("lol"); $query = "SELECT \* FROM eingabe ORDER BY tag"; $result = mysql\_query($query); $alt=false; while ($line = mysql\_fetch\_array($result)) { $styleclass = ($alt = !$alt) ? 'text\_eingang1' : 'text\_eingang2'; ?\><?PHP echo $line[email];?> <?PHP }
mysql\_free\_result($result); mysql\_close(); ?\> [/php] mail.php code [php] <?PHP echo "Sie haben folgende Angaben gemacht:
"; echo "Auswahl der E-Mail: " .implode(' , ' , $\_POST[cmail])." "; ?\> Empfänger: <?php echo "".implode(' , ' , $_POST[cmail]).""; ?>

Datum:
Zeit:
Nachricht:
Mitteilung an Student,

Sie sind am.


Diese E-Mail wurde Automatisch generiert. Bitte schreiben Sie keine E-Mail an diese Adresse. Sie kann nicht bearbeitet werden.[/php]

Mit freundlichen Grüßen

P.S.: Eine antwort auf eine anfrage vom experten.

Du übergibst einfach alle zu kontaktierenden Adressen an eine Datei, in der per while-Schleife und mail() alle Adressen mit der zugehörigen Uhrzeit angeschrieben werden. Um alle Werte zuzuordnen, kannst du ja dynamisch alle Eingabefelder durchnumerieren, sodass du statt dem Namen cmail[] den Namen cmail_1 oder sowas erhälst. Das gleiche dann noch bei den Uhrzeit-Inputs (bspw. time_1) und dann das ganze dementsprechend abfragen.
________________________________________

Ich bin totaler Anfänger. Kann einer Helfen?

Hallo Alph83,
also kurz-gesagt, du willst Emails generieren sie aber nicht sofort,
sondern zu einer bestimmten angegebenen Zeit versenden?

Nun dazu müsste das Script, welches die Emails versendet,
genau zu den ausgewählten Zeitpunkten laufen.
Das kannst du natürlich relativ zeitnah machen,
wenn viele Benutzer deine Seite besuchen
und du dann einfach überprüfst, welche Emails inzwischen fällig sind.
Das ist dann natürlich stark abhängig vom Benutzerverkehr auf deiner Seite und oft sehr ungenau.
Um das genauer hin zu bekommen brauchst du sogenannte Cronjobs.
Damit du solche anlegen kannst, brauchst du spezielle Berechtigungen
deines Webspaceproviders.
Sollte das jedoch auf deinem Webspace nicht möglich sein,
brauchst du einen externen Cronjob Dienst,
der dann aber jenach push-häufigkeit meist kostenpflichtig ist.
Hier eine kleine Auswahl:
http://www.cron-server.de/preise.html
http://www.webcron.org/
http://www.cronjob4you.at/

Gruß
VoidZer0

nein. die zeit die eingetragen wird ist nicht die zeit wo es abgesendet werden soll. die zeit die ich reinschreibe soll in der mail stehen.
jede email soll ihre persöhnliche zeit zugesendet bekommen.

sorry wenn es unklar war.

abgesendet werden soll. die zeit die ich reinschreibe soll in
der mail stehen.

also irgentwas was du mit abspeichern willst, soll als text in der email stehen, z.b. in deinem falle eine Zeitangabe.

jede email soll ihre persöhnliche zeit zugesendet bekommen.

wie ?? häh , was

kann es sein das du einfach meinst, es soll pro eintrag eine mail verschickt werden mit eben diesen daten an die jeweilige email.
Man kann einer email (ist das eine person oder ein program oder ein server ??) keine persöhnliche zeit schicken, man kann nur eine email verschicken wo ein bestimmter inhalt drinne ist und das zu einer Zeit. Und man sollte auch nicht an den Zeitangaben rumfummeln, denn es gibt auch email server die zukünftige DatumZeit angaben garnicht zu lassen.

sorry wenn es unklar war.

irgentwie komisch ja, die wortwahl email = brief, einem brief kann man also nix schicken, denn er wird ja selber verschickt. Einem EmailPostfach kann man allerdings Emails schicken :smile:

ja in der email soll die zeit drinne stehen.
nein die zeit soll nicht abgespeichert werden.
ja die email soll sofort versendet werden. nicht irgendwann oder das was in der textbox zeit steht sondern sofort.

Bsp.
email Checkbox zeit
[email protected] X 12:00
[email protected] X 19:00

Die email sieht dan so aus:

Kommen Sie bitte um $_POST[zeit] Uhr.
_________________________________________________

Die checkbox ist ausschlag geben dafür das man weis das diese losgeschickt werden soll. wenn sie nicht ausgewählt ist bekommt die person keine mail. Die mail geht sofort los. In der email steht nur die zeit. mehr macht sie nicht.

Mfg

Hallo Alpha,

Die checkbox ist ausschlag geben dafür das man weis das diese
losgeschickt werden soll. wenn sie nicht ausgewählt ist
bekommt die person keine mail. Die mail geht sofort los. In
der email steht nur die zeit. mehr macht sie nicht.

Wo ist dann das Problem? Das ist doch dann echt einfach.
Es gibt so viele fertige kostenlose Mailer-Scripte im Netz.
Dort den Content-Text durch eine Uhrzeitangabe zu ersetzen,
sollte doch das geringste Problem darstellen.

$empfaenger= '[email protected]';
$betreff = 'Dein Termin';
$nachricht = 'Bitte komm um '.$\_POST['Zeit'].' Uhr vorbei.';
$header = 'From: [email protected]' . "\r\n" .
 'Reply-To: [email protected]' . "\r\n" .
 'X-Mailer: PHP/' . phpversion();

if ( mail( $empfaenger, $betreff, $nachricht) )
 echo 'Message: '.$nachricht. '; versendet an '.$empfaenger.'. 
';

http://php.net/manual/de/function.mail.php

Sollen wir das jetzt für dich programmieren oder bekommst du das selbst hin? :wink:

Gruß
VoidZer0

ich weis es klingt frecht. aber bitte für mich programmieren. ich versuch mich seit 2 wochen dran. bitte

*schmunzel*

ich weis es klingt frecht. aber bitte für mich programmieren.
ich versuch mich seit 2 wochen dran. bitte

es klingt vielleicht nicht mehr frech(t), wenn Du Dich dafür revanchierst :wink:

ja das werde ich natürlich. kann nun einer helfen???^^

ja das werde ich natürlich. kann nun einer helfen???^^

Natürlich können wir das…
Allerdings braucht es dazu Dein zutun…

Mal gucken, ob ich alle Fragen gleich stellen kann, oder ob es weiterer Rückfragen bedarft:

  1. Hast Du schon ein html-Formular mit den ganzen Daten?
  2. Wenn ja: ist sichergestellt, dass auch alle Werte übergeben werden
  3. Wenn nein: Wie gut kennst Du Dich aus um das in Zukunft pflegen zu können?
  4. Ändern sich die „Datensätze“ in diesem Formular immer wieder?
  5. Ist sichergestellt, dass Dein Webserver auch php und mails versenden kann?
  6. Willst Du die (email/Betreff) Texte auch verändern?
  7. Soll immer allen eine Mail geschrieben werden oder nur jenen, die eine Zeiteintragung bekommen haben?
  8. Sollen ggf diejenigen ohne Inhalt eine andere email bekommen?
  9. Müssen die eingetragenen Werte auch noch gespeichert werden? (das wäre dann etwas aufwändiger)
  10. Willst Du eine die Email in Kopie bekommen?
  11. Willst Du eine Zusammenfassung per email/anzeige bekommen?

Wenn Du willst, dass ich es Dir mache, dann schick mir am besten mal das Formular, das Du bisher hast… Ich weiss nicht, ob ichs heute noch schaffen würde… kommt auch auf Deine Reaktionszeit an :wink:

Grüße
Munich

  1. Hast Du schon ein html-Formular mit den ganzen Daten?
  2. Wenn ja: ist sichergestellt, dass auch alle Werte übergeben werden
  3. Wenn nein: Wie gut kennst Du Dich aus um das in Zukunft pflegen zu können?
  4. Ändern sich die „Datensätze“ in diesem Formular immer wieder?
  5. Ist sichergestellt, dass Dein Webserver auch php und mails versenden kann?
  6. Willst Du die (email/Betreff) Texte auch verändern?
  7. Soll immer allen eine Mail geschrieben werden oder nur jenen, die eine Zeiteintragung bekommen haben?
  8. Sollen ggf diejenigen ohne Inhalt eine andere email bekommen?
  9. Müssen die eingetragenen Werte auch noch gespeichert werden? (das wäre dann etwas aufwändiger)
  10. Willst Du eine die Email in Kopie bekommen?
  11. Willst Du eine Zusammenfassung per email/anzeige bekommen?
    _______________________________________________________________________

1 = ja das was ich am anfang gepostet habe „eingang.php“
2 = ja und zwar in mail.php
3 = meinst du php? wenn ja dan mittelmäßig aber ich denke ich kann das pfelgen
4 = ja und zwar die die in der datenbank stehen
5 = Ja und Ja
6 = nein der betreff kann bei jeder email gleich sein und soll sich nicht ändern.
7 = nur die die eine Zeit eintragung bekommen
8 = nein sie sollen keinen eintrag bekommen
9 = ja aber ich denke das bekomme ich hin also brauchst du das nicht mit machen
10 = nein
11 = ich verstehe nicht ganz was du meinst aber nein keine zusammenfassung.

Vielen Dank im vorraus

hmm okay…
also als erstes mal müssen wir änderungen an Deinem Formular vornehmen…

verwendest Du in Deiner Datenbank id’s?
Dann wäre es nicht schlecht, wenn Du diese mit in cmail[] angibst und diese dann auch in
a_zeit, die dann zu a_zeit[$id] werden würden angibst… cmail[$id] wäre das dann… bzw in Deinem (für mich unschönen) Schreibstil vmtl
cmail[<?PHP echo $line[id];?>]

es wäre nicht schlecht, wenn Du mir die Ausgabe von der mail.php mal senden könntest, wenn Du dort ein
print_r($_POST); einfügst…

email kam übrigens an :wink:

Grüße
Munich (der sich nun erst mal was zum futtern jagt)

Array([cmail] => Array([0] => [email protected])[a_zeit]=>[tel]=>Array([0]=>0351/1234567[1]=&gt:wink:[button]=>Senden)

Array([cmail] => Array([0] =>
[email protected])[a_zeit]=>[tel]=>Array([0]=>0351/1234567[1]=&gt:wink:[button]=>Senden)

ich meinte jetzt eigentlich NACH der veränderung…
So wie Du es machst überschreibt jeder einzelne Eintrag der Zeit den vorhergehenden…

Immerhin ist tel ein Array - ich weiss zwar nicht, was mit der passieren soll, aber es ist ein Anfang ^^

das kommt raus wenn ich nur eine mail und eine tel anklicke. das mit tel kannst du ignorieren.

was für eine veränderung?

was für eine veränderung?

na die, die ich Dir oben genannt hab:

Zitat:
also als erstes mal müssen wir änderungen an Deinem Formular vornehmen…

verwendest Du in Deiner Datenbank id’s?
Dann wäre es nicht schlecht, wenn Du diese mit in cmail[] angibst und diese dann auch in
a_zeit, die dann zu a_zeit[$id] werden würden angibst… cmail[$id] wäre das dann… bzw in Deinem (für mich unschönen) Schreibstil vmtl
cmail[<?PHP echo $line[id];?>]
Zitat Ende.

Wenn Du es dann geschafft hast, dass cmail und a_zeit die gleiche id im array key haben, dann sollte das hier funktionieren:

<?php $absender = "Hugo Hirsch <[email protected]>";
$betreff = 'Dein Termin';
$nachricht = 'Bitte komm um %zeit% Uhr vorbei.';

$keys = array\_keys($\_POST['cmail']);
$key2 = array\_keys($\_POST['a\_zeit']);
$header = "From: $absender" . "\r\n" .
 "Reply-To: $absender" . "\r\n" .
 "X-Mailer: PHP/" . phpversion();
for($i=0;$iDie übergebenen Schlüssel sind nicht identisch. Ich sollte besser abbrechen...";
 else
 {
 $empfaenger = $\_POST['cmail'][$akt];
 $zeit = $\_POST['a\_zeit'][$akt];
 $nachricht = str\_replace("%zeit%",$zeit,$nachricht);
 if ($zeit == "") echo ""; //tu nix... 
 elseif ($zeit == "-") echo ""; //tu nix... ';
 else echo "Nachricht an $empfaenger konnte nicht versendet werden.
";
 }
 }
?\>

Grüße
Munich

auch wenn du mir sagst was du meinst
weis ich nicht wie ich es umsetze

meine codes die ich verwende stehen ganz oben.

ich bin in ner stunde weg und bin montag wieder erst da.

ich bin davon ausgegangen, dass Du gewisse Ahnung von php hast…
*seufz*

okay… nachdem Du mir nicht gesagt hast, ob Du id’s verwenden kannst bauen wir diesen - und zwar genau diesen Teil um:
Vorher:

<?PHP echo $line[email];?>

Nachher:

if (!isset($counter)) $counter=0;
else $counter++;
echo "
$line[‚email‘]

";
?>

das, was ich in der Antwort davor geschrieben habe gehört in die Datei mail.php

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Also wenn du einigermaßen php kannst, brauchst du dafür nicht mal’n Tag.
Aber wie ich sehe, hast du jemanden gefunden der sich opfert :wink:

Dann mal viel Erfolg euch beiden.

Gruß
VoidZer0