Jump to content

Not sure what is wrong with these IF statements


chicago123

Recommended Posts

I'm a PHP beginner - I'm not sure what is wrong with this code.

 

The problem:

When $qotw is equal to 1 or when it is equal to 2, neither statement is being executed (see code below). I am not getting any errors.
 

What I tried:

I tried putting if($qotw = '1') instead of if(qotw == '1') and if(qotw = '2') instead of if(qotw == '2'). In that case the 'cash' increased as it was supposed to. However, when $qotw was equal to 2, the first statement still executed and the second one did not (the 'cash' value was still increasing and the message that should be displayed according to the 2nd IF statement did not show up). The 'cash' value and 'qotw' value should only increase when $qotw is equal to 1.

Please help me fix this so that BOTH statements will execute at the appropriate times. Thanks!

Here is my code:

<?php
$con=mysqli_connect("localhost","users","password","users");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

//statement1
if($qotw = '1')
{
mysqli_query($con,"UPDATE users SET cash = cash + $scash
WHERE username = '". $_SESSION['username'] . "'");
mysqli_query($con,"UPDATE users SET qotw = 1 + qotw
WHERE username = '". $_SESSION['username'] . "'");
}
//statement2
if($qotw = '2')
{
echo "You have already attempted this question.";
}

mysqli_close($con);
?>

first off, where are you actually defining $qotw? I don' tsee anywhere in your code where you are actually defining it... except in your condition, which that's not how it works. = is the assignment operator. == is the equality operator.

 

edit: on a side note, when you change it to e.g. if ($qotw=='1') .. note that php is a loosely typed language, which means '1' will also stand for true, so anything that evaluates as true will make the condition true. IOW you may instead want to use a strict comparison with === instead of ==

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.