This question is an exact duplicate of:
<?php
// include db connect class
require_once __DIR__ . '/db_connect.php';
// connecting to db
$db = new DB_CONNECT();
if(isset($_POST['smsCode']) && isset($_POST['userName'])){
$smsCode = $_POST['smsCode'];
$rocketName = mysqli_real_escape_string($db->getConnection(),$_POST["userName"]);
$query_search = "SELECT * FROM confirmedrequest WHERE smsCode='".$smsCode."'";
$query_exec = mysqli_query($db->getConnection(),$query_search) or die(mysqli_error($db->getConnection));
$row = mysqli_num_rows($query_exec);
if($row == 0){
echo "failed";
}else{
echo "success";
$sql_update = "UPDATE confirmedrequest SET jobTakenBy = '".$rocketName."' WHERE smsCode = '".$smsCode. "'";
$sql_exec = mysqli_query($db->getConnection(),$sql_update) or die(mysqli_error($db->getConnection()));
}
}else{
echo "Empty code";
}
?>
Above is my php code and this code will be used to interact with Android. Although, I have entered everything correctly, it always echo failed
. I am 100% sure my database and tables and everything is working perfectly fine. Is there any mistake in this code ? It will never echo success
when everything is correctly entered.
</div>
The mysqli_num_rows() returns false on error, 0 is interpreted by php as a false value, please use strict comparison (===) if you want to test if $row is indeed 0.
Also, you might want to use mysqli_error in the same block you echoes "failed" to see what happens.