login  Naam:   Wachtwoord: 
Registreer je!
 Forum

if statement

Offline Speedy - 22/04/2011 18:57
Avatar van SpeedyPHP interesse Beste

Om ervoor te zorgen dat men geen te grote bestanden upload op mijn server, heb ik deze beperkingen geformuleerd:
  1. if ((($_FILES['photo']['type'] == 'image/gif') || ($_FILES['photo']['type'] == 'image/jpg')) && ($_FILES['photo']['size'] < 5000000) && ($_POST[titel] != "" AND $_POST[content] != ""))


Het volledig script werkt, behalve dat hij alle formaten upload. (de andere beperkingen worden wel gescreend)
Hoe zou dat komen?

3 antwoorden

Gesponsorde links
Offline woods - 22/04/2011 19:59
Avatar van woods Nieuw lid Misschien kun je je statement wat verdelen over verschillende IFjes. dan kom je misschien sneller achter je fout. ook zijn die vele ()haakjes wat overbodig, zet een OR gewoon in een nieuwe if
Offline mathiasB - 17/05/2011 16:10
Avatar van mathiasB HTML interesse Als je wil checken of het gewoonweg een afbeelding is kan je dit zo doen:
  1. if (!getimagesize($_FILES['photo']['tmp_name'])) {
  2. // geen geldige afbeelding
  3. }else {
  4. // geldige afbeelding
  5. }


Als je echt op extensies wil checken splits je misschien best zelf de string om zo de extensie te zoeken met bijvoorbeeld:

  1. function getExtensie($str) {
  2. $i = strrpos($str,".");
  3. if (!$i) { return ""; }
  4. $l = strlen($str) - $i;
  5. $ext = substr($str,$i+1,$l);
  6. return $ext;
  7. }

wat dan bijvoorbeeld jpg teruggeeft.
Offline ArieMedia - 17/05/2011 16:12 (laatste wijziging 17/05/2011 16:13)
Avatar van ArieMedia Gouden medaille

PHP ver gevorderde
mathiasB schreef:
Als je wil checken of het gewoonweg een afbeelding is kan je dit zo doen:
[..code..]

Als je echt op extensies wil checken splits je misschien best zelf de string om zo de extensie te zoeken met bijvoorbeeld:

[..code..]
wat dan bijvoorbeeld jpg teruggeeft.
PHP.net: pathinfo werkt veel sneller en beter
PHP.net
  1. <?php
  2. $path_parts = pathinfo('/www/htdocs/inc/lib.inc.php');
  3.  
  4. echo $path_parts['dirname'], "\n";
  5. echo $path_parts['basename'], "\n";
  6. echo $path_parts['extension'], "\n";
  7. echo $path_parts['filename'], "\n"; // since PHP 5.2.0
  8. ?>
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.199s