php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 28.04.2005, 13:03  
Gast
 
Beiträge: n/a
Standard

ähm noe...

PHP-Code:
<?php
function up($name$type$size$tmp_name){ 
global 
$name$type$size$tmp_name

// Einstellungen 
$maxsize "40960"// Maximale Uploadgrösse (40 Kb) 
$uploddir "uploadbin/"// Upload Ordner 
$extensions = array(".jpg"".png"".gif"); // Erlaubte Erweiterungen 

if($_POST['action']=="upload"

$tmp_name $HTTP_POST_FILES['bild']['tmp_name']; // Der Originalname 
$name $HTTP_POST_FILES['bild']['name']; // Der Originalname 
$size $HTTP_POST_FILES['bild']['size']; // Größe der Datei 
$type $HTTP_POST_FILES['bild']['type']; // Der MIME Type der Datei 

$ext_tmp explode("."$name); 
$ext ".".$ext_tmp[(count($ext_tmp)-1)]; 

if(
in_array($ext$extensions)) 

if(
$size<=$maxsize && $size!=0

while(
file_exists($uploddir.$newname) || !$newname

$newname md5(uniqid(rand())); 


if(
move_uploaded_file($tmp_name$uploddir.$newname.$ext)) 

echo 
"Die Datei erfolgreich hochgeladen.
"

echo 
"Größe: ".$size." Byte
"

echo 
"Name: ".$name."
"

echo 
"MIME-Type: ".$type."
"

echo 
"Ansehen: [url='".$uploddir.$newname.$ext."']".$uploddir.$newname.$ext."[/url]"

else{echo 
"Fehler: Deitei konnte nicht verschoben werden!";} 

else 

echo 
"Ihre Datei ($size) ist über $maxsize Bytes oder gleich 0 KB"


else 

echo 
"Falsche Erweiterung: ".$name


else 
{ } 

function 
main($name$type$size$tmp_name){ 
echo 
"<form action='".$_SERVER['PHP_SELF']."' enctype=\"multipart/form-data\" method='post'>"
echo 
"<input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"".$maxsize."\">"
echo 
"<input type='hidden' name='action' value='upload'>"
echo 
"<input type='hidden' name='op' value='up'>"

echo 
"<table>"
echo 
"<tr>"
echo 
"<td>Datei</td><td><input type='file' name='bild'></td>"
echo 
"</tr><tr>"
echo 
"<td> </td><td><input type='submit' value='Hochladen'></td>"
echo 
"</tr>"
echo 
"</form>"
echo 
"</table>"
 } 
switch(
$op) { 

    case 
"up"
   
up($name$type$size$tmp_name); 
   break; 

    default: 
   
main($name$type$size$tmp_name); 
   break; 


?>
So muss das aussehen...
EDIT: Habs jetzt nur in PHP Tags gesetzt, nach fehlern hab ich noch net geguckt, mach ich jetzt mal... dachte nur dann kann dir schonmal wer andres helfen, weil man da wesentlich besser Fehler und allgemein die struktur erkennen kann.
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 28.04.2005, 14:19  
Erfahrener Benutzer
 
Registriert seit: 20.07.2004
Beiträge: 327
test022
test022 eine Nachricht über ICQ schicken
Standard

Weiss keiner wo das Problem liegt?
test022 ist offline  
Alt 28.04.2005, 14:21  
Gast
 
Beiträge: n/a
Standard

doch, die endung der datei die du versuchst hochzuladen, ist nicht in dem array "extensions" enthalten, hättest du den code selber geschrieben wüsstest du das!
 
Alt 28.04.2005, 14:23  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

1) bitte einrückten vernünftig
2) sowas ist sinnfrei:
PHP-Code:
else
{ } 
3)
error-reporting
Zum testen von Scripts setzt man normalerweise am anfang des scripts (oder direkt in einer config-datei die immer Includet wird)
PHP-Code:
error_reporting(E_ALL); 
damit werden dann alle Fehler ausgegeben.
Mögliche Fehler die dann auftreten und wie man sie beheben kann:
Notice: Use of undefined constant ...
Notice: Undefined variable ...
robo47 ist offline  
Alt 28.04.2005, 14:27  
Erfahrener Benutzer
 
Registriert seit: 20.07.2004
Beiträge: 327
test022
test022 eine Nachricht über ICQ schicken
Standard

mistemef in welcher Zeile?

$extensions = array(".jpg", ".png", ".gif"); oder was meinst du denn?

kannst du etwas genauer sagen wo und was?
test022 ist offline  
Alt 28.04.2005, 14:55  
Gast
 
Beiträge: n/a
Standard

hier werden erlaubte erweiterungen angelegt...!

PHP-Code:
<?php

$extensions 
= array(".jpg"".png"".gif"); // Erlaubte Erweiterungen 

?>
und hier abgefragt..!

PHP-Code:
<?php

if(in_array($ext$extensions)) 

?>
füg also bei extensions die endung deiner datei hoch und gut ist!
 
Alt 28.04.2005, 15:06  
Erfahrener Benutzer
 
Registriert seit: 20.07.2004
Beiträge: 327
test022
test022 eine Nachricht über ICQ schicken
Standard

komme nicht klar, kannst du bitte es genauer erläutern?
Brauche es wirklich sehr.......
test022 ist offline  
Alt 28.04.2005, 15:11  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von test022
komme nicht klar,...
Das merk ich

Zitat:
Zitat von test022
Brauche es wirklich sehr.......
Strengst dich aber nicht an, selber durchzusteigen!

Egal hier der Code, dann ist das Thema abgehakt (hoffentlich):

Sagen wir, du willst ein .tif-Bild hochladen, dann änderst du den Code wie folgt ab:

PHP-Code:
<?php

  $extensions 
= array(".jpg"".png"".gif"".tif"); // Erlaubte Erweiterungen 

?>
gruss
 
Alt 28.04.2005, 15:31  
Erfahrener Benutzer
 
Registriert seit: 20.07.2004
Beiträge: 327
test022
test022 eine Nachricht über ICQ schicken
Standard

Achso das hasst du gemeint, ist aber damit Fehler nicht behoben...
Leider

Probier es doch selber wenn du mir nicht glaubst...
Wenn ich dieses Skript ohne switch($op) code, funktioniert alles, aber ich bin auf switch($op) angewiesen.

Also bitte falls jemand mir helfen kann....

Vielen Dank im Voraus
test022 ist offline  
Alt 28.04.2005, 15:35  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

1) link zur phpinfo

2)
register_globals
http://www.phpfriend.de/ftopic26569.html
-> lesen, verstehen, umsetzen !!
robo47 ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Es erscheint das alte Bild (cache problem) !! mac PHP-Fortgeschrittene 12 18.05.2011 11:23
Upload Problem! Knuff PHP Tipps 2008 9 16.03.2008 18:58
Bildergalerie Problem mit nächstem vorigem Bild danysahne333 PHP Tipps 2006 1 08.09.2006 13:25
upload problem LP PHP Tipps 2006 10 08.02.2006 23:24
Bild upload PHP Tipps 2007 43 22.12.2005 02:04
[Erledigt] Problem mit Upload / GetAllHeaders... PHP-Fortgeschrittene 1 12.06.2005 13:24
Problem mit Upload Code PHP Tipps 2005 3 15.05.2005 15:49
upload zum xten mal aber evt mal n anderes problem mqs PHP Tipps 2004-2 2 14.12.2004 20:29
[Erledigt] PHP Upload (Master Value/Local Value Problem) PHP-Fortgeschrittene 5 23.11.2004 07:21
[Erledigt] Problem mit Datei Upload Server, Hosting und Workstations 6 06.09.2004 04:58
bild problem HTML, Usability und Barrierefreiheit 2 25.08.2004 02:00
[Erledigt] Php skript upload problem! PHP Tipps 2004 2 30.06.2004 00:06
[Erledigt] altes neues problem von datei upload!!! PHP Tipps 2004 3 28.06.2004 19:06
[Erledigt] File Upload: PRoblem mit Upload directory PHP Tipps 2004 3 26.06.2004 13:20
[Erledigt] Upload Problem PHP Tipps 2004 2 18.06.2004 13:44


Alle Zeitangaben in WEZ +2. Es ist jetzt 12:18 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.