Mailinglisten-Archive |
Hallo !
> Unter Unix (sendmail) koennte man in /etc/aliases die mail
> in ein cgi-php pipen, irgendwer hat irgendwann in dieser Liste
> das auch mal demonstriert, ich habs auf die Schnelle aber nicht
Tatsaechlich wurde das Thema in der Liste bereits aufgegriffen, da es
mich aktuell ebenfalls interessierte, hier ein paar Hinweise:
Das Test-Skript sieht bei mir folgendermassen aus:
#!/usr/local/bin/php -q
<?php
$fp = fopen("/dev/stdin","r");
{
while ($zeile = fgets($fp,10000))
{
$filetext .= $zeile;
}
fclose($fp);
}
print "Uebergeben wurde: $filetext\n";
?>
PHP liegt als Binary in /usr/local/bin, die Option -q sorgt fuer die
Unterdrueckung der HTTP-Header "Content-Type" etc.
Nun wird die Datei (! ;-) ) /dev/stdin geoeffnet, in der die Daten der
Standard-Eingabe Platz nehmen. Der Tip stammt uebrigens von Rasmus
aus einer Mail der engl. Liste.
Der Rest ist klar - Einlesen, Zusammensetzen, Ausgeben.
Anstatt letzteres erfolgt in einer realen Anwendung das Parsen der
Mail und das Einleiten der entsprechenden Aktionen.
Mal kurz testen:
echo "dingenskirchen" | ./cgitest.php3
ergibt:
Uebergeben wurde: dingenskirchen
Wie beschrieben im /etc/aliases (oder vergleichbaren) einsetzen,
ggf. Rechte anpassen, so dass der verwendete MTA (z.B. sendmail) das
Skript starten kann.
Beste Gruesse,
Ralf
--
/ ralf_(at)_kuerbis.org -> http://www.kuerbis.org
/ PHP-Center - alles rund um PHP -> http://www.php-center.de
php::bar PHP Wiki - Listenarchive