SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



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



:: Buchempfehlung ::

PHP 5.3 & MySQL 5.1

PHP 5.3 & MySQL 5.1 zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 14.03.2007, 17:28:52
damohsta damohsta ist offline
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)
Mit Zitat antworten
  #2  
Alt 14.03.2007, 17:50:24
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
AW: ...upload again

Sollen wir die Fehlermeldung raten?
Mit Zitat antworten
  #3  
Alt 14.03.2007, 17:56:33
damohsta damohsta ist offline
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
Mit Zitat antworten
  #4  
Alt 14.03.2007, 18:58:48
lukgestach lukgestach ist offline
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!
Mit Zitat antworten
  #5  
Alt 14.03.2007, 20:37:08
cesca cesca ist offline
Anfänger
 
Registriert seit: Sep 2006
Beiträge: 26
AW: ...upload again

Ich denke der Parse-Error liegt an empty
Mit Zitat antworten
  #6  
Alt 14.03.2007, 23:42:24
raven22k raven22k ist offline
Anfänger
 
Registriert seit: Feb 2007
Beiträge: 57
AW: ...upload again

nimm anstatt empty() !isset(), ich denke das sollte klappen :)
Mit Zitat antworten
  #7  
Alt 15.03.2007, 00:06:29
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
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.
Mit Zitat antworten
  #8  
Alt 15.03.2007, 03:38:06
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
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)
Mit Zitat antworten
  #9  
Alt 15.03.2007, 09:30:31
damohsta damohsta ist offline
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)
Mit Zitat antworten
  #10  
Alt 15.03.2007, 12:20:06
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: ...upload again

Zitat:
Zitat von damohsta Beitrag anzeigen
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...
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

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.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
File Upload Problem wegen upload_tmp_dir Hillkorn PHP für Fortgeschrittene und Experten 14 14.02.2007 17:51:34
Ein Upload script basteln rsciw PHP Grundlagen 4 29.08.2006 15:49:13
Bild per upload aktualisieren jojomo PHP Grundlagen 0 21.11.2003 18:44:13
Upload ... schon wieder!! Domi PHP Grundlagen 0 04.11.2003 22:13:25
ebenfalls Probleme mit Upload - woran kann's liegen? daknuet PHP für Fortgeschrittene und Experten 1 18.09.2002 17:01:57


Alle Zeitangaben in WEZ +2. Es ist jetzt 09:54:23 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt