2x imap

hiho!

habe gerade 2 probleme mit meinem email-script.
1.:
wenn ich die email normal auslese, dann sind die gewohnt problematischen umlaute in der form =AD (z.b.) also im hexcode. es gibt zwar eine funktion rawurldecode() die solche zeichen wieder zurück setzt, doch dass funktioniert nur für %AD. in meiner alten vorstellung hab ich halt das = mit % ersetzt; doch jetzt kam gerade die ernüchterung: ich mach ja einfach eregi("=","%",$string) … was is mit = zeichen, die gewollt sind!?
hat mir jemand ne lösung, wie ich das =AD zu einem umlaut bekomme!?

2.:
ein recht merkwürdiges problem!
wie gesagt ist das in einem script für email-aufgaben. ich habe das script von www.phpclasses.org und es leicht verändert. und da is der haken!

// das ist die klasse
class clsMessage 
{ 
var $date; 
var $msgID;
var $from;
var $size;
var $to;
var $cc;
var $cco;
var $hasAttachs = false;
var $subject;
var $body;
var $attachments = array();
}
// das die stark vereinfachte funktion
function getMessage($msgNo)
{
$theMessage = new clsMessage;
$theMessage-\>currMsg=$msgNo; // das hab ich irgendwann mal reingemacht...
}

als ich gerade das nochmal angeguckt habe, dachte ich mir:
was macht des eigentlich? die klasse clsMessage hat doch gar keine variable currMsg. hab es auskommentiert. auf den ersten blick ist nichts passiert. doch dann hab ich festgestellt, dass die angesprochenen emails nicht mehr gelöscht werden können! nun blick ich aber nicht, wie das funktionieren soll…
diese funktion steht allerdings in einer 2. klasse, die tatsächlich eine currMsg variable hat. doch $theMessage is ja eine instanz der anderen klasse.
irgendwie steh ich hier aufm schlauch… hätte mir mal geeignete notizen machen sollen :confused:

kann mir wer aus diesem schlamassel helfen!?

mfg
Geisterkarle

1.:
wenn ich die email normal auslese, dann sind die gewohnt
problematischen umlaute in der form =AD (z.b.) also im
hexcode. es gibt zwar eine funktion rawurldecode() die solche
zeichen wieder zurück setzt, doch dass funktioniert nur für
%AD. in meiner alten vorstellung hab ich halt das = mit %
ersetzt; doch jetzt kam gerade die ernüchterung: ich mach ja
einfach eregi("=","%",$string) … was is mit = zeichen, die
gewollt sind!?
hat mir jemand ne lösung, wie ich das =AD zu einem umlaut
bekomme!?

Die emails werden wohl mit quoted printable codiert sein. Kann sein, dass es bereits eine php Funktion dafür gibt. Sonst ist es ja wohl auch nicht so schwer das wieder umzuwandeln.

hiho!

habe gerade 2 probleme mit meinem email-script.
1.:
hat mir jemand ne lösung, wie ich das =AD zu einem umlaut
bekomme!?

http://de3.php.net/quoted_printable_decode

2.:
ein recht merkwürdiges problem!
wie gesagt ist das in einem script für email-aufgaben. ich
habe das script von www.phpclasses.org und es leicht
verändert. und da is der haken!

// das ist die klasse
class clsMessage

fehlt da evtl. ein extends mit dem anderen Klassenamen, so das diese Klasse von der anderen angesprochenen Klasse erbt ?

als ich gerade das nochmal angeguckt habe, dachte ich mir:
was macht des eigentlich? die klasse clsMessage hat doch gar
keine variable currMsg. hab es auskommentiert. auf den ersten
blick ist nichts passiert. doch dann hab ich festgestellt,
dass die angesprochenen emails nicht mehr gelöscht werden
können! nun blick ich aber nicht, wie das funktionieren
soll…
diese funktion steht allerdings in einer 2. klasse, die
tatsächlich eine currMsg variable hat. doch $theMessage is ja
eine instanz der anderen klasse.

Naja, da wird wohl deine Klasse von der anderen erben, anders sollte so etwas (in PHP 4) nicht gehen.

Alexander

hiho!

http://de3.php.net/quoted_printable_decode

hat das problem gelöst! thx!

2.:
ein recht merkwürdiges problem!
wie gesagt ist das in einem script für email-aufgaben. ich
habe das script von www.phpclasses.org und es leicht
verändert. und da is der haken!

// das ist die klasse
class clsMessage

fehlt da evtl. ein extends mit dem anderen Klassenamen, so das
diese Klasse von der anderen angesprochenen Klasse erbt ?

Naja, da wird wohl deine Klasse von der anderen erben, anders
sollte so etwas (in PHP 4) nicht gehen.

hm…
ich hab mich jetzt noch nicht so sehr mit klassen in php beschäftigt, aber das system ist mir aus java bekannt. da die klasse ja von einer offiziellen seite is, glaube ich daher nicht, dass da ein „extend“ fehlt. die frage ist nur: wie interpretiert das php!? ob die das trotzdem machn?
aber extend reicht mir erstmal für meine doku :wink:

Alexander

mfg
Geisterkarle