phpbar.de logo

Mailinglisten-Archive

[php] php-mailingliste

[php] php-mailingliste

Ralf Geschke ralf_(at)_kuerbis.org
Fri, 20 Aug 1999 16:14:26 +0200


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