php upload image/jpeg
Ik heb op een site van mij een simpel uploadscript staan voor plaatjes (jpg). Dit heeft ook altijd (half jaar) prima gewerkt.
Alleen is het nu zo dat het script nu zegt dat het plaatje geen jpg is. Haal ik deze check eruit dan werkt het script wel prima maar met niet.
Weet iemand hoe dit kan?
Oh ja belangrijk: chmod is geen optie omdat mijn server (www.sohosted.com) is gebaseerd op windows en die hanteren geen chmod. En het heeft altijd keurig gewerkt...
Mijn script:
Code (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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
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
57
58
59
60
61
62
63
64
65
66
<?php
$site_name = $_SERVER['HTTP_HOST'];
$url_dir = "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF']);
$url_this = "http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
$upload_dir = "upload/";
$upload_url = $url_dir."/upload/";
$message ="";
//create upload_files directory if not exist
//If it does not work, create on your own and change permission.
if (!is_dir("upload")) {
die ("upload_files directory doesn't exist");
}
if ($_FILES['userfile']) {
$message = do_upload($upload_dir, $upload_url);
}
else {
$message = "Kies een afbeelding: ";
}
print $message;
function do_upload($upload_dir, $upload_url) {
$temp_name = $_FILES['userfile']['tmp_name'];
$file_name = $_FILES['userfile']['name'];
$file_type = $_FILES['userfile']['type'];
$file_size = $_FILES['userfile']['size'];
$result = $_FILES['userfile']['error'];
$file_url = $upload_url . $file_name;
$file_path = $upload_dir . $file_name;
//File Name Check
if ( $file_name =="") {
$message = "Geen geldige naam gespecificeerd<br><a href=\"javascript:history.go(-1)\">Ga terug</a>";
return $message;
}
//File Size Check
else if ( $file_size > 1000000) {
$message = "Het bestand mag niet groter zijn dan 1mb<br><a href=\"javascript:history.go(-1)\">Ga terug</a>.";
return $message;
}
//File Type Check
//HIER GAAT HET DUS FOUT!!!
else if ( $file_type != "image/pjpeg" ) {
$message = "Het bestand dat je wilde uploaden is geen JPG bestand..<br><a href=\"javascript:history.go(-1)\">Ga terug</a>" ;
return $message;
}
$result = move_uploaded_file($temp_name, $file_path);
if ($result){
echo 'De afbeelding is succesvol geüpload!<br>
';
include("refresh_page.php");
refresh("resize_me.php", 1);
}
else{
echo ' "Er is iets fout gegaan tijdens het uploaden, probeer het nogmaals<br>
Als het probleem zich voor blijft doen, neem dan contact op met de beheerder
<br><a href="contact.php">Contact-formulier</a><a href="http://www.vdm-trading.nl">Home</a>';
}
}
?>
$site_name = $_SERVER['HTTP_HOST'];
$url_dir = "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF']);
$url_this = "http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
$upload_dir = "upload/";
$upload_url = $url_dir."/upload/";
$message ="";
//create upload_files directory if not exist
//If it does not work, create on your own and change permission.
if (!is_dir("upload")) {
die ("upload_files directory doesn't exist");
}
if ($_FILES['userfile']) {
$message = do_upload($upload_dir, $upload_url);
}
else {
$message = "Kies een afbeelding: ";
}
print $message;
function do_upload($upload_dir, $upload_url) {
$temp_name = $_FILES['userfile']['tmp_name'];
$file_name = $_FILES['userfile']['name'];
$file_type = $_FILES['userfile']['type'];
$file_size = $_FILES['userfile']['size'];
$result = $_FILES['userfile']['error'];
$file_url = $upload_url . $file_name;
$file_path = $upload_dir . $file_name;
//File Name Check
if ( $file_name =="") {
$message = "Geen geldige naam gespecificeerd<br><a href=\"javascript:history.go(-1)\">Ga terug</a>";
return $message;
}
//File Size Check
else if ( $file_size > 1000000) {
$message = "Het bestand mag niet groter zijn dan 1mb<br><a href=\"javascript:history.go(-1)\">Ga terug</a>.";
return $message;
}
//File Type Check
//HIER GAAT HET DUS FOUT!!!
else if ( $file_type != "image/pjpeg" ) {
$message = "Het bestand dat je wilde uploaden is geen JPG bestand..<br><a href=\"javascript:history.go(-1)\">Ga terug</a>" ;
return $message;
}
$result = move_uploaded_file($temp_name, $file_path);
if ($result){
echo 'De afbeelding is succesvol geüpload!<br>
';
include("refresh_page.php");
refresh("resize_me.php", 1);
}
else{
echo ' "Er is iets fout gegaan tijdens het uploaden, probeer het nogmaals<br>
Als het probleem zich voor blijft doen, neem dan contact op met de beheerder
<br><a href="contact.php">Contact-formulier</a><a href="http://www.vdm-trading.nl">Home</a>';
}
}
?>
Alvast bedankt.
3pinter
Er zijn nog geen reacties op dit bericht.