Archivlink: javarea.de Forum > PHP, MySQL & CGI > verschachtelte php-funktionen / Serverkonfiguration
Vollständigen Link anzeigen: javarea.de Forum > PHP, MySQL & CGI > verschachtelte php-funktionen / Serverkonfiguration

Pages: [1]

geschrieben von blinzel am 24.08.2008 - 14:48
Die Übertragung diverser Scripts auf einen abenteuerlich konfigurierten IIS funktioniert nicht. Bei verschachtelten Funktionen hängt sich das Script ohne Fehlermeldung auf. Hier ein Beispiel:

PHP-Quelltext
1: 
2: 
3: 

<?
$endung
=end(explode(".","foo.jpg"));
?>



...geht nicht.

PHP-Quelltext
1: 
2: 
3: 
4: 

<?
$bar
=explode(".","foo.jpg");
$endung=end($bar);
?>



...geht.

Hat jemand eine Idee, woran das liegen könnte? An die php.ini komme ich nicht ran und ich wüsste auch nichts, das ein derartiges Verhalten auslösen kann.

geschrieben von Micha am 24.08.2008 - 15:25
Hi,

HTML-Quelltext
1: 
error_reporting("E_ALL");


liefert nichts?

Gruß Micha

geschrieben von blinzel am 24.08.2008 - 16:00
Danke für die rasche Antwort, Micha.

Leider gibt error_reporting nichts aus. Der Datenstrom reißt einfach an der Stelle ab. Übrigens habe ich mich vorher falsch ausgedrückt: Andere Funktionen lassen sich sehr wohl verschachteln. hab das soeben mit trim(addslashes($irgendwas)) versucht.

geschrieben von blinzel am 24.08.2008 - 16:33
Nachtrag:
Das entsprechende Testscript funktioniert auf verschiedensten Servern anstandslos. Ich habe jetzt aber weitere höchst riskante Einstellungen des gegenständlichen IIS gefunden, wie zum Beispiel die Möglichkeit, ausführbare Dateien ohne Berechtigung hochzuladen und damit auf alle Laufwerke zugreifen zu können ...

Auch mit den Grafikfunktionen liegt vieles im atgen.

Werde also erst mal den Admin kontaktieren und mich dann über die Migration von Apache auf IIS kundig zu machen versuchen. Die Pfade werden ja ganz anders geschrieben, und so weiter ...

Danke für die Mühe.
Andreas

geschrieben von Micha am 24.08.2008 - 16:34
Hi,

PHP ist nicht mein Gebiet Hier wirst Du auf andere Fachleute warten müssen

Micha

geschrieben von Klaush am 24.08.2008 - 17:07
Die Verschachtelung von Funktionen ist wie in vielen anderen Sprachen üblich, wichtig hierbei sind die zu übergebenen Parameter und Typen. Da das end() ein Array als Übergabeparameter erwartet sollten beide Varianten funktionieren.
PHP-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 

<?
$bar
=explode(".","foo.jpg");
$endung1=end($bar);
echo 
$endung1;

$endung2=end(explode(".","foo.jpg"));
echo 
$endung2;
?>



Prüfe bitte mal die PHP Version auf dem IIS.

geschrieben von blinzel am 25.08.2008 - 01:18
Ist Version 5.0.5 und der Server ist arg beinand...

Ich soll ne Seite von nem Apachen dorthin migrieren und ärgere mich jetzt schon wegen der vielen Pfade, die tw. mit document_root (SERVER) im iis mit backslashes kommen....

Obwohl ich noch keinen ftp-account habe, konnte ich bei irgendner Seite per Bildupload (!) php-scripte reinschleusen und dabei beliebige Dateien überall (!!!) am Server ablegen, löschen, ausführen usw. Mir kommt auch das ganze Windows auf der Maschine invalide vor. Fühlt sich an, als gingen dort trotz eher geringer Auslastung seltsame Dinge im Speicher vor. Ich weiß eh, "anfühlen" ist keine professionelle Herangehensweise ....




Powered by: JBB v.2.0.4 Copyright ©2000-2006, www.javarea.de.