# Ordner per php erstellen, links zu allen dateien im ordner



## Kamephis (10. Juni 2004)

Hallo erstmal,
ich habe ein Problem, bei dem ich leider nicht die geringste Ahnung habe, wie ich es lösen soll.

Ich habe ein Loginscript, dass ich benutzen kann.
Ich müsste aber das Script, um einige Punkte erweitern; wie ich das hinbekomme ist mir ein Rätsel...

Das sollte das Script können:
Beim Anlegen des Users wird ebenfalls ein ordner angelegt; Ordnername = Username.

Weiterhin: (anderes script, hängt aber damit zusammen):
wenn ich mich eingeloggt habe mit dem User, sollen auf einer Seite Links zu allen Dateien im Ordner des User angezeigt werden, ohne dass ich diese Links in die Mysqldatenbank eintragen muss.
Also wenn ich halt per ftpclient 3 Dateien in den Ordner des Users hochgeladen habe:
link zur datei1
link zur datei2
link zur datei3

Gruß und Danke im Voraus


----------



## shorty (10. Juni 2004)

Na,

ich würds mal hiermit probieren.

Wenn der User angelegt wurde, liest du den Benutzernamen des Users aus und erweiterst dein Skript auf diese Weise:

```
$Path = ""; // Hier musst du den absoluten Pfad eintragen und am Ende halt den Usernamen.
// Bsp.: "/www/htdocs/".$Username;
mkdir ($Path, 0777);
```

Dann liest du mit dem folgenden Skript den Ordnerinhalt aus:

```
<?php
$Dir = $Username;

$Handler = openDir($Dir);

while($Ordner = readDir ($Handler)) {

      if(($Ordner != ".") && ($Ordner != "..") {

            echo "<a href=\"http://www.deineSeite.de/".$Username."/".$Ordner."\">".$Ordner."</a><br>";

      }

}
?>
```

Hoffe, dass es so richtig ist.


----------



## Kamephis (10. Juni 2004)

ich probiers schnellstmöglich aus 
erstmal danke auf jeden fall!


----------



## Kamephis (12. Juni 2004)

So, konnte es jetzt endlich ausprobieren.
Also einen Ordner zu erstellen beim Eintragen des Users klappt wie es soll; aber das Auslesen klappt leider nicht; es zeigt dann auf einma gar nichts mehr an.
So sieht der Code atm  aus:

```
<?
$result= mysql_query("SELECT * FROM users WHERE UserID=$user LIMIT 1") or die(mysql_error());
			    while ($data = mysql_fetch_array($result)) {
			    	$Dir = $data[name];
				 ?>	
      <table border="0" width="100%" cellspacing="0" cellpadding="0">
        <tr>
          <td width="100%">
			<?php echo $data[info] ?>
		  </td>
        </tr>
        <tr>
        <td>
        </td width="100%">
        <?php
		$Handler = openDir($Dir);
		while($Ordner = readDir ($Handler)) {
		if($Ordner != "." && $Ordner != "..") {
	    echo $Ordner;
	    }
		}
		?>
```

Naja, das funktioniert irgendwie nicht; warum ist mir leider (mal wieder) ein Rätsel. Hoffe mir kann jemand weiterhelfen.

/e: args eine klammer zu viel... sorry leute  jetzt klappts!


----------

