Hallo zusammen,
ich bin gerade dabei ein Upload Script auf meine Webseite einzubinden, ich hab Probleme mit dem Code. Ich will es nicht einfach reinkopieren sondern auch verstehen.
Bei dem Befehl: move_uploaded_file weiß ich nicht was ich bei dem Pfad angeben soll.
Hier ist das Script:
Vielen Dank für Antworten!PHP-Code:if ( isset ($_POST['upload']) )
{
$tempname = $_FILES['file']['tmp_name'];
$name = $_FILES['file']['name'];
//$type = $_FILES['file']['type'];
$size = $_FILES['file']['size'];
if ($size > "20000000")
{
$err[] = "zu große datei !";
}
if(empty($err))
{
move_uploaded_file($tempname, "uploads/".$name);
echo "Datei erfolgreich hochgeladen!";
}
else
{
foreach($err as $error)
echo "$error";
}
}
mfg jive
+ Antworten
Ergebnis 1 bis 15 von 15
Probleme bei Upload Script
Diskussion über Probleme bei Upload Script in Skript- und Webserverprogrammierung der Kategorie Programmierung; Hallo zusammen, ich bin gerade dabei ein Upload Script auf meine Webseite einzubinden, ich hab Probleme mit dem Code. Ich ...
- 02.02.2012 12:04 #1Reg.-Benutzer
- Reg.-Datum
- 11.08.2011
- Beiträge
- 24
Probleme bei Upload Script
- 02.02.2012 12:29 #2Reg.-Benutzer
- Reg.-Datum
- 03.11.2010
- Beiträge
- 17
Die Funktion prüft, ob die angegebene Datei per POST upgeloadet wurde und verschiebt sie an den angegebenen Pfad, hier nach uploads/ (vorher anlegen).
Wo ist das Verständnisproblem?
- 02.02.2012 12:37 #3Reg.-Benutzer
- Reg.-Datum
- 11.08.2011
- Beiträge
- 24
Mein Problem ist dass das Script nichts hochlädt weil es eine Fehlermeldung ausgibt. Es kommt folgende Fehlermeldung:
Warning: move_uploaded_file(mh/uploads/wdwad) [function.move-uploaded-file]: failed to open stream: No such file or directory in /opt/lampp/htdocs/user/mh/db_login/user_bereich.php on line 64
Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/php3ux50o' to 'mh/uploads/wdwad' in /opt/lampp/htdocs/user/mh/db_login/user_bereich.php on line 64
Ich will halt was uploaden und das tut nichts, ich bin nicht so das Ass in php aber ich versteh schon was im Script passiert, ich kann den Fehler nicht entziffern (zeile 64 ist wo der Befehl move_uploaded_file kommt).
- 02.02.2012 12:57 #4Reg.-Benutzer
- Reg.-Datum
- 19.02.2001
- Ort
- Strausberg
- Beiträge
- 1.844
Bei dir liegt die hochgeladene Datei unter /tmp/php3ux50o. Dass die Funktion move_uploaded_file fehlschlägt kann verschiedene Gründen haben. Der erste (und wahrscheinlichste) ist, dass das Zielverzeichnis nicht existiert. Ein anderer Grund wäre, dass es für den Webserver-User nicht schreibbar ist bzw. er keine Dateien anlegen darf.
- 02.02.2012 12:58 #5Reg.-Benutzer
- Reg.-Datum
- 03.11.2010
- Beiträge
- 17
Dann geh der Fehlermeldung nach. Meine Vermutung stand auch schon oben mit dabei. Viel Glück.
Warning: move_uploaded_file(mh/uploads/wdwad) [function.move-uploaded-file]: failed to open stream: No such file or directory
- 02.02.2012 15:10 #6Reg.-Benutzer
- Reg.-Datum
- 11.08.2011
- Beiträge
- 24
Ähm mal ne ganz allgemeine Frage, das Script soll die Funktion haben das ein User eine Datei auf den Webserver hochladen kann. Erfüllt das Script diese Funktion oder ist es nur zum verschieben da?
Geändert von jive (02.02.2012 um 15:12 Uhr)
- 02.02.2012 15:40 #7Reg.-Benutzer
- Reg.-Datum
- 03.11.2010
- Beiträge
- 17
>Ich will es nicht einfach reinkopieren sondern auch verstehen.
Mit <form> hattest Du gestern doch schon in einem anderen Topic Vergnügen, heute die Auswertung per $_POST. Für mich sieht es eher aus, als würde von irgendwo herkopiert werden und das Forum soll es funktionstüchtig machen.
Auf eigenen Wunsch - selbst damit Auseinandersetzen was der Ausschnitt aus dem Script macht, ist nicht so schwer!
- 02.02.2012 16:42 #8Reg.-Benutzer
- Reg.-Datum
- 11.08.2011
- Beiträge
- 24
Nein ich will es auch nicht kopieren, die seite ist mein abschlussprojekt und ich muss sie ohne vorahnung von php selbst programmieren, wir dürfen fertige scripts verwenden aber müssen sie erklären können.
Niemand soll das Script für mich schreiben, ich kann per $_POST auswerten, ohne frage nur ich weiß nicht ob das Script meine Anforderungen (dokument hochladen) entspricht.
- 02.02.2012 18:46 #9Reg.-Benutzer
- Reg.-Datum
- 16.01.2009
- Beiträge
- 237
hast du auf "uploads" schreibrechte?
- 02.02.2012 19:40 #10Reg.-Benutzer
- Reg.-Datum
- 11.08.2011
- Beiträge
- 24
Ja ich hab schreibrechte ich hab auf dem gesamten Webserver schreibrechte.
- 02.02.2012 20:02 #11
Moderator Java
- Reg.-Datum
- 24.07.2007
- Ort
- auf nem Berg
- Beiträge
- 7.424
We can only see a short distance ahead, but we can see plenty there that needs to be done. (Alan Turing)
http://flashpixx.de
- 02.02.2012 22:08 #12
Wie wärs wenn du bei einfachen DIngen in PHP anfängst da wie ich annehme du ja Anwendungsentwickler lernst wirst du ja Grundkenntnisse in der Programmierung haben. Von daher ein bischen in PHP einlesen und dann erklärt sich sowas von selbst. Wenn du hingegen keine Zeit mehr hast wegen Projekt zu knapp Kalkuliert + vorher nicht Informiert und Recherchiert dann bleibt dir nur der Weg den du bereits eingeschlagen hast vor. Schreib uns doch mal um welches Script es sich handelt wie du es eingebunden hast was du verändert hast oder was du bereits ausprobiert hast. So per Ferndiagnose sit das schon recht schwierig.Nein ich will es auch nicht kopieren, die seite ist mein abschlussprojekt und ich muss sie ohne vorahnung von php selbst programmieren, wir dürfen fertige scripts verwenden aber müssen sie erklären können.Alter ich weis wo dein Haus wohnt
- 03.02.2012 13:48 #13
So könnte es stimmen... Kanns leider gerade nicht TestenPHP-Code:if ( isset ($_POST['upload']) )
{
$tempname = $_FILES['file']['tmp_name'];
$name = $_FILES['file']['name'];
//$type = $_FILES['file']['type'];
$size = $_FILES['file']['size'];
$folder = 'uploads/';
if ($size > "20000000")
{
echo "zu große datei !";
}
else
}
$error_count = count($file_error);
if($error_count > 0) {
for($i = 0; $i <= $error_count; ++$i) {
echo $_FILES[name ]['error'][$i];
}
} else {
if(move_uploaded_file($file_temp, 'uploads/' .$file_name.'')) {
echo '<h3>Upload Successful!</h3>';
} else {
echo '<h3>ERROR</h3>';
}
}
} else {
echo '<h3>No file has been selected.</h3>';
}
}
}
Versuchs mal so....
Nicht perfekt, aber mir ist gerade etwas langweilig ^^
anzeige.php
PHP-Code:<h1>Dateien</h1>
<form enctype="multipart/form-data" action="[PFAD ZUR UPLOAD.PHP]" method="post">
Datei: <input type="file" name="file">
<input type="submit" value="Datei hochladen">
</form>
<?php
$verz="/";
$verzeichnis = openDir("uploads");
?>
<p>Verzeichnis <b><?PHP echo $verz; ?></b> enthält folgende Dateien:</p>
<ul>
<?PHP
while ($file = readDir($verzeichnis)) {
if ($file != "." && $file != ".."){
echo "<li><a href=\"uploads".$verz."/".$file."\">".$file."</a></li>";
}
}
closeDir($verzeichnis);
?>
</ul>
upload.php
Ich nutze hier bewusst den Copy befehl, da dieser auch im Safe mode ohne probleme läuft, und die temps sich eh nicht lange halten!PHP-Code:<?php
$tempname = $_FILES['file']['tmp_name'];
$name = $_FILES['file']['name'];
if(copy($tempname, "uploads/".$name)) {
echo "Die Datei ".$name." wurde erfolgreich hochgeladen!";
}
else {
echo "Der Upload ist leider fehlgeschlagen.";
}
?>
WICHTG:
die "anzeige.php" und "upload.php" sollten in dem gleichen ordner sein... zu den beiden Datein musst du logischerweise auch den Ordner uploads in das verzeichniss packenGeändert von AsoraX (03.02.2012 um 13:50 Uhr)
- 03.02.2012 13:56 #14Reg.-Benutzer
- Reg.-Datum
- 19.02.2001
- Ort
- Strausberg
- Beiträge
- 1.844
@AsoraX Das war jetzt den dritte Post den ich von dir auf dem Schirm habe und drei mal hast du das eigentliche Problem ignoriert. Deine Lösung mit der copy-Funktion wird ebenfalls scheitern falls der Ornder nicht existiert oder die Rechte nicht stimmen.
- 03.02.2012 14:05 #15
Erstens habe ich das mit dem Ordner sogar extra nochmal dazu gepinnt, und soviel Hirn denke ich kann man erwarten
...
Was denn für rechte? Schreibrechte (CHMOD 777) gelden für Datein, und nicht für Ordner...
Wer seinen "uploads" ordner einen schreibschutz verpasst, über den brauchen wir garnicht reden!
---------------
[EDIT]
Unter aktueller. Xampp und Plesk getestet und zumindest bei meiner zweiten lösung..... es geht so, und das ohne den hauch einer Konfiguration
Kann dir aber auch gerne noch ein Script schreiben was dir erlaubt Ordner zu erstellen
Geändert von AsoraX (03.02.2012 um 14:11 Uhr)
Aktive Benutzer
Aktive Benutzer
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
Ähnliche Themen
-
[PHP] Upload Script: Von URL hochladen
Von Manchi im Forum Skript- und WebserverprogrammierungAntworten: 1Letzter Beitrag: 23.06.2008, 10:02 -
PHP: Upload script
Von andRe´ im Forum Skript- und WebserverprogrammierungAntworten: 4Letzter Beitrag: 05.09.2007, 14:37 -
Suche PHP Script News schriben und Bild upload
Von Anwendungsentwickler im Forum Skript- und WebserverprogrammierungAntworten: 4Letzter Beitrag: 25.01.2006, 14:29 -
Upload via ftp Probleme!
Von akiraxx im Forum Skript- und WebserverprogrammierungAntworten: 4Letzter Beitrag: 25.01.2005, 16:20 -
Java Script - Upload Vorbelegung
Von jokker im Forum Skript- und WebserverprogrammierungAntworten: 4Letzter Beitrag: 12.11.2001, 18:21
Die häufigsten Suchbegriffe für diese Seite:
Bisher noch keine Treffer von einer Suchmaschine

LinkBack URL
About LinkBacks
Zitieren