Hilfe bei fopen

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 :wink:

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 :smiley:

Um 2 Verzeichnisse nach unter zu kommen verwendet man nicht ‘…/’ sondern ‘…/…/’ :wink:

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 :wink: (und das obere erzeugt nicht mal ein E_NOTICE)