[PHP] Imap funktion

web2null

ehem. assactions
ID: 131418
L
20 April 2006
1.775
165
Huhu hab ne kleine frage unzwar möchte ich mich per imap funktion 3 mal gleichzeitig einlogen

wenn ich nun nur ein eintrag in home.txt drin stehen hab, also:

email:pass

geht alles, aber sobalt ich:

email1:pass
email2:pass

hab gehts nicht mehr, der muss da irgendwo ein leerzeichen oder sonst was haben, aber keine ahnung wo


PHP:
<?
$thisFileContent = file("home.php"); 
foreach ($thisFileContent as $zeile)
{

list ($email,$pass) = split('[:]',$zeile);

$mbox = @imap_open("{pop.gmx.net:110/pop3/notls}", "$email", "$pass");
@imap_close($mbox);

if ("$mbox" == "Resource id #3"){

echo "Eingelogt<br />\n";

} 


}  
?>
 
PHP:
if ("$mbox" == "Resource id #3"){
Diese Zeile is ja wohl Obermüll.

$mbox ist sicher keine String-Variable. Der Vergleich geht zufällig vielleicht einmal gut, aber auch nur, weil x-mal gecastet wird und das dann letztlich zu true evaluiert.

Prüfe doch bitte einfach nur
PHP:
if($mbox) {
, dann geht das auch.
 
PHP:
if ("$mbox" == "Resource id #3"){
Diese Zeile is ja wohl Obermüll.

$mbox ist sicher keine String-Variable. Der Vergleich geht zufällig vielleicht einmal gut, aber auch nur, weil x-mal gecastet wird und das dann letztlich zu true evaluiert.

Prüfe doch bitte einfach nur
PHP:
if($mbox) {
, dann geht das auch.


ups :oops:

danke hacker, habs gelöst mit

PHP:
$email = str_replace(' ','',$string); 
$pass = str_replace(' ','',$string);

//edit doch nicht :(
 
php.net/file sagt:
Hinweis: Jede Zeile in dem resultierenden Array enthält das Zeilenende, weshalb Sie trim() verwenden müssen, falls der Zeilenumbruch nicht vorhanden sein soll.
Hast Du das schonmal versucht?

Sind Deine zuletzt genannten Leerzeichenersetzungen Leerzeichen am Anfang / Ende der jeweiligen Zeile? Wenn ja, dann kannst Du die beiden Codezeilen (die mit den str_replace()) wieder rausschmeissen - das ist auch mit "trim()" abgedeckt.
 
PHP:
if ("$mbox" == "Resource id #3"){
Diese Zeile is ja wohl Obermüll.

$mbox ist sicher keine String-Variable. Der Vergleich geht zufällig vielleicht einmal gut, aber auch nur, weil x-mal gecastet wird und das dann letztlich zu true evaluiert.

Prüfe doch bitte einfach nur
PHP:
if($mbox) {
, dann geht das auch.
na, aber dein Code bedeutet etwas anderes als der von Assactions (auch wenn es funktionieren mag, weil die Funktion sonst false zurück gibt.

also ich finde da folgendes deutlich besser:
PHP:
if(is_resource($mbox)) {