php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Bewertung: Bewertung: 1 Stimmen, 5,00 durchschnittlich.
  #76 (permalink)  
Alt 05-10-2005, 05:30
chrisphp
 Junior Member
Links : Onlinestatus : chrisphp ist offline
Registriert seit: Mar 2005
Beiträge: 142
chrisphp ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hallo,

danke erstmal TBT für die 2 zur Verfügung gestellten Klassen von dir.

Ich hab soweit alles ganz gut hinbekommen.
Jetzt noch ein paar Kleinigkeiten:

1. Bei der Ausgabe von print_r( $decoded ); zeigt er mir die ganze Zeit einen leeren Return-Path an.

2. Ich habe desöfteren in ne Test-Mail ein JPEG Bild gepackt. Woran erkenne ich das der Decoder das JPEG Bild bearbeitet hat? Bzw. wie kann ich die wirren Zeichen wieder zu einem optisch bunten Bild zusammenstückeln lassen?

3. Im Body fehlen mir immer die ersten paar Zeilen

Hier der Code zum Decodieren:

PHP-Code:
// decoder laden
$decoder = & new MailDecoder();
$decoded = array();
// jede mail einzeln decodieren
foreach( $mails as $mail ) {
    
$decoded[] = $decoder->decode$mail"\r\n" );
}
unset( 
$decoder );
// kontrollausgabe
echo "<pre>";
print_r $decoded ); 
Die Decoder-Klasse ist die aktuellste (die dritte, die nicht im PHP-Tag veröffentl. wurde). Habe sonst auch schon alle Themen im Forum durchgelesen und alle möglichen, veröffentlichten Codes probiert, doch die Probleme konnte ich bisher noch nicht lösen.

Wenn ich weiteren Code posten soll, bitte sagen
Würde mich über Hilfe freuen
Mit Zitat antworten
  #77 (permalink)  
Alt 05-10-2005, 06:27
TriphunEM
 Registrierter Benutzer
Links : Onlinestatus : TriphunEM ist offline
Registriert seit: Jun 2003
Beiträge: 549
TriphunEM ist zur Zeit noch ein unbeschriebenes Blatt
Standard

die decoder-klasse ist nicht so viel wert. TBT hat hier im thread das handtuch geworfen.

Um das zu testen bitte ich dich, 3 emails zu schicken! Eine reine HTML-Mail, einer Text und Html, und eine rein Text-Mail ohne Anhänge und sowas. Bei der 3 Dritten bleibt der Inhalt im Body leer.

Also nicht zu gebrauchen. Es gibt ein gute Decoder-Klasse auf phpclasses.org die aber mit pear zusammen arbeitet. Die funzt aber einwandfrei.
Mit Zitat antworten
  #78 (permalink)  
Alt 05-10-2005, 06:30
chrisphp
 Junior Member
Links : Onlinestatus : chrisphp ist offline
Registriert seit: Mar 2005
Beiträge: 142
chrisphp ist zur Zeit noch ein unbeschriebenes Blatt
Standard

schade... ganze nacht umsonst gearbeitet ;-)
mal sehen, vielleicht wird`s ja nochmal was
Mit Zitat antworten
  #79 (permalink)  
Alt 05-10-2005, 09:20
TBT
  Moderator
Links : Onlinestatus : TBT ist offline
Registriert seit: Sep 2002
Ort: Berlin
Beiträge: 2.787
TBT befindet sich auf einem aufstrebenden Ast
TBT eine Nachricht über ICQ schicken TBT eine Nachricht über AIM schicken TBT eine Nachricht über Yahoo! schicken
Standard

Zitat:
Original geschrieben von TriphunEM
die decoder-klasse ist nicht so viel wert. TBT hat hier im thread das handtuch geworfen.
Wenn du Sie nicht benutzen kannst, ist das leider dein Problem.
Ich kenne inzwischen genug Leute, die Sie benutzen und wo Sie funktioniert.
Ich selber habe einen Webmailer auf dieser Basis.

__________________
TBT

Die zwei wichtigsten Regeln für eine berufliche Karriere:
1. Verrate niemals alles was du weißt!


PHP 2 AllPatrizier II Browsergame
Mit Zitat antworten
  #80 (permalink)  
Alt 05-10-2005, 17:56
chrisphp
 Junior Member
Links : Onlinestatus : chrisphp ist offline
Registriert seit: Mar 2005
Beiträge: 142
chrisphp ist zur Zeit noch ein unbeschriebenes Blatt
Standard

@ TBT

Könntest du mir bei dem Problem was ich habe (siehe letzten Post von mir) helfen?
Mit Zitat antworten
  #81 (permalink)  
Alt 05-10-2005, 18:13
TBT
  Moderator
Links : Onlinestatus : TBT ist offline
Registriert seit: Sep 2002
Ort: Berlin
Beiträge: 2.787
TBT befindet sich auf einem aufstrebenden Ast
TBT eine Nachricht über ICQ schicken TBT eine Nachricht über AIM schicken TBT eine Nachricht über Yahoo! schicken
Standard

Zitat:
1. Bei der Ausgabe von print_r( $decoded ); zeigt er mir die ganze Zeit einen leeren Return-Path an.
ist denn einer in der originalen Mail drin, wie sieht der aus?
Zitat:
2. Ich habe desöfteren in ne Test-Mail ein JPEG Bild gepackt. Woran erkenne ich das der Decoder das JPEG Bild bearbeitet hat? Bzw. wie kann ich die wirren Zeichen wieder zu einem optisch bunten Bild zusammenstückeln lassen?
na logisch zeigt er nur Müll an, das sind Binärdaten. Sende mal einen JPEG Header, und dann diesen "Müll" mit echo hinterher, dann siehst du dein Bild. Oder schreibe diesen "Müll" binär in eine Datei.jpg
Zitat:
3. Im Body fehlen mir immer die ersten paar Zeilen
Beispiel?
Zitat:
Hier der Code zum Decodieren:

PHP-Code:
// decoder laden
$decoder = & new MailDecoder();
$decoded = array();
// jede mail einzeln decodieren
foreach( $mails as $mail ) {
    
$decoded[] = $decoder->decode$mail"\r\n" );
}
unset( 
$decoder );
// kontrollausgabe
echo "<pre>";
print_r $decoded ); 
und dein System benutzt wirklich \r\n als Zeilenumbruch, und nicht etwa nur \r oder nur \n
__________________
TBT

Die zwei wichtigsten Regeln für eine berufliche Karriere:
1. Verrate niemals alles was du weißt!


PHP 2 AllPatrizier II Browsergame
Mit Zitat antworten
  #82 (permalink)  
Alt 05-10-2005, 18:21
TBT
  Moderator
Links : Onlinestatus : TBT ist offline
Registriert seit: Sep 2002
Ort: Berlin
Beiträge: 2.787
TBT befindet sich auf einem aufstrebenden Ast
TBT eine Nachricht über ICQ schicken TBT eine Nachricht über AIM schicken TBT eine Nachricht über Yahoo! schicken
Standard

Zitat:
Original geschrieben von TriphunEM
was ich auch nicht versteh mein return-path im header ist immer leer!?
dann schau dir bitte mal den Quelltext der Ausgabeseite an!
Bei steht da immer sowas

<mail@irgendwo.domain>

was logischerweise durch den Browser nicht angezeigt wird!
__________________
TBT

Die zwei wichtigsten Regeln für eine berufliche Karriere:
1. Verrate niemals alles was du weißt!


PHP 2 AllPatrizier II Browsergame
Mit Zitat antworten
  #83 (permalink)  
Alt 05-10-2005, 18:30
chrisphp
 Junior Member
Links : Onlinestatus : chrisphp ist offline
Registriert seit: Mar 2005
Beiträge: 142
chrisphp ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von TBT
ist denn einer in der originalen Mail drin, wie sieht der aus?
Hab jetzt gesehen das er in die DB den Return-Path mit eintragt.

na logisch zeigt er nur Müll an, das sind Binärdaten. Sende mal einen JPEG Header, und dann diesen "Müll" mit echo hinterher, dann siehst du dein Bild. Oder schreibe diesen "Müll" binär in eine Datei.jpg

OK

und dein System benutzt wirklich \r\n als Zeilenumbruch, und nicht etwa nur \r oder nur \n
Nun auf \n umgestellt, funktioniert jetzt einwandfrei. Er verschluckt mir keine Zeilen mehr.

Soweit mal danke. Werde jetzt dann das System ein wenig genauer testen & einbinden. Falls noch was ist schreib ich wieder ;-)
Mit Zitat antworten
  #84 (permalink)  
Alt 05-10-2005, 18:40
chrisphp
 Junior Member
Links : Onlinestatus : chrisphp ist offline
Registriert seit: Mar 2005
Beiträge: 142
chrisphp ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Fast hätt ich`s vergessen.
1 Problem hab ich noch:

Ich hab 1 Text-Mail und 1 Text-Mail mit Anhang im Postfach liegen. Wenn ich das nun mit dem Skript abrufe zeigt er mir 2 unterschiedliche Header, jedoch bleibt der Body der 2. Mail mit dem Inhalt der 1. gefüllt.

Er zeigt mir also mit der print_r($decoded); Ausgabe 2 mal den Body der 1. Mail.
Mit Zitat antworten
  #85 (permalink)  
Alt 05-10-2005, 23:16
TBT
  Moderator
Links : Onlinestatus : TBT ist offline
Registriert seit: Sep 2002
Ort: Berlin
Beiträge: 2.787
TBT befindet sich auf einem aufstrebenden Ast
TBT eine Nachricht über ICQ schicken TBT eine Nachricht über AIM schicken TBT eine Nachricht über Yahoo! schicken
Standard

korrekt, da er bei einem erneutem Aufruf von decode die internen Variablen nicht zurück setzt.
Das könnte man noch einbauen
__________________
TBT

Die zwei wichtigsten Regeln für eine berufliche Karriere:
1. Verrate niemals alles was du weißt!


PHP 2 AllPatrizier II Browsergame
Mit Zitat antworten
  #86 (permalink)  
Alt 06-10-2005, 02:33
chrisphp
 Junior Member
Links : Onlinestatus : chrisphp ist offline
Registriert seit: Mar 2005
Beiträge: 142
chrisphp ist zur Zeit noch ein unbeschriebenes Blatt
Standard

gut, dann noch 1 sache die mir auffällt: Befinden sich mehr als 1 Bild im Anhang einer Mail wird nur das erste gespeichert??

Zumindest steht nur einmal text da wie:

Content-Type: image/jpeg; name="29.jpg"
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="29.jpg"

Also speichert er mir das so in der DB nicht korrekt, wobei er es aber bei der print_r($mails) Ausgabe richtig anzeigt.

Weiters steh ich noch vor einem Problem, wo ich nicht genau weis wie ich das lösen soll / kann.
Ich möchte sämtliche Bilder (rein JPEG) als .jpg Datei speichern, die Namen dafür selbst vergeben. Ich meine, wie ich base64 Dekodieren durchführe und wie ich speichere weis ich, doch wie bekomme ich genau dieses "zahlen-wirrwar" in eine variable?
Mit Zitat antworten
  #87 (permalink)  
Alt 06-10-2005, 09:59
TBT
  Moderator
Links : Onlinestatus : TBT ist offline
Registriert seit: Sep 2002
Ort: Berlin
Beiträge: 2.787
TBT befindet sich auf einem aufstrebenden Ast
TBT eine Nachricht über ICQ schicken TBT eine Nachricht über AIM schicken TBT eine Nachricht über Yahoo! schicken
Standard

base64_decode ist durch den Decoder bereits erledigt.
Dieser zerlegt die Mail in Einzelteile, das zu speichern etc. ist deine Aufgabe.
Schau dir die Struktur an, dann kommst du auch an die Daten

in deinem Beispiel müßte das sein

$decoded[0]['body][2]['body']
__________________
TBT

Die zwei wichtigsten Regeln für eine berufliche Karriere:
1. Verrate niemals alles was du weißt!


PHP 2 AllPatrizier II Browsergame
Mit Zitat antworten
  #88 (permalink)  
Alt 07-10-2005, 20:43
chrisphp
 Junior Member
Links : Onlinestatus : chrisphp ist offline
Registriert seit: Mar 2005
Beiträge: 142
chrisphp ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von TBT
$decoded[0]['body][2]['body']
Hab mir die Struktur angeschaut, werde jedoch nicht schlau draus, unter deiner angegebenen lösung (quote) kommt nichts, mit einigen anderen varianten die ich versucht habe auch nix. ich steh total an. die mail selbst ist mir doch egal, ich möchte doch lediglich die einzelnen bilder aus dem anhang rauslesen.
Mit Zitat antworten
  #89 (permalink)  
Alt 08-10-2005, 03:38
TBT
  Moderator
Links : Onlinestatus : TBT ist offline
Registriert seit: Sep 2002
Ort: Berlin
Beiträge: 2.787
TBT befindet sich auf einem aufstrebenden Ast
TBT eine Nachricht über ICQ schicken TBT eine Nachricht über AIM schicken TBT eine Nachricht über Yahoo! schicken
Standard

die Struktur ist ganz simpel, jeder gefundene Text wird untersucht, ob er ein Mimeteil ist, und in das Array geschrieben

bei einer Mime Mail:
Code:
array( 
   [header] => array( 
      [header 1.Zeile] => '...',
      [header 2.Zeile] => '...' 
      ),
   [body] => array(
      [1.Teil vom body (0)] => array( 
         [header vom 1. Teil body] => array( 
            [header 1.Zeile] => '...',
            [header 2.Zeile] => '...' 
         ),
         [body vom 1 Teil body] => 'zb ein Plain/Text' 
      ),
      [2.Teil vom body (1)] => array( 
         [header vom 2. Teil body] => array( 
            [header 1.Zeile] => '...',
            [header 2.Zeile] => '...' 
         ),
         [body vom 2 Teil body] => 'zb ein HTML/Text' 
      ),
      [3.Teil vom body (2)] => array( 
         [header vom 3. Teil body] => array( 
            [header 1.Zeile] => '...',
            [header 2.Zeile] => '...' 
            ),
         [body vom 3 Teil body] => 'zb Binärdaten (Dateianhang)' 
         ),
     )
)
bei einer nicht Mime Mail:
Code:
array( 
   [header] => array( 
      [header 1.Zeile] => '...',
      [header 2.Zeile] => '...' 
      ),
   [body] => 'Text ....'
)
du brauchst also nur das Array $decode[body] durchgehen, und schauen wo Binärdaten drin sind
__________________
TBT

Die zwei wichtigsten Regeln für eine berufliche Karriere:
1. Verrate niemals alles was du weißt!


PHP 2 AllPatrizier II Browsergame
Mit Zitat antworten
  #90 (permalink)  
Alt 08-10-2005, 16:56
chrisphp
 Junior Member
Links : Onlinestatus : chrisphp ist offline
Registriert seit: Mar 2005
Beiträge: 142
chrisphp ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ok, mit

PHP-Code:
$decoded[0][body
erhalte ich den gesamten Body:

PHP-Code:
Mit freundlichen Grüßen,

xxx

::::::::::::::::::::::::::::::::::::
  
Start in wenigen Wochen
::::::::::::::::::::::::::::::::::::
Signatur
::::::::::::::::::::::::::::::::::::
------------
281BB19E1A5CD058
Content
-Typeimage/jpegname="700-550146w.jpg"
Content-transfer-encodingbase64
Content
-Dispositionattachmentfilename="700-550146w.jpg"

/9j/4AAQSkZJRgABAgEASABIAAD/4QRaRXhpZgAATU0AKgAAAAgAD
AEOAAIAAABRAAAAngEPAAIAAAAGAAAA7wEQAAIAAAAOAAAA9QES
AAMAAAABAAEAAAEaAAUAAAABAAABAwEbAAUAAAABAAABCwEoAA
MAAAABAAIAAAExAAIAAAAUAAABEwEyAAIAAAAUAAABJwE7AAIAAA
APAAABO4KY
........ 
Jetzt muss ich nur noch an die Binär-Daten kommen. Mit allen anderen möglichen Kombinationen der decoded[body] erhalte ich keine Ausgabe. Hab mir die Struktur in der maildecode.php angeschaut, doch auch mit [0], [1], [2] oder [3] erhalte ich keine Ausgabe.

Im Prinzip könnte ich doch mit preg_match(...) die richtigen Passagen rausfiltern, oder?
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni


 

Aktuelle PHP Scripte

ContentLion - Open Source CMS ansehen ContentLion - Open Source CMS

ContentLion ist ein in PHP geschriebenes CMS, bei dem man Seiten, Einstellungen usw. in Ordnern lagern kann

22.08.2019 stevieswebsite2 | Kategorie: PHP/ CMS
Adsman Pro - Werbe-Manager V.1.1.0

Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebigem Format, Textanzeigen und Page-Peels mit umfangreichen Text und Flash-Effekte.

30.07.2019 rhs | Kategorie: PHP/ Bannerverwaltung
HeidiSQL - kostenloses MySQL front-end Editor für Windows ansehen HeidiSQL - kostenloses MySQL front-end Editor für Windows

HeidiSQL - ist ein Windows-Editor für die bekannt open Source Datenbank mySQL

30.07.2019 Berni | Kategorie: MYSQL/ Management
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:41 Uhr.