|
 |
|
| Autor |
Nachricht |
matteo Neuer [User]

Anmeldung: 17.02.05 Beiträge: 2
|
Verfasst am: 17.02.2005, 14:33 Titel: automatischer email-Empfang mit php |
|
|
Hallo allerseits,
ich (PHP-Anfänger) habe eine Frage zum Thema PHP und email...
Ich programmiere gerade an einer MySQL-Datenbank, die von verschiedenen Benutzern per eMail gesteuert werden soll.
D.h.: der Benutzer schreibt ne eMail mit Befehlen/Anweisungen/Anfragen an eine eMail-Adressee, ein PHP-Script liest diese Befehle aus der eMail aus, führt entsprechende Datenbankoperationen durch und schickt ne Antwort-eMail an den Benutzer.
Mein Problem dabei ist gleich der erste Schritt: Wie krieg ich es hin, das mein PHP-Script automatisch anspringt, sobald eine eMail in der Mailbox ankommt?
Mit anderen Worten: gibt es einen Weg, dass das Script das darauf "wartet" eMails zu empfangen?
(Ich weiss, das es irgendwie gehen muss, denn ich habe es schon im Web erlebt, dass man z.B. eine eMail an eine bestimmte Adresse schickt und je nach dem genannten Betreff kriegt man dann (sofort) verschiedene Antworten bzw. Antworten mit verschiedenen Dateien im Anhang...
Ich habe schon auf diversen Seiten zum Thema "Autoresponder" rumgesucht, aber das sind scheinbar immer Scripts, die aus einem Webformular heraus funktionieren...)
Lässt sich das mit PHP realisieren - oder funktioniert sowas vielleicht ganz anders?
Danke im Voraus,
Matteo
P.S.: Mit dem restlichen Script habe ich keine Probleme (eMail auslesen, die Befehle in der eMail verarbeiten, MySQL-Operation ausführen, Antwort abschicken)
|
|
| Nach oben |
|
 |
Christoffer Stammuser [User]


Anmeldung: 11.02.05 Beiträge: 42 Wohnort: Frankreich ...
|
Verfasst am: 17.02.2005, 14:59 Titel: ..................................... |
|
|
wir empfehlen:
<?php
$MAIL_HOST="mail.DEINMAILHOST.de";
$USER_NAME="pop3.DEINUSERNAME";
$USER_PASS="DEIN-POP3-PASSWORT";
// open POP connection
$inbox = imap_open ("{". $MAIL_HOST . "/pop3:110}", $USER_NAME, $USER_PASS) or die("Can't connect POP3-Server!");
// get total messages
$total = imap_num_msg($inbox)+1;
for($i=1; $i<$total; $i++) {
// get message headers and structure
$headers = imap_header($inbox, $i);
$structure = imap_fetchstructure($inbox, $i);
echo "Von: ".htmlspecialchars($headers->fromaddress);
echo "<br>\n";
echo "An: ".htmlspecialchars($headers->toaddress);
echo "<br>\n";
echo "Datum: ".$headers->Date;
echo "<br>\n";
if ($headers->Subject) {
echo "Betreff: ".$headers->Subject;
}else{
echo "Betreff: "."Nicht Vorhanden";
}
echo "<br>\n";
echo nl2br(htmlspecialchars(stripslashes(trim(imap_body($inbox, $i)))));
echo "<br>\n";
echo "<HR>\n";
}
// clean up
imap_close($inbox);
?>
Dieses script holt sich die Emails aus der Inbox deines Emailaccounts
Gruß
Thomas _________________ tja - so ist das leben
|
|
| Nach oben |
|
 |
matteo Neuer [User]

Anmeldung: 17.02.05 Beiträge: 2
|
Verfasst am: 17.02.2005, 15:30 Titel: Re |
|
|
Hallo Thomas,
vielen Dank, aber...
... das löst mein Problem nicht.
Dein Script zeigt, wie man eine eMail aus der Mailbox holt.
Nur: dieses Script muss durch irgendwas gestartet werden! (z.B. durch den Besuch der Webseite, auf der es liegt, oder durch ein anderes Script)
Ich brauche aber einen Weg, wie ich Dein Script sozusagen ständig am laufen halten kann...
Ich kann doch nicht einfach diese Routine in eine do-loop Schleife packen, oder doch?
Grüße,
Matteo
|
|
| Nach oben |
|
 |
Andreas Schroth Bekannter [Admin]


Anmeldung: 08.04.04 Beiträge: 1667 Wohnort: Lauf a. d. ...
|
Verfasst am: 17.02.2005, 16:24 Titel: |
|
|
@matteo:
Für dein Problem gibt es sog. CronJobs. Damit wird es möglich ein Script zu einem bestimmten Zeitpunkt zu starten, zum Beispiel also stündlich. Es sollte damit auch möglich sein dein Script z. B. alle 5 Minuten oder so automatisch aufzurufen. Frage doch Mal bei deinem Hoster nach, bzw. falls du einen Rootserver hast, kannst du dich Mal über die Einrichtung informieren. _________________
Computer-tipps.net / Forumprofi.de
Hier sind die Foren-Regeln zu finden.
|
|
| Nach oben |
|
 |
HKff4 Neuer [User]

Anmeldung: 04.03.05 Beiträge: 6
|
Verfasst am: 06.03.2005, 10:45 Titel: Cronjobs |
|
|
Hi,
guckst Du http://www.cronjob.de/, da kannst Du kostenloas Cronjobs anlegen. Ich habe folgendes festgestellt: Da Script, dass man rufen lässt, muss HTML sein, sonst geht es nicht. Beispiel:
<?php
DO SOME CODE;
?>
funktioniert nicht richtig.
Wenn man es so macht:
<hmtl>
<head></head>
<body>
<?php DO SOME CODE; ?>
</body></html>
funzt es einwandfrei.
Kostenlos, da hat man keinen Anspruch auf Leistung, gebührenpflichtig geht es z.b. dort: http://www.cron-job.de/
Gruß
HKff4 _________________
one-way.de - New Service
|
|
| Nach oben |
|
 |
|
|
 |
|
Alle Zeiten sind GMT + 1 Stunde
|
| Seite 1 von 1 |
|  |