E-Mails von Lima auslesen in php?
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
ausgabe
ausgeben
betreff
check
code
datum
eintrag
email
erfassen
form
funktion
host
info
message
nachricht
postfach
support
test
text
url
-
Hallo Liebe Community, ich habe im Internet Folgendes Script gefunden um E-Mails auszulesen, habe mir auch eine Test mail zugeschickt doch leider bekomme ich nichts angezeigt, auch keine Errors, was muss ich ändern damit es klappt?
<?php $imap = imap_open ("{mail.lima-city.de/pop3:995}INBOX", "support@mylonky.eu", "PASSWORT"); $check = imap_mailboxmsginfo ($imap); $newmails = $check->Recent; for($count = 1; $count <= $newmails; $count++) { $info = imap_fetch_overview($imap, $count); foreach ($info as $msg) { } $message = imap_body($imap, $count); $text = $msg->to; $needle = strpos($text, '@'); $newnumber = substr($text, 0,$needle); echo $message; echo $newnumber; echo $newmails; } imap_close ($imap); ?>
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
ist Aktiviert es kommt nichts kein Verbindungsfehler kein Garnichts einfach nur weiß
Und ja die Mail ist angekommen
Beitrag zuletzt geändert: 28.6.2016 19:30:44 von mylonky -
muellerlukas schrieb:
Joa, dann lass dir doch mal $check entsprechend via print_r oder var_dump ausgeben.
dann bekomme ich nur
Parse error: syntax error, unexpected 'var_dump' (T_STRING) in /home/webpages/lima-city/mylonky/ucp.mylonky.eu/ucp/tests/mail.php on line 134
<?php $imap = imap_open ("{mail.lima-city.de/pop3:995}INBOX", "support@mylonky.eu", "PASS"); $check = imap_mailboxmsginfo ($imap); $newmails = $check->Recent; for($count = 1; $count <= $newmails; $count++) { $info = imap_fetch_overview($imap, $count); foreach ($info as $msg) { } $message = imap_body($imap, $count); $text = $msg->to; $needle = strpos($text, '@'); $newnumber = substr($text, 0,$needle); echo $message; echo $newnumber; echo $newmails; } imap_close ($imap); ?> <?php Void var_dump ( mixed $expression [, mixed $... ] ) ?>
Beitrag zuletzt geändert: 28.6.2016 19:54:31 von mylonky -
Weil du natürlich auch die Funktion richtig aufrufen musst und nicht einfach nur die Funktionsdefinition blind aus der Doku kopieren sollst...
-
muellerlukas schrieb:
Weil du natürlich auch die Funktion richtig aufrufen musst und nicht einfach nur die Funktionsdefinition blind aus der Doku kopieren sollst...
Ja ok, ist Hilfreich xD
habe es geändert in
<pre>
<?php
print_r($check, true); //$results enthaelt nun die Ausgabe von print_r
?>
</pre>
scheint aber auch falsch zu sein weil mir wird wieder Nichts angezeigt :/ -
Aus der Doku
[...]
Wenn Sie die Ausgabe von print_r() zum Weiterverarbeiten abfangen möchten, benutzen Sie dazu den Parameter return. Wenn dieser auf TRUE gesetzt ist, gibt print_r() die Information zurück, statt sie auszugeben.
[...]
D.h.
$bar = 'mein String'; $foo = print_r($bar, true); // maschinenlesbare Form von $bar steht in $foo print $foo; // $foo ausgeben // oder halt direkt print_r($bar); // maschinenlesbare Form von $bar an den Ausgabepuffer senden
-
Hat sich erledigt, Funktioniert jetzt ^^
Danke an alle :D
Falls jemand ein ähnliches problem oder ein Script dafür sucht
!!!Damit könnt ihr Mails nur Lesen aber nicht antworten!!!
Falls ihr die Mails nach dem Lesen gelöscht haben wollt entfernt die // unten beim Löscheintrag
<?php function imap_locale_sort($stream,$criteria,$reverse,$locale,$options) { if ($criteria!=SORTSUBJECT) return (imap_sort($stream,$criteria,$reverse,$options)); $unsorted = array(); $sortresult = array(); $MC=imap_check($stream); $MN=$MC->Nmsgs; $overview = imap_fetch_overview($stream,"1:$MN",0); $k=0; while( list($key,$val) = each($overview)) { $unsorted[$k]["uid"]=$val->uid; $unsorted[$k]["subject"]=imap_utf8($val->subject); $k++; } usort ($unsorted, create_function('$a,$b','setlocale(LC_ALL,$locale);return strcoll($a["subject"],$b["subject"]);')); for ($m=0;$m<count($unsorted);$m++) array_push($sortresult,$unsorted[$m]["uid"]); if ($reverse) $sortresult = array_reverse($sortresult); return $sortresult; } // POP3-Server $host="localhost"; //z.b. mail.lima-city.de $port="110"; // User-Daten $user="user"; //bei Lima wäre das name@domain.tld $passwort="pass"; //euer passwort halt // Verbinden zur Mailbox $mailbox=imap_open("{".$host."/pop3:110}INBOX",$user,$passwort); // Überprüfen ob Verbindung erfolgreich, // dann weiter... if ($mailbox) { // Posteingang überprüfen $check=imap_check($mailbox); // Anzahl vorhandener Emails im Postfach $count_msg=$check->Nmsgs; // Anzahl neuer Emails im Postfach $count_new_msg=$check->Recent; // Emails auslesen for ($i=1; $i<=imap_num_msg($mailbox); $i++) { $sorted1 = imap_locale_sort($mailbox,SORTSUBJECT,0,'fa_IR',0); // Email Sortiere $sorted = imap_sort($mailbox,SORTDATE,$i); // Header erfassen $mail_header=imap_header($mailbox, $i); // Datum erfassen $mail_date=$mail_header->Date; // Mail-ID erfassen $mail_id=$mail_header->message_id; // Empfänger erfassen $mail_to=$mail_header->toaddress; // Absendername erfassen $mail_from_name=$mail_header->from [0]->personal; // Absender-eMail-Adresse erfassen $mail_from_address=$mail_header->from [0]->mailbox."@".$mail_header->from [0]->host; // Kopieempfänger erfassen $mail_copy_to=$mail_header->cc[0] ->mailbox."@".$mail_header->cc[0] ->host; // Antwortempfänger erfassen $mail_answer_to=$mail_header->reply_to; // Betreff erfassen $mail_subject=$mail_header->subject; // Nachricht erfassen $mail_body = imap_body($mailbox,$i); // Daten in db speichern include ("config.inc.php"); $eintrag = "INSERT INTO support (vorname, mail, betreff, anfrage, datum) VALUES ('$mail_from_name', '$mail_from_address', '$mail_subject', '$mail_body', '$mail_date')"; $eintragen = mysql_query($eintrag); echo "e-Mail Nr.".$i."<br>"; // Ausgabe in HTML echo '<b>Versendet am:</b> '; echo $mail_date."<br>"; echo '<b>Eindeutige eMail-ID: </b>'; echo $mail_id."<br>"; echo '<b>Empfänger: </b>'; echo $mail_to."<br>"; echo '<b>Name des Absenders: </b>'; echo $mail_from_name."<br>"; echo '<b>E-Mail des Absenders: </b>'; echo $mail_from_address."<br>"; // echo $mail_from_address."<br>"; echo '<b>Betreff: </b>'; echo $mail_subject."<br><br>"; echo '<b>Nachricht: </b>'; echo $mail_body."<br><br>"; echo "<b>ENDE<br><br></b>"; // E-Mail nach lesen löschen // imap_delete($mailbox, $i); // imap_expunge($mailbox); } imap_close($mailbox); } ?>
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage