pajoo Posted January 19, 2012 Share Posted January 19, 2012 When i registred and try to upload a picture it doesnt show the picture but only a little icon that the picture doesnt excist. this is my code: if(!empty($_FILES['photo'])) { if ((($_FILES["photo"]["type"] == "image/gif") || ($_FILES["photo"]["type"] == "image/jpeg") || ($_FILES["photo"]["type"] == "image/pjpeg") || ($_FILES["photo"]["type"] == "image/png")) && ($_FILES["photo"]["size"] < 1048576)){ $fileName = $_FILES['photo']['name']; $tmpName = $_FILES['photo']['tmp_name']; $fileSize = $_FILES['photo']['size']; $fileType = $_FILES['photo']['type']; if(!get_magic_quotes_gpc()){ if(isset($fileName)) { $fileName = addslashes($fileName); } } $url = $_FILES['photo']['name']; $idir = "upload/"; // Path To Images Directory $tdir = "upload/thumbs/"; // Path To Thumbnails Directory $twidth = "125"; // Maximum Width For Thumbnail Images $theight = "125"; // Maximum Height For Thumbnail Images $simg = imagecreatefromjpeg($_FILES["photo"]["tmp_name"]); // 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 $tmpName = "$tdir" . $url; $fp = fopen($tmpName, 'r'); $imgcontent = fread($fp, filesize($tmpName)); $imgcontent = addslashes($imgcontent); fclose($fp); unlink($tmpName); imagedestroy($simg); // Destroying The Temporary Image imagedestroy($dimg); // Destroying The Other Temporary Image Quote Link to comment https://forums.phpfreaks.com/topic/255353-image-uploading/ Share on other sites More sharing options...
Muddy_Funster Posted January 19, 2012 Share Posted January 19, 2012 do you get any errors? what is your code if the file does not match your if statement? have you checked that the file is on the server and is in the right folder? is your code for displaying the image accurate including case used in file and folder names? Quote Link to comment https://forums.phpfreaks.com/topic/255353-image-uploading/#findComment-1309203 Share on other sites More sharing options...
pajoo Posted January 19, 2012 Author Share Posted January 19, 2012 I dont get any errors, only one but im not even sure if that is an error, it's a little icon that is used for when an image is lost. Yes everything els is correct, any other options? Thanks! Quote Link to comment https://forums.phpfreaks.com/topic/255353-image-uploading/#findComment-1309207 Share on other sites More sharing options...
litebearer Posted January 19, 2012 Share Posted January 19, 2012 immediately after this line... $tmpName = "$tdir" . $url; type this... echo $tmpName; what does it say? Quote Link to comment https://forums.phpfreaks.com/topic/255353-image-uploading/#findComment-1309208 Share on other sites More sharing options...
pajoo Posted January 19, 2012 Author Share Posted January 19, 2012 ow crap! i've send the wrong code! sorry guys! this is the right code: if(!empty($_FILES['photo'])) { if($_FILES['photo']['size'] > 0) { $fileName = $_FILES['photo']['name']; $tmpName = $_FILES['photo']['tmp_name']; $fileSize = $_FILES['photo']['size']; $fileType = $_FILES['photo']['type']; $fp = fopen($tmpName, 'r'); $imgcontent = fread($fp, filesize($tmpName)); $imgcontent = addslashes($imgcontent); fclose($fp); } if(!get_magic_quotes_gpc()){ if(isset($fileName)) { $fileName = addslashes($fileName); } Quote Link to comment https://forums.phpfreaks.com/topic/255353-image-uploading/#findComment-1309210 Share on other sites More sharing options...
AyKay47 Posted January 19, 2012 Share Posted January 19, 2012 ow crap! i've send the wrong code! sorry guys! this is the right code: if(!empty($_FILES['photo'])) { if($_FILES['photo']['size'] > 0) { $fileName = $_FILES['photo']['name']; $tmpName = $_FILES['photo']['tmp_name']; $fileSize = $_FILES['photo']['size']; $fileType = $_FILES['photo']['type']; $fp = fopen($tmpName, 'r'); $imgcontent = fread($fp, filesize($tmpName)); $imgcontent = addslashes($imgcontent); fclose($fp); } if(!get_magic_quotes_gpc()){ if(isset($fileName)) { $fileName = addslashes($fileName); } so where exactly in this code are you uploading the file? Quote Link to comment https://forums.phpfreaks.com/topic/255353-image-uploading/#findComment-1309211 Share on other sites More sharing options...
pajoo Posted January 19, 2012 Author Share Posted January 19, 2012 I'm kinda new to PHP so i think its in there, isn't it? Quote Link to comment https://forums.phpfreaks.com/topic/255353-image-uploading/#findComment-1309213 Share on other sites More sharing options...
AyKay47 Posted January 19, 2012 Share Posted January 19, 2012 I'm kinda new to PHP so i think its in there, isn't it? no, you are reading the temp file and not doing anything with it, here is a rough skeleton of what you need to upload an image, you will need to look at some more information about this subject to fill in the blanks.. if(!empty($_FILES['photo'])) { if($_FILES['photo']['size'] > 0) { $fileName = $_FILES['photo']['name']; $tmpName = $_FILES['photo']['tmp_name']; $fileType = $_FILES['photo']['type']; $allowed_types = array("image/jpg","image/jpeg","image/gif","image/png"); //array to check for valid file type if(in_array($fileType,$allowed_types)) { //if the file is a valid type $image_path = "path/to/desired/location/" . $fileName; //path to write file if(move_uploaded_file($tmpName,$image_path)) { //if writing to path was successful echo "hurray"; } } } now I left a few things out, including the debugging of your script and perhaps one or two other checks that you can perform on your file before uploading, that is where you will have to fill in the blanks, typically,move_uploaded_file is used to upload a file to a specified path. Quote Link to comment https://forums.phpfreaks.com/topic/255353-image-uploading/#findComment-1309214 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.