Toon posts:

[php] uploade en rename maar toch..

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb dit script:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
<?
 

  if($file) 
  { 
    // Filename + extensie van geuploade bestand 
    $filename  = $HTTP_POST_FILES[file][name]; 
    $size = $HTTP_POST_FILES[file][size]; 
    $extensie = substr($filename, -3); 

    // Check of extensie voldoet aan eis (in dit geval .jpg) 
    if (strtoupper($extensie) != "JPG" &amp;amp;&amp;amp; strtoupper($extensie) != "GIF") 
    { 
    echo "U kan enkel JPG- en GIF-bestanden uploaden."; 
    } 
    else 
    { 
    // Check file size 
    if ($size > 51200) 
        print("Uw foto mag niet groter zijn dan 50 Kb"); 
      else 
      { 
    // Upload path 
    $destination = "/usr/local/psa/home/vhosts/hannelore.be/httpdocs/test/"; 
    $length =  strlen($filename); 
    $name = "pic"; 
     // $name = substr($filename, 0, $length - 4);   
    $i = 0; 
    $tempname = $name; 

    // Check of file al bestaat, zo ja, filename 'verhogen' 
    while (file_exists($destination . $tempname . $i . ".".$extensie)) 
    { 
      $i = $i + 1; 
    } 

    $name = $name . $i; 

    move_uploaded_file($file, $destination . $name . ".".$extensie); 
    echo "File ".$name.".".$extensie." uploaded succesfully!"; 
    } 
  } 
} 
?> 





<form action=upload.php method=post enctype=\"multipart/form-data\"> 
       Klik op Bladeren/Browse om uw foto te selecteren.<br> 
       Let er op dat uw foto van het type <b>GIF</b> of <b>JPG</b> is en niet groter dan <b>50 kB</b>.<br><br> 
       <input type=file name=file> 
       <br><br><br> 
      <input type=submit value=Upload> 
       </form>

Als het goed is upload hij een bestand bijv blaat.gif en renamed hij hem naar bijv 01.gif.
Maar telkens als ik upload krijg ik deze error: U kan enkel JPG- en GIF-bestanden uploaden.

Ik upload wel een .gif maar hij geeft telkens die error, ik kan de fout niet vinden.

  • elnino
  • Registratie: Augustus 2001
  • Laatst online: 03-09 05:13
[dusty-stijl]
MIME
[/dusty-stijl]

Je kunt beter op MIME-types checken.

Verwijderd

Topicstarter
Klopt het script voor de rest wel?

  • Grum
  • Registratie: Juni 2001
  • Niet online
welke error geeftie ?
wrom staat het niet tussen [ php][/php ] tags ?
zet error_reporting(E_ALL); es erboven

pom pom :P

Verwijderd

Topicstarter
Heb erboven gezet, maar krijg dit: Warning: Undefined variable: file in f:\www\blaat\up.php on line 3

Voor de rest geen error.

  • Arnim
  • Registratie: Juni 2001
  • Laatst online: 04-09 15:49
Dan krijgt hij dus geen file binnen, of zie ik dat verkeerd?

Team ColdFusion


Verwijderd

Topicstarter
Je hebt gelijk ;) ik snap het niet.

  • Grum
  • Registratie: Juni 2001
  • Niet online
maak van je eerste if($file) es if(isset($file)) en maak der een 'else print "<h1> ARGHHH!!!!!</h1>";' bij onderin :)

  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 00:12

BierPul

2 koffie graag

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<?
 
  if($file) 
  { 
    // Filename + extensie van geuploade bestand 
    $filename  = $HTTP_POST_FILES[file][name]; 
    $size = $HTTP_POST_FILES[file][size]; 
    $extensie = substr($filename, -3); 

    // Check of extensie voldoet aan eis (in dit geval .jpg) 
    if (strtoupper($extensie) != "JPG" &amp;amp;amp;amp;&amp;amp;amp;amp; strtoupper($extensie) != "GIF") 
    { 
      echo "U kan enkel JPG- en GIF-bestanden uploaden."; 
    } 
    else 
    { 
      // Check file size 
      if ($size > 51200) 
          print("Uw foto mag niet groter zijn dan 50 Kb"); 
        else 
        { 
      // Upload path 
      $destination = "/usr/local/psa/home/vhosts/hannelore.be/httpdocs/test/"; 
      $length =  strlen($filename); 
      $name = "pic"; 
     // $name = substr($filename, 0, $length - 4);   
      $i = 0; 
      $tempname = $name; 

      // Check of file al bestaat, zo ja, filename 'verhogen' 
      while (file_exists($destination . $tempname . $i . ".".$extensie)) 
      { 
        $i = $i + 1; 
      } 

      $name = $name . $i; 

      move_uploaded_file($file, $destination . $name . ".".$extensie); 
      echo "File ".$name.".".$extensie." uploaded succesfully!"; 
    } 
  } 
} 
?> 
?>

ff duidelijker :)

en idd check op mimetype is een stukje saver als dit stel dat ik een txt file hernoem naar blaat.gif :)
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
<?
$allowed_types = array("image/gif","image/pjpeg","image/jpeg");

if (in_array($bestand_type,$allowed_types)) {

uploaden

} else {

Niet uploaden

}
?>

ff quick & dirty maar zo zou het moeten volgens mij :)

Ja man

Pagina: 1