Dateien erstellen

homerunjack

Grünschnabel
Hallo Freunde, Hallo Fans
ich hab mir doch so ein php buch gekauft und nun habe ich ein problem:

ich hab zwei dateien: index.php und script.php
mit diesem script soll man zwei verzeichnisse nennen. in einem liegen irgendwelche dateien und im zweiten ordner sollen genau die gleichen dateien liegen, bis auf das sie alle die größe von 0 KB haben. also dateinamen kopieren.
jetz hab ich hier die erste datei index.php:

HTML:
<html>
<head>
</head>

<body>
<form method="post" action="script.php">
Musikverzeichnis:<br>
<input Name="musikverzeichnis_alt"><br>
Zielverzeichnis:<br>
<input name="musikverzeichnis_neu"><br>
<input type="submit" value="Umwandeln">
</form>
</body>
bis hierhin funktioniert noch alles, aba jetz kommts(script.php):

PHP:
<?


//Verzeichnisse aus index.php holen

$musikverzeichnis_alt = $_POST['musikverzeichnis_alt'];
$musikverzeichnis_neu = $_POST['musikverzeichnis_neu'];


// Array erstellen
$musikdateien = array();

//Verzeichnis der Musikdateien öffnen, auslesen, in array speichern und wieder schließen
$dir = opendir("$musikverzeichnis_alt");

while ($datei = readdir($dir)) $musikdateien[] = $datei;

closedir ($dir);

//Anzahl der Musikdateien bestimmen
$max = count($musikdateien) -1;

//Prüfen des Verzeichnisses


$dir_neu = opendir("$musikverzeichnis_neu");

// erstellen der dateien
foreach($musikdateien as $dateien_neu)
{
$dateien_neu = fopen("$dateien_neu", "a+");
}



?>

<html>
<head>
</head>

<body>
Es wurden<br>
<?= $max+1 ?><br>
Dateien bearbeitet.

</body>

</html>

so, wenn ich nun die verzeichnisse eintrage geht ja alles noch, da sformular kann ich abschicken und der liest auch die dateien ein. mein problem is nur, das script kopiert diese leeren dateien in den webserver ordner und nicht in das zielverzeichnis? nachdem ich das ausgeführt habe bombardiert er mich auch mit fehlermeldungen in zeile 26 und 31.
könnt ihr mir helfen ? bitte bitte bitte ? jedenfalls sollen die fehlermeldungen aufhören und das script soll die dateien ins richtige verzeichnis stellen.

danke schonma im vorraus

MfG homerunjack
 
Also erstmal moechte ich Dich bitten auf Gross- und Kleinschreibung zu achten.

Zum anderen ist Dir da ein Fehler mit den Code-Tags unterlaufen, da Du nach dem HTML-Code mit [/code} schliessen willst ist der Code einfach nur so im Post drin und nicht irgendwie hervorgehoben. Fuer HTML und PHP gibt es uebrigens auch entsprechende Tags, sodass Du dort Syntax-Highlight haben kannst.

Nun zu Deinem Problem: opendir() veranlasst PHP nicht in einem bestimmten Verzeichnis zu arbeiten. Mit opendir() kann man lediglich das auszulesende Verzeichnis bestimmen.
Wenn Du nun also Dateien in ein bestimmten Verzeichnis schreiben willst musst Du auch den entsprechenden Pfad angeben.

Uebrigens, Deine "$var"-Konstrukte sind wirklich grausam.
Z.B. hier:
PHP:
$dir_neu = opendir("$musikverzeichnis_neu");
Warum nicht einfach
PHP:
$dir_neu = opendir($musikverzeichnis_neu);
(mal ganz abgesehen, dass diese Zeile, wie oben erklaert, ueberfluessig ist)?
 
Zurück