garydt Posted March 8, 2007 Share Posted March 8, 2007 I'm getting this error- Parse error: parse error, unexpected $end in C:\Program Files\xampp\htdocs\epeople\upim.php on line 142 I'm trying to upload an image and store it in directory 'uploads'. Do i need to change the folder's permissioon sercurity settings and, if so, to what? <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Untitled Document</title> </head> <body> <?php if ($_SERVER['REQUEST_METHOD'] == "POST") { /* SUBMITTED INFORMATION - use what you need * temporary filename (pointer): $imgfile * original filename : $imgfile_name * size of uploaded file : $imgfile_size * mime-type of uploaded file : $imgfile_type */ /*== upload directory where the file will be stored relative to where script is run ==*/ $uploaddir = "uploads"; //-- RE-SIZING UPLOADED IMAGE /*== only resize if the image is larger than 250 x 200 ==*/ $imgsize = GetImageSize($imgfile); /*== check size 0=width, 1=height ==*/ if (($imgsize[0] > 250) || ($imgsize[1] > 200)) { /*== temp image file -- use "tempnam()" to generate the temp file name. This is done so if multiple people access the script at once they won't ruin each other's temp file ==*/ $tmpimg = tempnam("/tmp", "MKUP"); /*== RESIZE PROCESS 1. decompress jpeg image to pnm file (a raw image type) 2. scale pnm image 3. compress pnm file to jpeg image ==*/ /*== Step 1: djpeg decompresses jpeg to pnm ==*/ system("djpeg $imgfile >$tmpimg"); /*== Steps 2&3: scale image using pnmscale and then pipe into cjpeg to output jpeg file ==*/ system("pnmscale -xy 250 200 $tmpimg | cjpeg -smoo 10 -qual 50 >$imgfile"); /*== remove temp image ==*/ unlink($tmpimg); } /*== setup final file location and name ==*/ /*== change spaces to underscores in filename ==*/ $final_filename = str_replace(" ", "_", $imgfile_name); $newfile = $uploaddir . "/$final_filename"; /*== do extra security check to prevent malicious abuse==*/ if (is_uploaded_file($imgfile)) { /*== move file to proper directory ==*/ if (!copy($imgfile,"$newfile")) { /*== if an error occurs the file could not be written, read or possibly does not exist ==*/ print "Error Uploading File."; exit(); } } unlink($imgfile); print("<img src=\"$final_filename\">"); $user = $_SESSION['MM_Username']; if ($_POST['Submit']) { if ($_POST['MAX_FILE_SIZE'] >= $_FILES['file']['size']) { //print_r($_FILES); mysql_select_db($database_elvisdb, $elvisdb); $photo = addslashes(fread(fopen($_FILES['file']['tmp_name'], "r"), $_FILES['imgfile']['size'])); $query = sprintf("INSERT INTO images (usnm, ImageName, imageFile) VALUES ('$user','%s', '%s')", $photo, $_FILES['imgfile']['type']); if (mysql_query($query)) { $messages[] = "Your files is successfully store in database"; } else { $messages[]= mysql_error(); } } else { $messages[] = "The file is bigger than the allowed size (96k) please reduce your file size"; } } ?> </head> <body bgcolor="#FFFFFF"> <h2>Upload and Resize an Image</h2> <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST" enctype="multipart/form-data"> <input type="hidden" name="MAX_FILE_SIZE" value="50000"> <p>Upload Image: <input type="file" name="imgfile"><br> <font size="1">Click browse to upload a local file</font><br> <br> <input type="submit" value="Upload Image"> </form> </body> </html> <?php /*== FUNCTIONS ==*/ function getFileExtension($str) { $i = strrpos($str,"."); if (!$i) { return ""; } $l = strlen($str) - $i; $ext = substr($str,$i+1,$l); return $ext; } ?> </body> </html> Link to comment https://forums.phpfreaks.com/topic/41771-parse-error-unexpected-end/ Share on other sites More sharing options...
jggretton Posted March 8, 2007 Share Posted March 8, 2007 That error message usually indicates that you haven't opened / closed your curly brackets somewhere. I count 11 { and only 10 }. This is the first problem you need to solve! Link to comment https://forums.phpfreaks.com/topic/41771-parse-error-unexpected-end/#findComment-202571 Share on other sites More sharing options...
tauchai83 Posted March 8, 2007 Share Posted March 8, 2007 you are missing closing/opening bracket. This is common and happen to me too. But try to find and fix those syntax error 1st before posting your msg here. Thank you. Link to comment https://forums.phpfreaks.com/topic/41771-parse-error-unexpected-end/#findComment-202575 Share on other sites More sharing options...
JBS103 Posted March 8, 2007 Share Posted March 8, 2007 <?php $messages[] = "The file is bigger than the allowed size (96k) please reduce your file size"; } } // Missing bracket here } ?> Link to comment https://forums.phpfreaks.com/topic/41771-parse-error-unexpected-end/#findComment-202611 Share on other sites More sharing options...
garydt Posted March 9, 2007 Author Share Posted March 9, 2007 Thanks I put the extra bracket in and it works. Now, when uploading an image I get error- Warning: unlink() [function.unlink]: Permission denied in C:\Program Files\xampp\htdocs\epeople\upim.php on line 79 Do i need to change the directory permissions now? If so, how and what do i change them to? Thanks very much Link to comment https://forums.phpfreaks.com/topic/41771-parse-error-unexpected-end/#findComment-203453 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.