2012-03-28 6 views
0

Ich versuche, ein Ticketing-System zu machen, aber es gibt ein paar Möglichkeiten, es zu tun.Ticketing-System mit PHP

Piping

Das Problem mit Rohrleitungen versucht Anlagen zu analysieren und sie in einem Ordner zu speichern.

Hier ist ein kleines Skript, das ich

gemacht
#!/usr/bin/php -q 
<?php 

//The concern here is having enough mem for emails with attachments. 
ini_set('memory_limit', '256M'); 

ini_set("display_errors", "1"); 
error_reporting(E_ALL); 

$data = isset($_SERVER['HTTP_HOST'])?file_get_contents('php://input'):file_get_contents('php://stdin'); 

$fdw = fopen("mail.txt", "w+"); 
fwrite($fdw, $data); 
fclose($fdw); 

?> 

Durch cPanel`s Rohr-Programm.

Es generiert eine rohe E-Mail-Zeichenfolge, die viele Dinge enthält, die ich nicht verstehe. Zum Beispiel:

--_1f366895-b327-4f84-8985-e3826cdf604b_ Content-Type: application/octet-stream Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="something.zip" UEsFBBQACAAIAJuy1DgAAAAAAAAAAAAAAAAKAAAAcmVwb3J0LnhtbNVdW5fbNpJ+n1/B9Z6zb8Mh rgTPJplGt9N2HNvxiTPjM/vGltjdinUbUrLT+fVLUqJEUKSAYoE0p+10YkIdfwCBQl2+qvru73+s lt6XJM0Dm/X3z4gfPPOyXbyex8vNOvn+2VOSPfv7D3/5y3dpst2kux++28V3y+SH72ab5X61zqr/ 8NbxKv/0PN4Dz3747m+Hh43BWbzaxouHdecH4vlDutlvO8c/J09fN+m8e/zryyTb/SNddn5isdpm

Gibt es eine Möglichkeit, sie (img, docs, zip oder usw.) oder setzen Sie sie in einem Ordner/something.ext zu analysieren?

Gibt es eine andere Möglichkeit, dies zu tun?

Externe Dienste?

Gibt es schon einen Dienst, der das macht?

+1

bitte mit der Frage, in was falsch setzen Sie? danke –

+0

Was Sie suchen (die Schlüsselwörter zu [Google] (http://www.google.com/search?q=php%20mime%20parser)) ist ein "PHP [MIME] (http: // en .wikipedia.org/wiki/MIME) Parser ". Es gibt ein paar von ihnen da draußen, ich habe [dieses] (http://www.phpclasses.org/package/3169-PHP-Decode-MIME-e-mail-messages.html) vorher benutzt und es hat das getan Job für mich. Es ist nicht so kompliziert, MIME zu parsen, wenn Sie verstehen, wie es funktioniert. Lesen Sie den Wikipedia-Artikel, auf den für Anfänger verwiesen wird. Wenn Sie dies tun möchten, wäre es gut, wenn Sie sich ein wenig damit befassen. – DaveRandom

Antwort

1

Zuerst die Ausgabe nach dem Dateinamen und Sie dann Ihre Inhalte mit Base64 dekodieren, weil, wie Sie in der Kopfzeile sehen: Content-Transfer-Encoding: base64:

file_put_contents('something.zip', base64_decode($output)); 
+0

danke! Ich sehe jetzt. –