Page 1 of 1

Having trouble re-aranging orders in sql

Posted: Sun Mar 04, 2007 8:19 pm
by psychotomus
What i'm trying to do is make a back-bone similar to what phpBB did on how they move forums up and move forums down. the thing just goes haywire. maybe theres something simplier, that i'm missing. and swaps them around. all the numbers stay the same. it prints 3 3 everytime.

Code: Select all

if(isset($_GET['move']))
	{
		$forum_to_move = $_GET['forum'];
		$result = mysql_query("SELECT forum_order FROM forums WHERE name='$forum_to_move'");
		$forum = mysql_fetch_object($result);
		$forum_to_move_order = $forum->forum_order;
		//moving forum up
		if ($_GET['move'] == "up")
		{
			
			$result = mysql_query("SELECT name,forum_order FROM forums WHERE forum_order<='$forum_to_move_order' ORDER BY forum_order DESC LIMIT 1") or die(mysql_error());
			$forum = mysql_fetch_object($result);
			
		
			$forum_to_move2 = $forum->name;
			$forum_to_move_order2 = $forum->forum_order;
			
			if($forum->name <> "")
			{
				mysql_query("UPDATE forums SET forum_order='$forum_to_move_order2' WHERE name='$forum_to_move'") or die(mysql_error());
				echo $forum_to_move_order .'<br>' . $forum_to_move_order2;
				mysql_query("UPDATE forums SET forum_order='$forum_to_move_order' WHERE name='$forum_to_move2'") or die(mysql_error());
			}
		}
		else//moving forum down
		{
			
			$result = mysql_query("SELECT name,forum_order FROM forums WHERE forum_order>='$forum_to_move_order' ORDER BY forum_order DESC LIMIT 1") or die(mysql_error());
			$forum = mysql_fetch_object($result);
			
			
			$forum_to_move2 = $forum->name;
			$forum_to_move_order2 = $forum->forum_order;
			
			if($forum->name <> "")
			{
				mysql_query("UPDATE forums SET forum_order='$forum_to_move_order2' WHERE name='$forum_to_move'") or die(mysql_error());
				echo $forum_to_move_order .'<br>' . $forum_to_move_order2;
				mysql_query("UPDATE forums SET forum_order='$forum_to_move_order' WHERE name='$forum_to_move2'") or die(mysql_error());
			}
		}
	
	
	}

Posted: Sun Mar 04, 2007 8:41 pm
by psychotomus
Problem fixed =)