CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden |
14.03.2007, 17:28:52
|
Anfänger
|
|
Registriert seit: Oct 2006
Beiträge: 68
|
|
...upload again
Auch auf die gefahr hin das Ihr mich jetzt steinigt weil dieses thema eigentlich ja zu genüge geklärt worden sein müsste, aber ich habe jetzt mitlerweile das 5. Script eingerichtet und bekomme die Daten einfach nicht auf den Server. :(
Besonders gut hätte mir eigentlich dieses Script gefallen:
PHP-Code:
<?php
$tempname = $_FILES['file']['tmp_name']; $name = $_FILES['file']['name']; $type = $_FILES['file']['type']; $size = $_FILES['file']['size'];
if ($type != "image/tiff" && $type != "image/jpg" && $type != "application/pdf"){ $err[] = "Es können nur die Dateiformate JPG, TIFF und PDF hochgeladen werden!"; }
if ($size > "20971520"){ $err[] = "Die maximal zulässige Dateigröße beträgt 20 MB"; } if (empty($err)){ copy ("$tempname","$name"); echo "Die Datei $name wurde erfolgreich hochgeladen"; } else{ foreach($err as $error) echo "$error</br>"; ?>
weil es schön kurz ist und auch nicht all zu schwer zu verstehen. Das Ding hab ich als Tutorial gefunden....kp wie man sowas anbieten kann wenn´s nicht läuft. Sowohl der Ordner als auch die php Datei stehen auf 777. Abgeblich steckt der Fehler in Zeile 11...mal wieder ein parse error. Hab PHP/4.3.3 auf dem Server laufen, und da sollte das eigentlich so klappen. Jemand ne gute Idee woran es noch liegen könnte, das kein einziges upload script bei mir läuft?
Geändert von damohsta (14.03.2007 um 17:55:08 Uhr)
|
14.03.2007, 17:50:24
|
|
SELFPHP Guru
|
|
Registriert seit: May 2003
Beiträge: 7.187
|
|
AW: ...upload again
Sollen wir die Fehlermeldung raten?
|
14.03.2007, 17:56:33
|
Anfänger
|
|
Registriert seit: Oct 2006
Beiträge: 68
|
|
AW: ...upload again
Hab ich doch geschrieben....
Zitat:
Parse error: parse error in /home/user/www.mydomain.de/test3/upload.php on line 11
|
|
14.03.2007, 18:58:48
|
Junior Member
|
|
Registriert seit: Feb 2007
Ort: Safnern, CH
Alter: 32
Beiträge: 255
|
|
AW: ...upload again
Auf der 11. Zeile steht doch gar nichts bzw. nur eine geschweifte Klammer!
|
14.03.2007, 20:37:08
|
Anfänger
|
|
Registriert seit: Sep 2006
Beiträge: 26
|
|
AW: ...upload again
Ich denke der Parse-Error liegt an empty
|
14.03.2007, 23:42:24
|
Anfänger
|
|
Registriert seit: Feb 2007
Beiträge: 57
|
|
AW: ...upload again
nimm anstatt empty() !isset(), ich denke das sollte klappen :)
|
15.03.2007, 00:06:29
|
|
SELFPHP Guru
|
|
Registriert seit: May 2003
Beiträge: 7.187
|
|
AW: ...upload again
An dem Aufruf von empty() ist syntaktisch gesehen nichts zu bemängeln. Es fehlt lediglich eine schließende geschweifte Klammer.
|
15.03.2007, 03:38:06
|
|
SELFPHP Guru
|
|
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
|
|
AW: ...upload again
in der 11. Zeile?
Die Fehlermeldung paßt nicht zum geposteten "Script". Eigentlich müßte PHP mehrmals warnen:
$err[] = "irgend was";
$err existiert nicht, wird aber als Array angesprochen.
..., bevor es die fehlende Klammer am Scriptende vergeblich sucht.
Da es aber vorkommen kann, daß die Variable $err gar nicht existiert - eben dann, wenn es keinen Auswertungsfehler gab, ist die Prüfung mit empty() eigentlich Blödsinn.
PHP-Code:
$err = array();
# Auswertung
if (isset($err) AND is_array($err)) foreach($err as $error) echo "$error</br>"; else echo 'hat geklappert.';
Wenn ich allerdings sowas sehe,...
Zitat:
copy ("$tempname","$name");
|
dann wird mir übel.
Geändert von meikel (†) (15.03.2007 um 03:40:38 Uhr)
|
15.03.2007, 09:30:31
|
Anfänger
|
|
Registriert seit: Oct 2006
Beiträge: 68
|
|
AW: ...upload again
Wie oben geschrieben ist das Ding nicht auf meinen mist gewachsen sondern aus nem "Tutorial". Das Zeile 11 leer ist weiss ich auch, deshalb ja meine Frage wie die denn fehlerhaft sein kann.
Und auch wenn´s eventuell nicht die beste lösung ist, es funzt ;)
PHP-Code:
<?php
$tempname = $_FILES['file']['tmp_name'];
$name = $_FILES['file']['name'];
$type = $_FILES['file']['type'];
$size = $_FILES['file']['size'];
if ($type != "application/pdf" && $type != "application/x-pdf"){
$err[] = "Es können nur die Dateiformate JPG, TIFF und PDF hochgeladen werden!";
}
if ($size > "20971520"){
$err[] = "Die maximal zulässige Dateigrö?~_e beträgt 20 MB";
}
if (empty($err)){
copy ("$tempname","$name");
echo "Die Datei $name wurde erfolgreich hochgeladen";
}
else{
foreach($err as $error)
echo "$error</br>";
}
?>
Geändert von damohsta (15.03.2007 um 11:36:16 Uhr)
|
15.03.2007, 12:20:06
|
|
SELFPHP Guru
|
|
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
|
|
AW: ...upload again
Zitat:
Zitat von damohsta
Und auch wenn´s eventuell nicht die beste lösung ist, es funzt ;)
|
"Dicht daneben" ist auch "vorbei".
Wenn der Datentyp getestet werden muß, prüft man nicht das, was der Client so zusammenlügt, sondern das File:
Zitat:
mime_content_type($_FILES['file']['tmp_name']) — Detect MIME Content-type for a file
|
Im weiteren muß getestet werden, ob das File fehlerfrei eingetroffen ist:
Zitat:
$_FILES['userfile']['error'] = Der Fehlercode im Zusammenhang mit dem hochladen der Datei.
|
Zitat:
if ($type != "application/pdf" && $type != "application/x-pdf"){
$err[] = "Es können nur die Dateiformate JPG, TIFF und PDF hochgeladen werden!";
}
|
Das ist Blödsinn.
Das auch:
Zitat:
if ($size > "20971520"){
$err[] = "Die maximal zulässige Dateigrö?~_e beträgt 20 MB";
}
|
Generell gilt erst mal das, was in upload_max_filesize steht. Mehr geht nicht. Nur weniger...
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Themen-Optionen |
|
Ansicht |
Linear-Darstellung
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 10:29:59 Uhr.
|