php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 31-01-2005, 11:18
FRAD
 Member
Links : Onlinestatus : FRAD ist offline
Registriert seit: Jan 2005
Beiträge: 342
FRAD ist zur Zeit noch ein unbeschriebenes Blatt
Standard Dateityp prüfen

Hi,

würde gerne in meinem Uploadscript prüfen lassen, welcher Dateityp übertragen wird. Es darf nur eine Datei sein, die die Endung *.txt hat.

Habe dies nun in mein Script hinzugefügt.

PHP-Code:
$uploadfile_str $path_str '/' basename($_FILES['userfile']['name']);
        if (!
file_exists($uploadfile_str) && ($thefile_type=="application/msword") && is_uploaded_file($_FILES['userfile']
[
'tmp_name']) && move_uploaded_file
($_FILES['userfile']['tmp_name'], $uploadfile_str)) {
            
$html_str .= 'Die Datei wurde gespeichert.';
           
            
// save file handle in database
            
$query_str 'INSERT INTO files (path, userID, creditorID, rightID, date, size, type) VALUES
 (\'' 
$uploadfile_str '\', ' $sess->getSessVar('userID') . ', ' _USERCREDITOR ', \'admindelfile\', NOW(), 
$_FILES['userfile']['size'] . ', \'' $uploadtype_str '`
\')'
;
            
$result_obj mysql_query($query_str) or die("Query failed : " mysql_error());
           
            
// write log entry
            
$query_str 'INSERT INTO log (timestamp, userID, creditorID, code, text) VALUES (NOW(), ' $sess->getSessVar
('userID') . ', ' _USERCREDITOR ', \'upload\', \''$uploadfile_str '\')';
            
$result_obj mysql_query($query_str) or die("Query failed : " mysql_error());
           
        } else {
            echo 
'Die Datei wurde nicht angenommen.';
            
            
// write log entry
            
$query_str 'INSERT INTO log (timestamp, userID, creditorID, code, text) VALUES (NOW(), ' $sess->getSessVar
('userID') . ', ' _USERCREDITOR ', \'upload failed\', \''$uploadfile_str ' - error: ' $_FILES['userfile']['error'] . '\')';
            
$result_obj mysql_query($query_str) or die("Query failed : " mysql_error());
        } 
Nur leider kommt immer die Meldung "Die Datei wurde nicht angenommen." Wenn ich das wegnehme $thefile_type=="application/msword") funktioniert der Upload.

Der "Prüfbefehl" ist doch korrekt oder und auch richtig plazirt?! In diesem Fall habe ich es mit einer Word Datei probiert...

Vielen Dank schon mal für eure Antworten.

FRAD

Geändert von FRAD (31-01-2005 um 12:04 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 31-01-2005, 11:41
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard Re: Dateityp prüfen

zu allererst mal würdest du gerne http://www.php-resource.de/forum/sho...threadid=47906 lesen und umsetzen.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #3 (permalink)  
Alt 31-01-2005, 12:03
FRAD
 Member
Links : Onlinestatus : FRAD ist offline
Registriert seit: Jan 2005
Beiträge: 342
FRAD ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hi,

es geht bestiummt darum, das du soweit nach rechts scrollen musst oder?

Wenn ich da Absätze rein mache, sieht doch nicht so toll aus!

Aber gut wie ihr wollt...
Mit Zitat antworten
  #4 (permalink)  
Alt 31-01-2005, 12:11
derHund
 PHP Master
Links : Onlinestatus : derHund ist offline
Registriert seit: Aug 2003
Ort: Hundehütte
Beiträge: 5.293
derHund ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Wenn ich da Absätze rein mache, sieht doch nicht so toll aus!
ja, so wie du die absätze gemacht hast

schau doch mal, ob in der variablen auch das steht, was du vermutest ....
__________________
Die Zeit hat ihre Kinder längst gefressen
Mit Zitat antworten
  #5 (permalink)  
Alt 31-01-2005, 12:19
asp2php
 Banned
Links : Onlinestatus : asp2php ist offline
Registriert seit: Feb 2004
Beiträge: 11.745
asp2php ist zur Zeit noch ein unbeschriebenes Blatt
Standard

PHP-Code:
print_r($_FILES); 
ist dein Freund

btw: ich habe immer noch den Scrollbalken, trotz 1280 x 1024
Mit Zitat antworten
  #6 (permalink)  
Alt 31-01-2005, 12:26
Indigo
 Junior Member
Links : Onlinestatus : Indigo ist offline
Registriert seit: Jan 2005
Beiträge: 197
Indigo ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von FRAD
Wenn ich da Absätze rein mache, sieht doch nicht so toll aus!
Wie wär's denn ersteinmal damit anzufangen strukturierten Code zu schreiben, bevor man sich an ein solches Script wagt??

Zum eigentlichen Problem:
Zitat von mina86
Zitat:
Hey! Why not using strrchr() to get file extension:
PHP-Code:
<?php $ext strrchr($_FILES['file']['name'], '.'); ?>
or to get it without '.' at the begining:
PHP-Code:
<?php $ext substr(strrchr($_FILES['file']['name'], '.'), 1); ?>
If you want to update file without any strang characters you can use:
PHP-Code:
<?php
move_uploaded_file
(
  
$_FILES["file"]["tmp_name"], 
  
$dir preg_replace('/[^a-z0-9_\-\.]/i''_'$_FILES["file"]["name"])
);
?>
Mit Zitat antworten
  #7 (permalink)  
Alt 31-01-2005, 12:33
FRAD
 Member
Links : Onlinestatus : FRAD ist offline
Registriert seit: Jan 2005
Beiträge: 342
FRAD ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ich glaub es geht hier um ein MNissverständnis!!! Mein Code ist strukturiert, habe nur hier Zeilenumbrüche gemacht, damit man nicht soweit nach rechts scrollen muss. Dies war das Anliegen von wahsaga

Mit print_r erhalte ich folgendes:

PHP-Code:
Die Datei wurde nicht angenommen.Array ( [userfile] => Array ( [name] =>
 
image001.jpg [type] => image/pjpeg [tmp_name] => /tmp/phpjoDasM [error] => [size] => 446869 ) ) 
Kannst du etwas daraus erkennen wo das Problem liegt? Der Dateityp wird richtig erkannt

Ciao

Geändert von FRAD (31-01-2005 um 12:38 Uhr)
Mit Zitat antworten
  #8 (permalink)  
Alt 31-01-2005, 12:49
Indigo
 Junior Member
Links : Onlinestatus : Indigo ist offline
Registriert seit: Jan 2005
Beiträge: 197
Indigo ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Das mit dem unstruktiert war von meiner Seite missverständlich ausgedrückt, bezog sich eher auf die Tatsache, dass im obigem Code ein ' zuviel ist, was bereits aus der PHP-Ansicht hervorgeht (ab der Mitte wird alles in blauer schrift dargestellt, Kommentare inklusive).

Zitat:
image001.jpg
Da hast du doch bereits den Namen der Datei. Mit Hilfe des von mir bereits erwähnten Befehls strrchr kannst du nun die Dateiendung bestimmen. Wo liegt also dein Problem??
Mit Zitat antworten
  #9 (permalink)  
Alt 31-01-2005, 12:55
Payne_of_Death
 Master
Links : Onlinestatus : Payne_of_Death ist offline
Registriert seit: Dec 2002
Ort: Folterkeller Nr. 18
Beiträge: 2.953
Payne_of_Death ist zur Zeit noch ein unbeschriebenes Blatt
Payne_of_Death eine Nachricht über ICQ schicken Payne_of_Death eine Nachricht über AIM schicken Payne_of_Death eine Nachricht über Yahoo! schicken
Standard

ein

preg_match('@\.(gif|png|jpg|jpeg)$@',$bla)

würde auch schon reichen....
__________________
MfG Payne_of_Death

Manual(s): <-| PHP | MySQL | SELFHTML |->
Merke:
Du brauchst das Rad nicht neu erfinden ! <-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->

Murphy`s Importanst LAWS
Jede Lösung bringt nur neue Probleme
Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
In jedem kleinen Problem steckt ein großes, das gern raus moechte.
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

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 an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni


 

Aktuelle PHP Scripte

Newsmanager

Der Newsmanager ist ein Newssystem und Newsletter in einem. Mit WYSIWYG Editor und E-Mail import aus einer bestehenden MySql Datenbank sowie dynamische Kategorien / Themen Filter.

11.09.2019 Stephan_1972 | Kategorie: PHP/ News
Modelmanager

Der Modelmanager ist ein Webtool für Fotografen, kann als komplette Homepage oder als Webtool installiert werden.

11.09.2019 Stephan_1972 | Kategorie: PHP/ Webservice
ContentLion - Open Source CMS ansehen ContentLion - Open Source CMS

ContentLion ist ein in PHP geschriebenes CMS, bei dem man Seiten, Einstellungen usw. in Ordnern lagern kann

22.08.2019 stevieswebsite2 | Kategorie: PHP/ CMS
 Alle PHP Scripte anzeigen

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