Hallo, ist es irgednwie mit PHP möglich eine POP3 Authentifizierung herzustellen?
Ohne das ich einen anderen Mailclienten jetzt benutzen muss?
hoffe ihr könnt mirv weiterhelfen.
mfg
PHPPP
Hallo, ist es irgednwie mit PHP möglich eine POP3 Authentifizierung herzustellen?
Ohne das ich einen anderen Mailclienten jetzt benutzen muss?
hoffe ihr könnt mirv weiterhelfen.
mfg
PHPPP
Moin!
Es ist möglich, aber es ist auch ein sehr umfangreiches Thema, das man hier nicht eben mal schnell nebenbei erklären kann.
Ich muß in diesem Fall (für meine persoon) auf Fachliteratur verweisen, alternativ kannst du dir bei einem der vielen Anbieter ein PHP-Script besorgen und es deinen Wünschen netsprechend anpassen.
G.a.d.M.
Ronald
Welche Anbieter meinst du denn?
Keinen bestimmten, es gibt massenweise im Netz.
Such einfach mal nach "PHP-Scripte"
G.a.d.M.
Ronald
hey, finde irgendwie keine Skripte die mir weiterhelfen könnten.
Kennt jemand ein Skipt welches mir weiterhilft, oder kann mir vielleicht jemand die ganze Sache erklären? Auch wenn es sehr umfangreich ist?
Mir würden auch ansätze reichen.....
Damit funst das:
http://pear.php.net/get/Net_POP3-1.3.6.tgz
geht aber auf den meisten Webspaces nicht da dafür funktionen aktiviert sein müssen ( bzw standart include datein vorhanden sein müssen ) die nicht jeden provider zur verfügung stellen möchte.
ich versuche das gerade bei mienem rechner zu hause zum laufen zu bringen, da funktioniert das auch nicht. Weißt du welche include dateien vorhanden sein müssen?
Oder wie man das zum laufen bringen kann? -also auf nem privaten rechner?
Im Anhang ein beispiel. UNd mit dem XAMPP von http://www.apachefriends.org funst es.
Wenn nicht gib mal 1-2 Fehelrmeldungen.
Hey vielen Dank, so weit funktioniert das, aber es werden mir lauter daten auf dem Bildschirm angezeigt, welcher Teil der Datei, ist einzig und allein für die POP3 Authentifizierung zuständig?
Was ahst du genau vor??? Der läd ja den Gesamten Inhalt deies POP accounts runter.
Hier ein Anwendungsbeispiel!!!
<?php
?>
<html>
<body>
<?php
include('./POP3.php');
$user='*******@freenet.de';
$pass='*******';
$host='pop3.freenet.de';
$port="110";
// Create the class
$pop3 =& new Net_POP3();
//$pop3->setDebug();
// Fehlermeldungen
if(PEAR::isError( $ret= $pop3->connect($host , $port ) )){
echo "ERROR: " . $ret->getMessage() . "\n";
exit();
}
// Verschlüsselungen des Passwortes
//$pop3->login($user , $pass , 'APOP');
//$pop3->login($user , $pass , 'CRAM-MD5');
if(PEAR::isError( $ret= $pop3->login($user , $pass,'USER' ) )){
echo "ERROR: " . $ret->getMessage() . "\n";
exit();
}
/*
if(PEAR::isError( $ret= $pop3->login($user , $pass ) )){
echo "ERROR: " . $ret->getMessage() . "\n";
exit();
}
*/
/*
if(PEAR::isError( $ret= $pop3->login($user , $pass , 'CRAM-MD5') )){
echo "ERROR: " . $ret->getMessage() . "\n";
exit();
}
*/
if ($_REQUEST['ID']=="")
{
?>
<table border="1">
<tr>
<td>
<a>Von</a>
</td>
<td>
<a>An</a>
</td>
<td>
<a>Titel</a>
</td>
<td>
<a>Datum</a>
</td>
<?PHP
for ( $i=1 ; $i<=$pop3->numMsg() ; $i++ )
{
$x=$pop3->getParsedHeaders($i);
echo "<tr>\n<td>\n<a href=\"".$_SERVER['PHP_SELF']."?ID=".$i."\">\n".$x['From']."\n</a>\n</td>\n";
echo "<td>\n<a href=\"".$_SERVER['PHP_SELF']."?ID=".$i."\">\n".$x['To']."\n</a>\n</td>\n";
echo "<td>\n<a href=\"".$_SERVER['PHP_SELF']."?ID=".$i."\">\n".$x['Subject']."\n</a>\n</td>\n";
echo "<td>\n<a href=\"".$_SERVER['PHP_SELF']."?ID=".$i."\">\n".$x['Date']."\n</a>\n</td>\n</tr>\n";
}
echo "</table>\n";
} else {
echo "<pre>" . htmlspecialchars($pop3->getBody($_REQUEST['ID'])) . "</pre>\n";
}
// $a=$pop3->getListing(); // Keine ahnung
// echo "\n";
// print_r($a);
// exit();
// Head von Nachricht 1 in mail format
// echo "<h2>getRawHeaders()</h2>\n";
// echo "<pre>" . htmlspecialchars($pop3->getRawHeaders(1)) . "</pre>\n";
// Head von Nachricht 1 in eine Array gepackt
// echo "<h2>getParsedHeaders()</h2> <pre>\n";
// print_r($pop3->getParsedHeaders(1));
// echo "</pre>\n";
// Get body of message 1
// echo "<h2>getBody()</h2>\n";
// echo "<pre>" . htmlspecialchars($pop3->getBody(1)) . "</pre>\n";
// Anzhal der Nachrichten im account
// echo "<h2>getNumMsg</h2>\n";
// echo "<pre>" . $pop3->numMsg() . "</pre>\n";
// Komplette nachricht
// echo "<h2>getMsg()</h2>\n";
// echo "<pre>" . htmlspecialchars($pop3->getMsg(1)) . "</pre>\n";
// Get listing details of the maildrop Keine Ahnung
// echo "<h2>getListing()</h2>\n";
// echo "<pre>\n";
// print_r($pop3->getListing());
// echo "</pre>\n";
// Größe aller Mails
// echo "<h2>getSize()</h2>\n";
// echo "<pre>" . $pop3->getSize() . "</pre>\n";
// Disconnect
$pop3->disconnect();
?>
Alles anzeigen
Hey mein eigentliches Problem ist, dass ich automatisch eine mail schreiben will. IMmer wenn sich jemand bei mir anmeldet. Mein Server brauch diese
Wenn ich jetzt eine Mail schreiben will kommt trotzdem immer die Fehlermeldung:
Warning: mail() [function.mail]: SMTP server response: 501 Sorry, keine Authentifizierung. POP3 muss vorher benutzt werden. Fehler: 'Hä$@°ä$@' / Sorry, authentification failed. POP3 must be used prior to sending mail. Error: 'ok' in C:\server\xampp\htdocs\mail\Anmeldung.php on line 334
und so sieht mein Coder zur Zeit aus:
include('./POP3.php');
$user='****@web.de;
$pass='*******';
$host='pop3....';
$port="110";
// Create the class
$pop3 =& new Net_POP3();
//$pop3->setDebug();
// Connect to localhost on usual port
// If not given, defaults are localhost:110
if(PEAR::isError( $ret= $pop3->connect($host , $port ) )){
echo "ERROR: " . $ret->getMessage() . "\n";
exit();
}
// Login using username/password. APOP will
// be tried first if supported, then basic.
//$pop3->login($user , $pass , 'APOP');
//$pop3->login($user , $pass , 'CRAM-MD5');
if(PEAR::isError( $ret= $pop3->login($user , $pass,'USER' ) )){
echo "ERROR: " . $ret->getMessage() . "\n";
exit();
}
/*
if(PEAR::isError( $ret= $pop3->login($user , $pass ) )){
echo "ERROR: " . $ret->getMessage() . "\n";
exit();
}
*/
/*
if(PEAR::isError( $ret= $pop3->login($user , $pass , 'CRAM-MD5') )){
echo "ERROR: " . $ret->getMessage() . "\n";
exit();
}
*/
$a=$pop3->getListing();
$empfaenger = $Mail;
$sender = "ich";
$sendermail = "test@net.de
$betreff = "Anmeldung bestätigen";
$text ="Vielen Dank für die Anmeldung,
um die Anmeldung http://mail/Anmeldung2.php?name=$Name";
mail($empfaenger, $betreff, $text,
"From: $sender <$sendermail>");
// Disconnect
$pop3->disconnect();
Alles anzeigen
Könnt ihr mir vielelleicht sagen wie ich das Problem lösen kann?
Moin!
Wenn du die automatische Mail über das pop3-Konto laufen lassen willst, dann klappt das nicht, da die meisten pop3-Konten erste Mail zum versenden annehmen, wenn man den Posteingang angesehen hat. Aber genau das sollen die User ja gerade nicht.
Zum Versenden einer Mail brauchst du das alles auch gar nicht. Du kannst Mails jederzeit aus PHP heraus versenden ohne auch nur irgendwie mit deinem Emailkonto vernbunden zu sein - das sind zwei ganz verschiedene Schuhe.
Versuche es einfach einmal so:
<?php
$empfaenger = $Mail;
$sender = "ich";
$sendermail = "test@net.de
$betreff = "Anmeldung bestätigen";
$text ="Vielen Dank für die Anmeldung,
um die Anmeldung http://mail/Anmeldung2.php?name=$Name";
mail($empfaenger, $betreff, $text, "From: $sender <$sendermail>");
?>
Das sollte schon klappen.
Man kann dann allerdings die eingehende Mail noch komfortabler gestalten, indem man die Mail für Text oder HTML formatiert. Auch sollte man einen vernünftigen Dateiukopf (header) hinzufügen.
G.a.d.M.
Ronald
Zitat von GreenRoverWas ahst du genau vor??? Der läd ja den Gesamten Inhalt deies POP accounts runter.
Hier ein Anwendungsbeispiel!!!
PHP Alles anzeigen<?php ?> <html> <body> <?php include('./POP3.php'); $user='*******@freenet.de'; $pass='*******'; $host='pop3.freenet.de'; $port="110"; // Create the class $pop3 =& new Net_POP3(); //$pop3->setDebug(); // Fehlermeldungen if(PEAR::isError( $ret= $pop3->connect($host , $port ) )){ echo "ERROR: " . $ret->getMessage() . "\n"; exit(); } // Verschlüsselungen des Passwortes //$pop3->login($user , $pass , 'APOP'); //$pop3->login($user , $pass , 'CRAM-MD5'); if(PEAR::isError( $ret= $pop3->login($user , $pass,'USER' ) )){ echo "ERROR: " . $ret->getMessage() . "\n"; exit(); } /* if(PEAR::isError( $ret= $pop3->login($user , $pass ) )){ echo "ERROR: " . $ret->getMessage() . "\n"; exit(); } */ /* if(PEAR::isError( $ret= $pop3->login($user , $pass , 'CRAM-MD5') )){ echo "ERROR: " . $ret->getMessage() . "\n"; exit(); } */ if ($_REQUEST['ID']=="") { ?> <table border="1"> <tr> <td> <a>Von</a> </td> <td> <a>An</a> </td> <td> <a>Titel</a> </td> <td> <a>Datum</a> </td> <?PHP for ( $i=1 ; $i<=$pop3->numMsg() ; $i++ ) { $x=$pop3->getParsedHeaders($i); echo "<tr>\n<td>\n<a href=\"".$_SERVER['PHP_SELF']."?ID=".$i."\">\n".$x['From']."\n</a>\n</td>\n"; echo "<td>\n<a href=\"".$_SERVER['PHP_SELF']."?ID=".$i."\">\n".$x['To']."\n</a>\n</td>\n"; echo "<td>\n<a href=\"".$_SERVER['PHP_SELF']."?ID=".$i."\">\n".$x['Subject']."\n</a>\n</td>\n"; echo "<td>\n<a href=\"".$_SERVER['PHP_SELF']."?ID=".$i."\">\n".$x['Date']."\n</a>\n</td>\n</tr>\n"; } echo "</table>\n"; } else { echo "<pre>" . htmlspecialchars($pop3->getBody($_REQUEST['ID'])) . "</pre>\n"; } // $a=$pop3->getListing(); // Keine ahnung // echo "\n"; // print_r($a); // exit(); // Head von Nachricht 1 in mail format // echo "<h2>getRawHeaders()</h2>\n"; // echo "<pre>" . htmlspecialchars($pop3->getRawHeaders(1)) . "</pre>\n"; // Head von Nachricht 1 in eine Array gepackt // echo "<h2>getParsedHeaders()</h2> <pre>\n"; // print_r($pop3->getParsedHeaders(1)); // echo "</pre>\n"; // Get body of message 1 // echo "<h2>getBody()</h2>\n"; // echo "<pre>" . htmlspecialchars($pop3->getBody(1)) . "</pre>\n"; // Anzhal der Nachrichten im account // echo "<h2>getNumMsg</h2>\n"; // echo "<pre>" . $pop3->numMsg() . "</pre>\n"; // Komplette nachricht // echo "<h2>getMsg()</h2>\n"; // echo "<pre>" . htmlspecialchars($pop3->getMsg(1)) . "</pre>\n"; // Get listing details of the maildrop Keine Ahnung // echo "<h2>getListing()</h2>\n"; // echo "<pre>\n"; // print_r($pop3->getListing()); // echo "</pre>\n"; // Größe aller Mails // echo "<h2>getSize()</h2>\n"; // echo "<pre>" . $pop3->getSize() . "</pre>\n"; // Disconnect $pop3->disconnect(); ?>
und was soll das comment jetzt ???