Afbeelding uploaden ..
ik heb dit script van een andere site :
Code (php)
<form method="post" action="index.php?p=upload.php&type=afb&subpage=upload" enctype="multipart/form-data">
Foto
:<br />
<input type="file" name="imagefile" class="form">
<br /><br />
<input name="submit" type="submit" value="Upload" class="form">
</form>
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
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
<? } else if (isset($_GET['subpage']) && $_GET['subpage'] == 'upload') { // Uploading/Resizing Script
$url = $_FILES['imagefile']['name']; // Set $url To Equal The Filename For Later Use
if ($_FILES['imagefile']['type'] == "image/jpg" || $_FILES['imagefile']['type'] == "image/jpeg" || $_FILES['imagefile']['type'] == "image/pjpeg") {
$file_ext = strrchr($_FILES['imagefile']['name'], '.'); // Get The File Extention In The Format Of , For Instance, .jpg, .gif or .php
$copy = copy($_FILES['imagefile']['tmp_name'], "$idir" . $_FILES['imagefile']['name']); // Move Image From Temporary Location To Permanent Location
if ($copy) { // If The Script Was Able To Copy The Image To It's Permanent Location
print 'Image uploaded successfully.<br />'; // Was Able To Successfully Upload Image
$simg = imagecreatefromjpeg("$idir" . $url); // Make A New Temporary Image To Create The Thumbanil From
$currwidth = imagesx($simg); // Current Image Width
$currheight = imagesy($simg); // Current Image Height
if ($currheight > $currwidth) { // If Height Is Greater Than Width
$zoom = $twidth / $currheight; // Length Ratio For Width
$newheight = $theight; // Height Is Equal To Max Height
$newwidth = $currwidth * $zoom; // Creates The New Width
} else { // Otherwise, Assume Width Is Greater Than Height (Will Produce Same Result If Width Is Equal To Height)
$zoom = $twidth / $currwidth; // Length Ratio For Height
$newwidth = $twidth; // Width Is Equal To Max Width
$newheight = $currheight * $zoom; // Creates The New Height
}
$dimg = imagecreate($newwidth, $newheight); // Make New Image For Thumbnail
imagetruecolortopalette($simg, false, 256); // Create New Color Pallete
$palsize = ImageColorsTotal($simg);
for ($i = 0; $i < $palsize; $i++) { // Counting Colors In The Image
$colors = ImageColorsForIndex($simg, $i); // Number Of Colors Used
ImageColorAllocate($dimg, $colors['red'], $colors['green'], $colors['blue']); // Tell The Server What Colors This Image Will Use
}
imagecopyresized($dimg, $simg, 0, 0, 0, 0, $newwidth, $newheight, $currwidth, $currheight); // Copy Resized Image To The New Image (So We Can Save It)
imagejpeg($dimg, "$tdir" . $url); // Saving The Image
imagedestroy($simg); // Destroying The Temporary Image
imagedestroy($dimg); // Destroying The Other Temporary Image
print 'plaatje succesvol geupload.'; // Resize successful
} else {
print '<font color="#FF0000">ERROR: fout tijdens uploaden.</font>'; // Error Message If Upload Failed
}
} else {
print '<font color="#FF0000">ERROR: verkeerde extensie '; // Error Message If Filetype Is Wrong
print $file_ext; // Show The Invalid File's Extention
print '.</font>';
}
}
?>
$url = $_FILES['imagefile']['name']; // Set $url To Equal The Filename For Later Use
if ($_FILES['imagefile']['type'] == "image/jpg" || $_FILES['imagefile']['type'] == "image/jpeg" || $_FILES['imagefile']['type'] == "image/pjpeg") {
$file_ext = strrchr($_FILES['imagefile']['name'], '.'); // Get The File Extention In The Format Of , For Instance, .jpg, .gif or .php
$copy = copy($_FILES['imagefile']['tmp_name'], "$idir" . $_FILES['imagefile']['name']); // Move Image From Temporary Location To Permanent Location
if ($copy) { // If The Script Was Able To Copy The Image To It's Permanent Location
print 'Image uploaded successfully.<br />'; // Was Able To Successfully Upload Image
$simg = imagecreatefromjpeg("$idir" . $url); // Make A New Temporary Image To Create The Thumbanil From
$currwidth = imagesx($simg); // Current Image Width
$currheight = imagesy($simg); // Current Image Height
if ($currheight > $currwidth) { // If Height Is Greater Than Width
$zoom = $twidth / $currheight; // Length Ratio For Width
$newheight = $theight; // Height Is Equal To Max Height
$newwidth = $currwidth * $zoom; // Creates The New Width
} else { // Otherwise, Assume Width Is Greater Than Height (Will Produce Same Result If Width Is Equal To Height)
$zoom = $twidth / $currwidth; // Length Ratio For Height
$newwidth = $twidth; // Width Is Equal To Max Width
$newheight = $currheight * $zoom; // Creates The New Height
}
$dimg = imagecreate($newwidth, $newheight); // Make New Image For Thumbnail
imagetruecolortopalette($simg, false, 256); // Create New Color Pallete
$palsize = ImageColorsTotal($simg);
for ($i = 0; $i < $palsize; $i++) { // Counting Colors In The Image
$colors = ImageColorsForIndex($simg, $i); // Number Of Colors Used
ImageColorAllocate($dimg, $colors['red'], $colors['green'], $colors['blue']); // Tell The Server What Colors This Image Will Use
}
imagecopyresized($dimg, $simg, 0, 0, 0, 0, $newwidth, $newheight, $currwidth, $currheight); // Copy Resized Image To The New Image (So We Can Save It)
imagejpeg($dimg, "$tdir" . $url); // Saving The Image
imagedestroy($simg); // Destroying The Temporary Image
imagedestroy($dimg); // Destroying The Other Temporary Image
print 'plaatje succesvol geupload.'; // Resize successful
} else {
print '<font color="#FF0000">ERROR: fout tijdens uploaden.</font>'; // Error Message If Upload Failed
}
} else {
print '<font color="#FF0000">ERROR: verkeerde extensie '; // Error Message If Filetype Is Wrong
print $file_ext; // Show The Invalid File's Extention
print '.</font>';
}
}
?>
maar bij elke foto die ik probeer upteloade zegt hij dt het de verkeerde extensie is terwijl het zekerwete de goede is.
wat kan het probleem zijn?
groeten, jesper
Maak eens een scriptje met een var_dump van $_FILES['imagefile'], kijk dan bij type. Zo kun je zien of het klopt. Overigs, ik kan gewoon een gif plaatje uploaden, of een php bestand... Geen enkel probleem met dat script.
Bij mij doet hij het wel, als ik een jpg upload
ow...tog bedankt
jesper schreef op 09.12.2007 20:37:
ow...tog bedankt
Geen dank joh, ik ben blij dat het werkt.
Hehehe.
weet iemand waarom het bij mij niet werkt?
PS hij zegt trouwens steeds "ERROR: verkeerde extensie ." maar hij zegt de var $file_ext niet
dat zit in het laatste stukje
Code (php)
Gewijzigd op 01/01/1970 01:00:00 door nvt nvt
Verander die $file_ext anders eens in $_FILES['imagefile']['type'].
http://gtaweb.nl/Nieuwe%20map/upload1.php kijk bij mij doet hij het wel
ik denk dat het komt door: index.php?p=upload.php&type=afb&subpage=upload je moet er denk ik gewoon een upload.php maken zoals dit: upload.php?type=afb&subpage=upload
ik denk dat het komt door: index.php?p=upload.php&type=afb&subpage=upload je moet er denk ik gewoon een upload.php maken zoals dit: upload.php?type=afb&subpage=upload
Gewijzigd op 01/01/1970 01:00:00 door mvos
mvos schreef op 09.12.2007 23:04:
http://gtaweb.nl/Nieuwe%20map/upload1.php kijk bij mij doet hij het wel
ik denk dat het komt door: index.php?p=upload.php&type=afb&subpage=upload je moet er denk ik gewoon een upload.php maken zoals dit: upload.php?type=afb&subpage=upload
ik denk dat het komt door: index.php?p=upload.php&type=afb&subpage=upload je moet er denk ik gewoon een upload.php maken zoals dit: upload.php?type=afb&subpage=upload
Dat maakt dus niks uit. Het zou ook niks uit moeten maken, omdat p nergens wordt gebruikt (iig, ik zie hem zo snel niet).
Als het goed is heb je dus nu mijn avatar op je server staan:
Quote:
Image uploaded successfully.
plaatje succesvol geupload.
plaatje succesvol geupload.
En dat heb je dus ook
het word wel gebruikt in <form> bij action. ik vind het ook een beetje raar maar ik heb dus alleeen die url aangepast en hij doet het.
mvos schreef op 10.12.2007 16:42:
het word wel gebruikt in <form> bij action. ik vind het ook een beetje raar maar ik heb dus alleeen die url aangepast en hij doet het.
Maar als je dat niet aanpast, dan doet ie het ook. Zie mijn bewijs :-).
dat is toch mijn link en daar is het aangepast
mvos schreef op 10.12.2007 16:58:
dat is toch mijn link en daar is het aangepast
Maar je hoeft niet per se van die form op jou site gebruik te maken. Ik kan hier ook gewoon een form in mijn html zetten.
Of (zoals ik heb gedaan) pak firebug, en verander het form.
Gewijzigd op 01/01/1970 01:00:00 door mvos
ik 4.4.7
ik 5.2.2
weet iemand wat in dit script wel werkt bij 5.2.2. en niet bij 4.4.7 ?
oke, ik heb upgeload bij kilu.de en daar werkt hij gewoon goed, het licht dus gewoon aan mijn server.
jesper schreef op 10.12.2007 18:21:
Je zou de gebruikte functies eens op kunnen vragen op php.net en dan kijken vanaf welke versie het ondersteund wordt.weet iemand wat in dit script wel werkt bij 5.2.2. en niet bij 4.4.7 ?
ps: Je plaatste 2 posts achter elkaar, hier moet 24 uur tussen zitten, anders bump je je eigen topic steeds omhoog en dat wekt weer irritatie op bij andere leden omdat hun topic steeds verder naar onder verdwijnt enz enz ... Je begrijpt het wel denk ik :)
Mvg,
Erik