Jump to content

If statements inside while?


3raser

Recommended Posts

I'm sure you can do this in PHP, but for some reason when I view news.php - It automatically tells me I liked the post, when I haven't even clicked like yet!

 

while($fetch = mysql_fetch_assoc($query))
	{
		if($_GET['like'] == $fetch['id'])
		{
			$like = mysql_real_escape_string($_GET['like']);
			$has_liked = mysql_query("SELECT * FROM likes WHERE id = '$like' AND username = '". $_SESSION['user'] ."'");

			if(mysql_num_rows($has_liked) > 0)
			{
					echo "
				<div id='post-1' class='post'>
				<h2 class='title'><font color='white'>#". $i." ".$fetch['title'] ."</font>
				<h3 class='date'>". $fetch['date'] ."</h3>
				<div class='entry'>
				<p>". nl2br(stripslashes($fetch['content'])) ."</p>
				</div>
				<p class='meta'><b>You've already liked this announcement.</b></p>
				</div>
				";
			}
			else
			{
			mysql_query("UPDATE news SET likes = likes + 1 WHERE id = '". $_GET['id'] ."'");

			echo "
			<div id='post-1' class='post'>
			<h2 class='title'><font color='white'>#". $i." ".$fetch['title'] ."</font>
			<h3 class='date'>". $fetch['date'] ."</h3>
			<div class='entry'>
			<p>". nl2br(stripslashes($fetch['content'])) ."</p>
			</div>
			<p class='meta'><b>You liked this announcement.</b></p>
			</div>
			";
			}
		}
		else
		{

			echo "
			<div id='post-1' class='post'>
			<h2 class='title'><font color='white'>#". $i." ".$fetch['title'] ."</font>
			<h3 class='date'>". $fetch['date'] ."</h3>
			<div class='entry'>
			<p>". nl2br(stripslashes($fetch['content'])) ."</p>
			</div>
			<p class='meta'><a href='news.php?like=". $fetch['id'] ."'>Like</a></p>
			</div>
			";

		}
	}

Link to comment
https://forums.phpfreaks.com/topic/233042-if-statements-inside-while/
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • 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.