trace watch einbinden: erst -->failed to open stream: ... und nun Invalid argument supplied for foreach()
am 25.04.2008 - 21:45 Uhr in
Mit diesem Code versuche etwas zu includen
<?php
set_include_path('/var/www/web22/web/twatch_include/extlogger.php');
$url = 'www.homezone.bla';
$request = drupal_http_request($url);
$GLOBALS['adl_ext_addr']=$request;
include_once $GLOBALS['HTTP_SERVER_VARS']['DOCUMENT_ROOT'].'/twatch_include/logger.php';
?>doch dieser Fehler erscheint.
* warning: include_once(/twatch_inlcude/logger.php) [function.include-once]: failed to open stream: No such file or directory in /var/www/web22/web/sites/all/themes/selfy/page.tpl.php on line 85.Wenn ich das selbe nicht in drupal include sondern in einer extra Datei klappt das ohne Probleme. Woran könnte das liegen?
- Anmelden oder Registrieren um Kommentare zu schreiben

Man lese:
am 25.04.2008 - 23:39 Uhr
Man lese: include_once(/include/log.php)
Was sieht man dort? Genau, einen absoluten Pfad im Dateisystem... Was kann daran wohl nicht stimmen? ;)
--
"Look, Ma, I'm dead!"
Cell, Stephen King
Die Datei liegt dort
am 26.04.2008 - 13:03 Uhr
Ich habe den Pfad jetzt mit einem Punkt vor dem 1. slash versehen.
<?phpinclude_once $GLOBALS['HTTP_SERVER_VARS']['DOCUMENT_ROOT'].'./twatch_include/logger.php';
?>
Der include scheint nun zu klappen, allerdings gibt es jetzt eine neue Fehlermeldung:
warning: Invalid argument supplied for foreach() in /var/www/web22/web/twatch_include/extlogger.php on line 17.Diese Meldung taucht nicht auf wenn die selbe Datei extlogger.php außerhalb von drupal aufgerufen wird. Es wäre auch nicht möglich in der Datei extlogger.php etwas zu ändern, das sie verschlüsselt ist. Das heißt der selbe Code aufgerufen aus /test.php (ohne den Punkt) funktioniert.
Warum also taucht diese foreach() Meldung auf wenn extlogger.php aus drupal aufgerufen wird?
Die verschüsselte Funktion
am 26.04.2008 - 14:12 Uhr
Die verschüsselte Funktion stand in einer Zeile. Ich habe sie mal einigermaßen leserlich gemacht. Der foreach Fehler taucht damit in Zeile 29, also zum Beginn der Schleife auf.
(So etws nennt man "half open source" :-) )
<?php
vxnzrf5a();
function vxnzrf5a() { global $HTTP_GET_VARS,$HTTP_SERVER_VARS,$adl_ext_addr;
$vpmgxw50="\150\164\164\160\72\57\57".$adl_ext_addr."\57\164\167\141\164\143\150\57\143\141\164\143\150\145\170\164\56\160\150\160\77
";
if(!empty($HTTP_SERVER_VARS["\122\105\121\125\105\123\124\137\125\122\111"])) {
$vpmgxw50.="\162\165\75".urlencode($HTTP_SERVER_VARS["\122\105\121\125\105\123\124\137\125\122\111"]);
} else { if(empty($HTTP_SERVER_VARS["\120\110\120\137\123\105\114\106"])) {
if(empty($HTTP_SERVER_VARS["\123\103\122\111\120\124\137\116\101\115\105"])) {
$vx3p5unx="\165\156\153\156\157\167\156\137\160\141\147\145";
} else { $vx3p5unx=$HTTP_SERVER_VARS["\123\103\122\111\120\124\137\116\101\115\105"];
} } else { $vx3p5unx=$HTTP_SERVER_VARS["\120\110\120\137\123\105\114\106"];
}
$vxdg2sdk=0;
/*Zeile 29 */ foreach($HTTP_GET_VARS as $v2y8fsh6=> $vb0qc8n4) {
$vx3p5unx.=($vxdg2sdk?"\46":"\77").$v2y8fsh6."\75".urlencode($vb0qc8n4);
$vxdg2sdk++;
}
$vpmgxw50.="\162\165\75".urlencode($vx3p5unx);
} if(!empty($HTTP_SERVER_VARS["\122\105\115\117\124\105\137\101\104\104\122"])) {
$vpmgxw50.="\46\162\141\75".urlencode($HTTP_SERVER_VARS["\122\105\115\117\124\105\137\101\104\104\122"]);
} else { $vpmgxw50.="\46\162\141\75\116\157\164\123\145\164\102\171\123\145\162\166\145\162";
} if(isset($HTTP_SERVER_VARS["\110\124\124\120\137\103\114\111\105\116\124\137\111\120"]))
$vpmgxw50.="\46\143\151\75".urlencode($HTTP_SERVER_VARS["\110\124\124\120\137\103\114\111\105\116\124\137\111\120"]);
if(isset($HTTP_SERVER_VARS["\110\124\124\120\137\130\137\106\117\122\127\101\122\104\105\104\137\106\117\122"]))
$vpmgxw50.="\46\170\146\75".urlencode($HTTP_SERVER_VARS["\110\124\124\120\137\130\137\106\117\122\127\101\122\104\105\104\137\106\117
\122"]);
if(isset($HTTP_SERVER_VARS["\110\124\124\120\137\125\123\105\122\137\101\107\105\116\124"]))
$vpmgxw50.="\46\165\141\75".urlencode($HTTP_SERVER_VARS["\110\124\124\120\137\125\123\105\122\137\101\107\105\116\124"]);
if(isset($HTTP_SERVER_VARS["\110\124\124\120\137\122\105\106\105\122\105\122"]))
$vpmgxw50.="\46\162\145\75".urlencode($HTTP_SERVER_VARS["\110\124\124\120\137\122\105\106\105\122\105\122"]);
if(isset($GLOBALS['adl_page_prefix'])) $vpmgxw50 .="\46\160\160\75".urlencode($GLOBALS['adl_page_prefix']);
if(isset($GLOBALS['adl_alt_instance'])) $vpmgxw50 .="\46\141\151\75".urlencode($GLOBALS['adl_alt_instance']);
if(isset($GLOBALS['adl_count_params'])) $vpmgxw50 .="\46\143\160\75\164\162\165\145";
$vypo7kth=fopen($vpmgxw50,"\162");
fclose($vypo7kth);
}
?>