Jump to content

partial code for adding pictures refreshes page and has done nothing


The_Dude_1978

Recommended Posts

Hi Guy's,

 

I've recoded allot with 3 scripts i had to my disposal. I've fixed 95% and i'm proud allready, but stuck at the following code. It does'nt execute any errors and refreshes the page without uploading the picture to the desired folder. Also folders are'nt created. I've turned on error reporting at level -1, but those errors i fixed.

 

Can you please help me out?

 

note: this is a partial code of a tiny usermanagement 'cms'.

 

<?php
//action: add picture for user -----------------------------------------------------------------------------
if (isset($_GET['editpic']) && isset($_GET['id'])) {
$id = (int) $_GET['id'];
if ($id == 0) {
	die("Invalid ID provided.");
}
$sql = "SELECT username FROM `users` WHERE `id`='".$_GET['id']."'";
$res = mysql_query($sql) or die(mysql_error());
//execution when completed the add picture form and pressed submit button ---------------------
if (isset($_POST['addPic'])) {		

$row = mysql_fetch_assoc($res);

$title = protect($_POST['title']);

if(!$title)
{
	echo "<script language=\"Javascript\" type=\"text/javascript\">
			alert(\"You must choose a title for your picture!\")
			document.location.href='profilecp.php'</script>";

}

$target = $row['username'];
if(!is_dir($target)) @mkdir($target);
$target = $target . '/pics';

if(!is_dir($target)) @mkdir($target);

	$target = $target."/".basename($_FILES['pics']['name']) ;
	$size = $_FILES['pics']['size'];
	$pic = $_FILES['pics']['name'];
	$type = $_FILES['pics']['type'];

		$sql2= "INSERT INTO `user_photos` (`profile_id`,`title`,`size`,`type`,`reference`)
		VALUES ('".$_GET['id']."','$title','$size','$type','$pic'); ";

		$res2 = mysql_query($sql2) or die(mysql_error());

			if(move_uploaded_file($_FILES['pics']['tmp_name'], $target))
			{
				echo "<script language=\"Javascript\" type=\"text/javascript\">
				alert(\"Your picture has been uploaded\")
				document.location.href='profilecp.php'</script>";
			}
			else
			{
				echo "<script language=\"Javascript\" type=\"text/javascript\">
				alert(\"There was an error, try again\")
				document.location.href='profilecp.php'</script>";
			}


	$target2 = $row['username'];
	$target2 = $target2 . '/pics';
	$target2 = $target2 . '/thumbs';
	if(!is_dir($target2)) @mkdir($target2);
	$target2 = $target2."/".basename($_FILES['pics']['name']) ;
	createthumb($target,$target2,150,150);

}


<!-----------------------ADD PICTURES-----------------------//-->

<div class="dividerp">
<form enctype="multipart/form-data" method="POST" action="administrator.php?editpic&id=<?php echo $id;?>"><br/>
<strong>Upload Pictures</strong><br/><br/>

<div class="formElm">
<label for="title">Title</label>
<input id="title" type="text" name="title" maxlength="32"><br/>
</div>

<div class="formElm">
<label for="file">File</label>
<input id="file" type="file" name="pics" maxlength="255"><br/>
</div>

<input type="submit" name="picAdd" value="Add">
</form>
</div>

</div>
</body>
</html>
}?>

 

and the mysql tables:

 

CREATE TABLE `users` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`first` VARCHAR( 32 ) NOT NULL ,
`last` VARCHAR( 32 ) NOT NULL ,
`username` VARCHAR(32) NOT NULL,
`password` VARCHAR(255) NOT NULL,
`email` VARCHAR(255) NOT NULL,
`about` TEXT NOT NULL,
`level` int(4) default '1'
) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=latin1;

 

CREATE TABLE `user_photos` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`profile_id` INT NOT NULL ,
`title` VARCHAR( 128 ) NOT NULL ,
`size` INT NOT NULL ,
`type` VARCHAR( 128 ) NOT NULL ,
`reference` VARCHAR( 255 ) NOT NULL
) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=latin1;

 

Best regards,

 

Martijn

Link to comment
Share on other sites

 

Okay, i was'nt paying attention, because it was late in the evening,

 

The variable in the form was name="picAdd" en should have been addPic.

 

Topic solved.

 

Best regards,

 

Martijn

 

If I had a dollar for everytime I spent hours looking for a silly mistake like this, I'd be very rich by now

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.