I am new to Daniweb and am I glad I found it, there is so much helpful information here for a newbie programer.
This is my error message:
Parse error: parse error, unexpected T_STRING, expecting T_CASE or T_DEFAULT or '}' in C:\wamp\www\helen\upload.php on line 17
This is my story:
I am building a database for a realestate agent and it needs to be able to upload images to the database. Being green at this I have had a heck of a time finding tutorials that make sense to me regarding uploading files to the database so this is what I have done, please tell me if there is a better way. I am using PHP and I have an 'add.php' page where you would fill in your information and there is a browse button to browse to your image file,
here is the code for the button,

<td><input type="hidden" name="MAX_FILE_SIZE" value="100000" size="32" />
       <input name="userfile" type="file" /></td>

I have another page called 'upload.php' that apparently is the page that processes the file information and places it in the database? (I think this is right?)
Here is the code:

<!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">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<h1>Uploading file</h1>

if ($_FILES['userfile']['error'] > 0)
  echo 'Problem: ';
  switch ($_FILES['userfile']['error'])
   case1: echo 'File exceeded upload_max_filesize'; break;  ->THIS IS LINE 17<-
   case2: echo 'File exceeded max_filesize'; break;
   case3: echo 'File only partially uploaded'; break;
   case4: echo 'No file uploaded'; break;

if ($_FILES['userfile']['type'] != 'image/gif''image/jpg')
	echo 'Problem:image must be .gif or .jpg';

$upfile= '/uploads/'.$_FILES['userfile']['name'];

if (is_uploaded_file($_FILES['userfile']['tmp_name']))
	if (!move_uploaded_file($_FILES['userfile']['tmp_name'], $upfile))
			echo 'Problem: Could not move file to destination directory';
		echo 'Problem: Possible file upload attack. Filename: ';
		echo $_FILES['userfile']['name'];
	echo 'File uploaded successfully<br><br>';
	$fp = fopen($upfile, 'r');
	$contents = fread ($fp, filesize ($upfile));
	fclose ($fp);
	$contents = strip_tags($contents);
	$fp = fopen($upfile, 'w');
	fwrite($fp, $contents);
	echo 'Preview of uploaded images:<br><br>';
	echo $contents;
	echo '<br><br>';


I have been reading posts from others that have been having similar problems and it seems that it is usually a spelling error or a semicolon is missing but I can't seem to find the error.
And I am wondering if this is even the right way about uploading images.

Incase it is important the information in the data base for the image field is:

Thanks for your help, I feel like this php sql stuff will never make sense.


try the case statements like this:

case'1': echo 'File exceeded upload_max_filesize'; 
case'2': echo 'File exceeded max_filesize'; 
case'3': echo 'File only partially uploaded'; 
case'4': echo 'No file uploaded';

There should be a space between case and 1 and add a newline after the semi-colon
as suggested by JeniF


case 1: 
	echo 'File exceeded upload_max_filesize'; 

Also check the type returned by $_FILES
and use 1 or '1' accordingly.

HI thanks,
but that didn't work, I tried it both ways and now my error is:
Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING in C:\wamp\www\helen\upload.php on line 29

Line 29 is:

if ($_FILES['userfile']['type'] != 'image/gif''image/jpg')

Is this in your opinions the way to upload image files using a browse button?

I appreciate your time so far, please don't leave me yet!!!


Your switch problem is fixed.
You just have a bug online 29

if(strpos('*image/gif image/jpg', $Files[' file1']['type']))  {

Thanks but it hasn't worked so far,
Here are the new error messages:

Uploading file

Warning: move_uploaded_file(/uploads/Lake View.jpg) [function.move-uploaded-file]: failed to open stream: No such file or directory in C:\wamp\www\helen\upload.php on line 39

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move 'c:/wamp/tmp\php24A.tmp' to '/uploads/Lake View.jpg' in C:\wamp\www\helen\upload.php on line 39
Problem: Could not move file to destination directory

At least I am getting the uploading file message?

Any further help is still greatly appreciated.

Check the directory permissions in the folder uploads where the file is to be uploaded?

This article has been dead for over six months. Start a new discussion instead.