Problem beim Dateiupload
Trax69
- php
0 CoKo
Hi,
ich befasse mich gerade mit der Möglichkeit eines File-Uploads auf einen Server.
Dazu habe ich fogende 2 Dateien erstellt:
formular.htm:
<html>
<head>
<title>Dateiupload</title>
</head>
<body>
<form action="fileupload.php" enctype="multipart/form-data" method="post">
<table width="600" border="1" cellspacing="0" cellpadding="0" align="center">
<tr>
<td colspan=2 align="center" valign="middle"><h1>Test Dateiupload</h1></td>
</tr>
<tr>
<td width="300" align="center" valign="middle"><input type="file" name="testfile"></td>
<td width="300" align="center" valign="middle"><input type="submit" value="Weg damit"</td>
</tr>
</table>
</form>
</body>
</html>
und fileupload.php :
<?php
echo $testfile;
echo "<br>";
echo $testfile_name;
echo "<br>";
copy($testfile,"$testfile"."bak");
?>
Ich habe jetzt das Problem, dass der Varible $testfile kein sinnvoller String ( Pfad+Dateiname ) zugewiesen wird.
Folgende Ausgabe kommt zustande:
/tmp/phpUyuYfW
config.bin
Warning: Unable to create 'c:/temp/tmp/phpUyuYfWbak': No such file or directory in /home/apache/users/php4/html/fileupload.php on line 8
&testfile_name liefert lediglich den Namen der Datei ohne entsprechenden Pfad.
Der Copy-Befehl findet die Datei nicht?
Wie erhalte ich einen vollständigen String Pfad+Dateiname?
<td width="300" align="center" valign="middle"><input type="file" name="testfile"></td>
Auszug aus "PHP" von Schmid, Cartus, Blume; Verlag Markt&Technik:
$testfile
enthält den temporären Namen der Datei, die auf dem Server abgelegt wurde. Der Name wird vom System erzeugt und entspricht nicht dem Dateinamen der übertragenen Datei.
$testfile_name
enthält den Namen der Datei, die übertragen wurde. Es wird nur der Name, nicht jedoch der komplette Pfad eingetragen.
[...]
Also, Antwort auf deine Frage: An den Pfad kommst du unter PHP scheinbar nicht ran. Ich weiß jedoch, dass er übertragen wird, denn bei Perl hat man ihn zur Verfügung.
Sorry.