Seite 1 von 1
Format ändern in php
Verfasst: 22.02.2004 02:28
von rcbcom
Hallo,
ich mochte das users auf meine HP Bilder und Texte in verschieden Formaten hochladen können!
Ich habe folgenden Code-ausschnitt zb für gif/jpg:
Code: Alles auswählen
switch ($filetype)
{
case 'image/gif':
$pic_filetype = '.gif';
break;
default:
case 'image/jpg':
$pic_filetype = '.jpg';
break;
default:
message_die(GENERAL_ERROR, $lang['Not_allowed_file_type']);
}
Aber es läuft nicht so wie ich das will bekomme die Meldung das der Typ Falsch ist und kann nicht hoch geladen werden. ich habe dies mit eine switch gemacht. Wie kann ich das denn am besten lösen das die Bestimmten Daten-Typen hochladen kann.
Danke im voraus..
Verfasst: 22.02.2004 04:04
von k-5
$filetyp kriegst du wohl über
Code: Alles auswählen
$size = getimagesize($filename)
$filetyp = $size[mime]
?
das funktioniert aber erst ab php 4.3 .. könnte dadran liegen ..
in dem fall mußte den umweg über
if( $size[2] == 1) -> gif
if( $size[2] == 2) -> jpg
usw gehen ..
siehe ..
http://de.php.net/manual/en/function.getimagesize.php
hm ok .. seh grad das zweite default: .. das sollte natürlich auchned da sein .. (hätte aber bei einem gif keine probs machen sollen)
RE
Verfasst: 22.02.2004 07:47
von rcbcom
Hi,
$size = getimagesize($filename)
$filetyp = $size[mime]
den code muss ich vor mein schwitsch-anweisung erstzen?
mmh gute frage was für eine php-version läuft da muss ich selber mal schauen

sondt muss ich alles mit if -esle machen.
Gibs den auch eine möglich keit wo man kein Format/Datentyp angeben muss? Wies sieht den der komplete Code aus wenn ich daten hochladen will in in verschiedenden Daten-Typen [*.*]
Danke nochmals

Verfasst: 22.02.2004 14:30
von k-5
naja .. das wäre halt für bilddaten ..
fürn rest wirds weng komplizierter ..
(ich kenn jedenfalls keine direkte möglichkeit den mime typ für ne upload datei rauszukriegen .. wenn jemand eine weiß wäre dadran durchaus interessiert) ..
ich würde in dem fall den uneleganten weg über die dateiendung nehmen ..
also sowas in der art ..
Code: Alles auswählen
$endung = substr( $file_ori_name, strrpos('.',$file_ori_name) );
switch( $endung ){
case '.txt':
// ..
break;
case '.html':
// ..
break;
default:
// unbekannt
}
da ich keine ahnung hab was du eigentlich später mit den dateien machen willst .. in der regel reicht es aber (bei nem späteren upload) den typ ned weiter zu spezifizieren .. und einfach nen standard binären mime typ zu wählen ..
Verfasst: 22.02.2004 15:58
von Pyramide
k-5 hat geschrieben:(ich kenn jedenfalls keine direkte möglichkeit den mime typ für ne upload datei rauszukriegen .. wenn jemand eine weiß wäre dadran durchaus interessiert)
Der vom Browser übermittelte Mime-Typ befindet sich in
$_FILES['foo']['type'] (Siehe PHP-Handbuch)
Verfasst: 22.02.2004 18:28
von k-5
thx ..
hätte ned gedacht das es so überfällig war mir mal wieder ne neue doku runter zu laden ..
RE
Verfasst: 22.02.2004 23:25
von rcbcom
Danke für den Tipp...
Ja ich habes verstanden dann ist das eine gute möglichkeit wie in php-buch beschreiben. Frage kann ich das auch für die PHP-Version 4.0 anwenden.
Denn ich will ein FTP-Account per auf meine HP einrichten wo berechtigte Personen daten hochladen können.
Oder gib es ein Fertigen MOD den ich auch unabhänig von phpbb nutzen kann
