Autor |
Nachricht |
Benutzer 67169
Account gelöscht Threadersteller
Ort: -
|
Verfasst Do 22.11.2007 18:53
Titel [PHP] Code Checken |
|
|
Hallo also ihr habt es sicherlich schon gemerkt ich bastle nun seit ca. einer Woche an meinem ersten PHP Script.
Es macht echt Spaß aber jetzt raubt es mir den letzten Nerv!
Mein Problem ist das daß Upload Script (was nun eine Dateiendungs Erkennung hat) alle egal welche Endungen sperrt!
ich hab keine Ahnung was da sein kann.
Hier mal der Upload Schnippel aus dem Script:
Code: | if (isset($_POST['upload']))
{
if ($_FILES['userfile']['size'] > 0)
{
if( in_array($_FILES['userfile']['type'], $extensions) )
{
//Die Details der Datei werden ausgegeben.
echo '<fieldset>
<legend>Datei Information</legend>
Vielen Dank!<br /><br />
Ihre IP: '.$ip. '<br />
Name: ' .$_FILES['userfile']['name'] . '<br>
Grösse: ' .$_FILES['userfile']['size'] . ' Byte<br />
Type: ' .$_FILES['userfile']['type'] . '<br /><br />
Datei: <b>' .$adr,$verz,$_FILES['userfile']['name']. '</b>
</fieldset><br />';
//Die Datei bekommt einen Temporaeren Namen
move_uploaded_file($_FILES['userfile']['tmp_name'],
"$path{$_FILES['userfile']['name']}");
//Die Datei bekommt CHMOD 777 Rechte
chmod ("$path{$_FILES['userfile']['name']}" , 0777);
//Informationen ueber den Uplaoder werden gespeichert
$daten = 'Der User '.$ip.' hat am '.$datum.' um '.$zeit.' die Datei '.$_FILES['userfile']['name'] .' Hochgeladen';
$datei_name = 'ip.txt';
$fp = fopen($datei_name, 'a+');
fwrite($fp, $daten);
fclose($fp);
}
else
{
echo '<b>unerlaubte Dateiendung erkannt</b>';
}
}
else
{
echo '<b>Keine Datei Ausgewählt</b>';
}
} |
ich glaube ich habe ein fehler bei der if else verschachtelung oder irgendwo könnte sich das jemand mal durch lesen und ein feedback und ggf. eine löschung schreiben?
Nem.
Zuletzt bearbeitet von am Do 22.11.2007 18:54, insgesamt 1-mal bearbeitet
|
|
|
|
|
chrikle
Dabei seit: 02.05.2002
Ort: NRW
Alter: 47
Geschlecht:
|
Verfasst Do 22.11.2007 19:07
Titel Re: [PHP] Code Checken |
|
|
WebNem hat geschrieben: |
Mein Problem ist das daß Upload Script (was nun eine Dateiendungs Erkennung hat) alle egal welche Endungen sperrt!
ich hab keine Ahnung was da sein kann.
if (isset($_POST['upload']))
{
if ($_FILES['userfile']['size'] > 0)
{
if( in_array($_FILES['userfile']['type'], $extensions) )
{
|
$extensions sollte die Dateiendung enthalten, welche du "erlauben" willst.
Wo wird diese denn definiert?
Gruß
Chris
|
|
|
|
|
Anzeige
|
|
|
Benutzer 67169
Account gelöscht Threadersteller
Ort: -
|
Verfasst Do 22.11.2007 19:13
Titel
|
|
|
ohh sry den wert könnt ihr ja nicht wissen...
Code: | $extensions = array (".jpg", ".JPG", ".jpeg", ".JPEG", ".gif", ".GIF", ".png", ".PNG"); |
|
|
|
|
|
chrikle
Dabei seit: 02.05.2002
Ort: NRW
Alter: 47
Geschlecht:
|
Verfasst Do 22.11.2007 19:19
Titel
|
|
|
WebNem hat geschrieben: | ohh sry den wert könnt ihr ja nicht wissen...
Code: | $extensions = array (".jpg", ".JPG", ".jpeg", ".JPEG", ".gif", ".GIF", ".png", ".PNG"); |
|
Na, da haste ja den Fehler
Das was du da miteinander vergleichts wird nie passen.
Denn $_FILES['userfile']['type'] gibt sowas wie "image/gif" zurück.
Schau mal hier: Upload-Script
gruß
Chris
|
|
|
|
|
Benutzer 67169
Account gelöscht Threadersteller
Ort: -
|
Verfasst Do 22.11.2007 19:26
Titel
|
|
|
hmm jop das macht wenig sinn x mit y zu vergleichen
aber wie geht das denn nun? -.-
|
|
|
|
|
sahnemuh
Dabei seit: 19.06.2003
Ort: /dev/null
Alter: 42
Geschlecht:
|
Verfasst Do 22.11.2007 19:53
Titel
|
|
|
Code: | $mimetypes = array ("image/gif", "image/jpg","image/jpeg","image/pjpeg","image/png");
[...]
if (isset($_POST['upload']))
{
if ($_FILES['userfile']['size'] > 0)
{
if( in_array($_FILES['userfile']['type'], $mimetypes) )
|
|
|
|
|
|
Benutzer 67169
Account gelöscht Threadersteller
Ort: -
|
Verfasst Do 22.11.2007 19:59
Titel
|
|
|
sahnemuh hat geschrieben: | Code: | $mimetypes = array ("image/gif", "image/jpg","image/jpeg","image/pjpeg","image/png");
[...]
if (isset($_POST['upload']))
{
if ($_FILES['userfile']['size'] > 0)
{
if( in_array($_FILES['userfile']['type'], $mimetypes) )
|
|
jupp das wär klar gewesen, aber ich wollte das doch schon iwie so haben das ich oben im array nur die endungen habe. damit alles leicht und ohne Vorkenntnis wartbar ist.
|
|
|
|
|
m
Moderator
Dabei seit: 18.11.2004
Ort: -
Alter: -
Geschlecht:
|
Verfasst Do 22.11.2007 20:04
Titel
|
|
|
Das Ding ist er will wohl an die Extension rankommen. Benutzt du am besten strrchr() oder substr() o.ä.
Edit: hab ich gerade fünf Minuten für den Post gebraucht? Ja also willst du das, dann schau in die Doku
zu den besagten Funktionen. Naja, dennoch, ob das so ne gute Idee ist,
Zuletzt bearbeitet von m am Do 22.11.2007 20:07, insgesamt 1-mal bearbeitet
|
|
|
|
|
|
|
|
Ähnliche Themen |
[php] include checken
PDF checken per Kommandozeile
[JQuery] Checken ob ein Plugin aktiv ist?
[JS]Alle Radio-Buttons checken
[suche] Programm zum checken toter Links
QR Code
|
|