Archiv verlassen und diese Seite im Standarddesign anzeigen : Datei upload funzt net!
hi @ all
ich versuche nun schon seit einiger zeit ein skript zu schreiben, mit dem ich datein uploaden kann.
zuerst habe ich nun dieses skript geschrieben:
<?php // index.php
setlocale ("LC_TIME", "ge");
/*----Datum----*/
$datum=date(d.M.Y);
/*----Verzeichnis-----*/
$path="$PHP_SELF";
$y=dirname($path);
$z=str_replace("/aegklasse/test/website_klasse/mitglieder/","",$y);
$z=str_replace("_"," ",$z);
$z=eregi_replace("nue","Nü",$z);
$z=eregi_replace("voss","Voß",$z);
$verzeichnis=ucwords($z);
echo "<html>";
echo "<head>";
echo "<title>Verzeichnis von $verzeichnis </title>";
echo "</head>";
echo "<body>";
echo "$datum <br>";
echo "Verzeichnis von $verzeichnis";
echo "<form action='upload.php' method='post' enctype='multipart/form-data'>";
echo "<input type='file' size='50' size='25' maxlength='100000' name='datei' accept='jpg'><br>";
echo "<input type='submit' value='uploaden'>";
echo "</form>";
echo "</body>";
echo "</html>";
?>
-------------
<?php //upload.php
if ($datei != "none") {
$source = $datei;
$source_name = $datei_name;
$path = "images/"; // Der Zielpfad
$dest = $path.$source_name;
if(@copy($source, $dest)) {
$status = "alles OK! Datei kopiert..."; }
else {
$status = "Ein Fehler ist aufgetreten";}
@unlink($source);
}
else {
$status = "Keine Datei angegeben!";}
echo $status;
?>
---------------
nungut, dann habe ich hier ins forum geguckt und dieses beispeil gesehen:
$filename = $file_name;
move_uploaded_file ($file, $root_absolute."doku_upload/".$filename);
------------
dies funktionierte ebensowenig, ich nehme an, da ich den absoluten pfad nicht habe, da ich bei tripod bin.
nungut, dies habe ich dann nochmal auf einen anderen webspace probiert, wo ich den absoluten pfad habe.
---> ging nicht!
------------
in einem anderen forum habe ich dann dieses vorschlag gefunden:
------------
<?php
if (isset($upload)==true)
{
$dateiname=$HTTP_POST_FILES['upload']['name'];
move_uploaded_file ($HTTP_POST_FILES['upload']['tmp_name'], "Pfad zur datei");
}
?>
<form action="<?php $PHP_SELF ?>" enctype="multipart/form-data" method="POST" name="name">
<input type="file" name="datei">
<input type="submit" name="upload">
</form>
-----------------
aber:
...........
ging nicht!
was mache ich falsch?
das ganze soll in das obige php skript index.php eingefügt werden.
THX
P4r4
Hi P4r4
die Scripts di du gepostet hast, die nocht von dir sind funktionieren!!
Nur man muß bei beiden die Pfade ändern.
am einfachsten bekommst du den Absoluten-Pfad mit
echo getcwd();
Zu deinem Script:
der Copy-Befehl funkt auf machen Server nicht, und man muß auch den Pfad angeben
Bei allen Beispielem mußt du die ABSOLUTEN Pfade angeben
ja aber die datei befindet sich nachher nicht in dem ordner images/ .
woran liegt das?
hier nun mein skript:
<!doctype html public "-//W3C//DTD HTML 4.0 //EN">
<?php
setlocale ("LC_TIME", "ge");
/*----Upload----*/
$cwd=getcwd();
$ordner="images/";
if (isset($upload)==true)
{
$dateiname=$HTTP_POST_FILES['upload']['name'];
move_uploaded_file ($HTTP_POST_FILES['upload']['tmp_name'], $cwd.$ordner);
}
/*----Datum----*/
$datum=date(d.M.Y);
/*----Verzeichnis-----*/
$path="$PHP_SELF";
$y=dirname($path);
$z=str_replace("/aegklasse/test/website_klasse/mitglieder/","",$y);
$z=str_replace("_"," ",$z);
$z=eregi_replace("nue","Nü",$z);
$z=eregi_replace("voss","Voß",$z);
$verzeichnis=ucwords($z);
echo "<html>";
echo "<head>";
echo "<title>Verzeichnis von $verzeichnis </title>";
echo "</head>";
echo "<body>";
echo "$datum <br>";
echo "Verzeichnis von $verzeichnis";
echo "<form action='$path' method='post' enctype='multipart/form-data'>";
echo "<input type='file' size='50' size='25' maxlength='100000' name='datei' accept='jpg'><br>";
echo "<input type='submit' value='uploaden'>";
echo "</form>";
echo "</body>";
echo "</html>";
?>
Hi @gain
du hast einen Fehler drin:
$dateiname=$HTTP_POST_FILES['upload']['name'];
move_uploaded_file ($HTTP_POST_FILES['upload']['tmp_name'], $cwd.$ordner);
ersetze die den oben geposteten Teil durch diesen,
dann sollte das Ganze funken:
$filename = $datei_name;
move_uploaded_file ($file, $cwd.$ordner.$filename);
Meld dich dann wieder
es funzt net :(
ich glaub ich bin einfach zu dumm!
hier der link zu dem skript: http://mitglied.lycos.de/aegklasse/test/website_klasse/mitglieder/alexander_sauer/
und hier nochmal das skript:
<!doctype html public "-//W3C//DTD HTML 4.0 //EN">
<?php
setlocale ("LC_TIME", "ge");
/*----Upload----*/
$cwd=getcwd();
$ordner="images/";
if (isset($upload)==true)
{
$filename = $datei_name;
move_uploaded_file ($file, $cwd.$ordner.$filename);
}
/*----Datum----*/
$datum=date(d.M.Y);
/*----Verzeichnis-----*/
$path="$PHP_SELF";
$y=dirname($path);
$z=str_replace("/aegklasse/test/website_klasse/mitglieder/","",$y);
$z=str_replace("_"," ",$z);
$z=eregi_replace("nue","Nü",$z);
$z=eregi_replace("voss","Voß",$z);
$verzeichnis=ucwords($z);
echo "<html>";
echo "<head>";
echo "<title>Verzeichnis von $verzeichnis </title>";
echo "</head>";
echo "<body>";
echo "$datum <br>";
echo "Verzeichnis von $verzeichnis";
echo "<form action='$path' method='post' enctype='multipart/form-data'>";
echo "<input type='file' size='50' size='25' maxlength='100000' name='datei' accept='jpg'><br>";
echo "<input type='submit' value='uploaden'>";
echo "</form>";
echo "</body>";
echo "</html>";
echo "<br><br><br><a href='images/'>Link in den ordner images/</a>";
?>
stoned
17.04.2002, 10:29:27
hi,
ersetz mal das:
/*----Upload----*/
$cwd=getcwd();
$ordner="images/";
if (isset($upload)==true)
{
$filename = $datei_name;
move_uploaded_file ($file, $cwd.$ordner.$filename);
}
durch das:
/*----Upload----*/
$cwd=getcwd();
$ordner="images/";
if (isset($datei) and $datei != "")
{
copy($datei, $cwd.$ordner.$datei_name);
/* ich weiss grad nicht, ob getcwd() mit abschliessendem slash oder ohne arbeitet. lass dir die variable mal ausprinten und schau das mal nach */
}
mfg
stoned
geht nicht!
also getcwd() ist ohne / .
also hab ich das noch ergänzt!
aber es geht trotzdem nicht
$cwd=getcwd();
$ordner="images/";
$pfad=$cwd."/".$ordner;
/*----Upload----*/
if (isset($upload)==true)
{
$filename = $datei_name;
move_uploaded_file ($file, $pfad.$filename);
}
----------------------------
das geht auch nicht
----------------------------
$cwd=getcwd();
$ordner="images/";
$pfad=$cwd."/".$ordner;
if (isset($datei) and $datei != "")
{
copy($datei, $pfad.$datei_name);
}
?!?!?!?!?!??????
stoned
17.04.2002, 14:37:31
so,
ich hab hier mal noch kleinigkeiten, die du ausprobieren könntest:
if (isset($datei) and $datei_name != "")
{
copy($datei, $pfad.$datei_name);
}
und im html-code:
echo "<input type='file' size='50' size='25' maxlength='100000' name='datei' accept='image/jpeg'><br>";
so sollte es funktionieren. es gibt keine fehlermeldung von php, deshlab denke ich, dass es in der <form> / beim upload probleme gibt. nun sollte es eigentlich klappen ...
greetz
stoned
scheisse!
geht nicht.
trotzdem thx!
stoned
17.04.2002, 16:44:59
ich denke mal, dass du im moment meinen letzten vorschlag eingebaut hast. mach mal jegliche @-zeichen weg und lass php die fehlermeldungen zurückgeben (keine eigenen). dann kriegen wir das noch hin ;-)
greetz
stoned
nene daran lags net!
lag am scheiß tripod webspace! der läuft im safe mode!
habs jetzt auf nen anderen server geladen und da ging es.
kennst du noch nen webspace kostenlos, php4 + mysql, no save mode?
----
mein skript:
<!doctype html public "-//W3C//DTD HTML 4.0 //EN">
<?php
setlocale ("LC_TIME", "ge");
/*
$userfile - The temporary filename in which the uploaded file was stored
on the server machine.
$userfile_name - The original name or path of the file on the sender's
system.
$userfile_size - The size of the uploaded file in bytes.
$userfile_type - The mime type of the file if the browser provided this
information. An example would be "image/gif".
*/
// copy to this directory
$dir="images/";
// copy the file to the server
if (isset($submit)){
copy($userfile,$dir.$userfile_name);
if (!is_uploaded_file ($userfile)){
echo " <b>$userfile_name</b> couldn't be copied!!";
}
}
// check whether it has been uploaded
if (is_uploaded_file ($userfile)){
echo " <b>$userfile_name</b> copied succesfully
!!";
}
/*----Datum----*/
$datum=date(d.M.Y);
/*----Verzeichnis-----*/
$path="$PHP_SELF";
$y=dirname($path);
$z=str_replace("/aegklasse/test/website_klasse/mitglieder/","",$y);
$z=str_replace("_"," ",$z);
$z=eregi_replace("nue","Nü",$z);
$z=eregi_replace("voss","Voß",$z);
$verzeichnis=ucwords($z);
echo "<html>";
echo "<head>";
echo "<title>Verzeichnis von $verzeichnis </title>";
echo "</head>";
echo "<body>";
echo "$datum <br>";
echo "Verzeichnis von $verzeichnis";
echo "<form action='$path' method='post' enctype='multipart/form-data'>";
echo "<input type='file' size='50' maxlength='100000' name='userfile' accept='image/jpg'><br><input type='hidden' name='MAX_FILE_SIZE' value='500000'>";
echo "<input type='submit' name='submit' value='uploaden'>";
echo "</form>";
echo "</body>";
echo "</html>";
echo "<br><br><br><a href='images/'>Link in den ordner images/</a>";
?>
stoned
17.04.2002, 16:53:13
hey, immerhin geht's mal. leider kann ich dir bei der webspace-suche nich viel helfen, da ich für mich ein paket hab ...
:-)
stoned
vBulletin® v3.8.3, Copyright ©2000-2012, Jelsoft Enterprises Ltd.