Folgendes Problem:
Ich weiß nich wie ich mit dopen ein übergeordnetes verzeichnis öffnen kann. Es kommt immer die Fehlermeldung:
Warning: fopen(php/User/82430/log.txt) [function.fopen]: failed to open stream: No such file or directory in /users/XXXX/www/php/log.php on line 4
Wär hilfreich wenn du dazu noch dein script offen legen würdest
Das kann ich gerne machen, aber ich glaub eher es bringt in dem zusangen hang nix. Die folgende Seite wird von mehreren Seiten in verschiedenen Verzeichnissen geöffnet:
<?php
if($_SESSION['login']==true&&isset($_SESSION[Nummer]))
{$logdatei=fopen("../php/User/$_SESSION[Nummer]/log.txt","a");
}
else
{
$logdatei=fopen("....../users/benoit/www//php/log.txt","a");
}
fputs($logdatei,
date("d.m.Y, H:i:s",time()) .
" | " . $_SERVER['REMOTE_ADDR'] .
" | " . $_SERVER['REQUEST_METHOD'] .
" | " . $_SERVER['PHP_SELF'] .
" | " . $_SERVER['HTTP_USER_AGENT'] .
" | " . $_SERVER['HTTP_REFERER'] ."\n"
);
fclose($logdatei);
?>
Das Problem ist jetzt aber, dass ich nicht weiß wie ich ins vorherige Verzeichnis gelange, bzw. was das Hauptverzeichnis ist.
Danke schon male,
Benedikt
Das glaub ich eben schon
Um 2 Verzeichnisse nach unter zu kommen verwendet man nicht ‚…/‘ sondern ‚…/…/‘
Ok Danke
Noch was, bei den arrays (zb. $_SESSION[Nummer]) solltest du den key immer unter Anführungszeichen setzen.
Also: $_SESSION[‘Nummer’]
Und bei Arrays nicht mitten in den String setzen:
Falsch:
Besser:
$logdatei=fopen("../php/User/".$_SESSION['Nummer']."/log.txt","a");
// Achtung! Sollte Nummer eine Konstante sein, die Anführungszeichen wieder wegnehmen: [ $_SESSION[Nummer] ]
Im Endeffekt funktioniert allerdings beides (und das obere erzeugt nicht mal ein E_NOTICE)