Hallo,
mache gerade ein Test-Update von der letzten 3.x.y nach 4.4.18.
In der Version 3 habe ich per Modul ein externes PHP-Skript eingebunden, welches aus dem Template-Ordner geladen wird. Hier wird eine contao-fremde DB abgefragt und der output in ein File zum Download geschrieben. Das funktioniert Jahrelang super.
Unter Version 4 und PHP7.2 klappt es nur noch eingeschränkt. Die DB wird zwar ausgelesen, aber die File-Operationen laufen nicht.
An PHP7.2 liegt es nicht, denn wenn ich das PHP-File außerhalb von contao aufrufe, dann funktioniert es.
Aus meiner Sicht blockt das contao hier irgendwie:
Hier mal ein Auszug aus dem externen PHP-File:
PHP-Code:
$tmpfilename = 'out.csv';
touch($tmpfilename);
// Sichergehen, dass die Datei existiert und beschreibbar ist
if (is_writable($tmpfilename))
{
if (!$handle = fopen( $tmpfilename, "wb"))
{
print "Kann die Datei $filename nicht öffnen";
exit;
}
// Schreibe header in die geöffnete Datei.
if (!fwrite($handle, utf8_decode($Meinheader)))
{
print "Kann in die Datei $tmpfilename nicht schreiben";
exit;
}
.......
Der touch legt die Datei schon nicht an. Habe auch andere commands versucht und verschiedenste Zielverzeichnisse probiert. Nichts.
Ich komme hier nicht weiter und finde mit google rein gar nichts.
Jeder Tip ist willkommen.
VG
Oliver