Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Dateityp von hochgeladenen Dateien auslesen

Frage Entwicklung PHP

Mitglied: DeeDee0815

DeeDee0815 (Level 1) - Jetzt verbinden

10.11.2006, aktualisiert 14.11.2006, 7666 Aufrufe, 4 Kommentare

Hallo,

ich möchte überprüfen, ob eine hochgeladene Datei im TARGZ-Format vorliegt. Wie macht man das? Bei Bildern geht das ja mit getimagesize(), das hilft aber logischer Weise nicht bei Archiven. Die Funktion filetype http://us2.php.net/filetype hilft mir, jedenfalls mit dem unter dem Link beschriebenem Syntax nicht weiter. Ich hätte es - wie gesagt - schon gerne etwas genauer als fifo, char, dir, block, link, file oder unknown.

Gruß
DeeDee0815
Mitglied: Dani
10.11.2006 um 19:13 Uhr
Hi,
also so müsste es gehen. Du musst halt noch den Pfad anpassen und die Dateitypen.

01.
if($_FILES["file"]["name"]!="") //Wurde ein Bild überhaupt ausgewählt? 
02.
03.
	// Variabeln festlegen für Bild-Upload 
04.
	$allowed_types = "(jpg|jpeg|gif)"; //Erlaubte Endungen des Bildes 
05.
	$name=$_FILES["file"]["name"]; //Bildname (beispiel.jpg) in Variable $bildname zuweisen 
06.
	$name=str_ireplace(' ', "_", $name); //Leerzeichen werden durch _ ersetzt 
07.
 
08.
	// Existiert das Bild schon auf dem Server? 
09.
	if(file_exists("PFAD/$name")) 
10.
11.
		echo "<h2><b>Der Dateiname des gewünschten Bildes ist bereits vorhanden, 
12.
Sie müssen den Bildnamen umbenennen!</b></h2>"; //Ausgabe der Fehlermeldung 
13.
14.
	else //Andernfalls, wenn das Bild auf dem Server nicht existiert 
15.
16.
		// Wurde wirklich eine Datei hochgeladen? 
17.
		if(is_uploaded_file($_FILES["file"]["tmp_name"])) 
18.
19.
			// Gültige Endung? ($ = Am Ende des Dateinamens) (/i = Groß- Kleinschreibung nicht berücksichtigen) 
20.
			if(preg_match("/\." . $allowed_types . "$/i", $_FILES["file"]["name"])) 
21.
22.
				ECHO "DATEI OK" 
23.
24.
			else //Datei ungültige Endung 
25.
26.
				echo "<h2><b>Die Datei besitzt eine ungültige Endung.</b></h2>"
27.
28.
29.
		else //Keine Datei angegeben 
30.
31.
			echo "<h2><b>Keine Datei zum Hochladen angegeben.</b></h2>"
32.
33.
 
34.
35.
	}
Gruß
Dani
Bitte warten ..
Mitglied: DeeDee0815
10.11.2006 um 20:07 Uhr
Hi Dani,

erstmal danke für deine Hilfe. Doch dies ist nicht ganz das was ich suche. Denn die überprüfung des Dateityps erfolgt hier nur durch überprüfen der Dateiendung. Geht das nicht auch sicherer? Außerdem könnte es ja sein, dass jemand seine Dateien ohne Endung speichert - der Jenige könnte dann keine Datei hochladen.

Gruß
DeeDee0815
Bitte warten ..
Mitglied: mf
14.11.2006 um 09:05 Uhr
Probiere es mal mit dem Shell-Command "file <dateiname>"
Hier bekommst du Deine gewünschten Information.

ws-linux-01:/usr# file /usr/share/gettext/archive.tar.gz
/usr/share/gettext/archive.tar.gz: gzip compressed data, from Unix
ws-linux-01:/usr#

Die Ausführung kannst du mit system() oder exec() machen. Die Auswertung dann wiederrum in PHP. mehr dazu unter php.net/system und php.net/exec
Bitte warten ..
Mitglied: DeeDee0815
14.11.2006 um 18:16 Uhr
Ok danke für deine Hilfe. Leider habe ich keinen Rootserver, sondern nutze kostenlosen Webspace. Folglich sind die Funktionen exec() bzw. system() deaktiviert. Aber so wie ich das verstehe, gibt es keine PHP-Funktion dafür.

Trotzdem danke - immerhin gut zu wissen, wie man das macht.

Gruß
DeeDee0815
Bitte warten ..
Ähnliche Inhalte
Windows Server
gelöst Datei-Ordner Überwachung für bestimmte Dateitypen (4)

Frage von hushpuppies zum Thema Windows Server ...

Batch & Shell
gelöst Datei zeilenweise auslesen - es passiert aber nichts (3)

Frage von Nagus zum Thema Batch & Shell ...

Batch & Shell
Dateitypen aus Archiven löschen via Batch! (5)

Frage von Nightowl71 zum Thema Batch & Shell ...

Windows Server
Unerwünschte Dateitypen auf Fileserver blockieren (4)

Frage von manu90 zum Thema Windows Server ...

Neue Wissensbeiträge
Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(3)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Windows 10

Windows 10: Erste Anmeldung Animation deaktivieren

(3)

Anleitung von alemanne21 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Netzwerkgrundlagen
Kann auf Freigabe nicht Zugreifen (19)

Frage von leon123 zum Thema Netzwerkgrundlagen ...

Windows Server
gelöst Neues KB für W10 1607 und W2K16 wieder mal nicht im WSUS 3.0, hat das noch jemand? (16)

Frage von departure69 zum Thema Windows Server ...

Windows Server
DC virtualisieren + wie sichern (SingleDC-Environment) (12)

Frage von KMUlife zum Thema Windows Server ...

Festplatten, SSD, Raid
RAID Controller mit Trim-Funktion, wie ermitteln (11)

Frage von pixel24 zum Thema Festplatten, SSD, Raid ...