我正在尝试比较两个变量,一个是从数据库中获取的,另一个是文本框值。
如果比较成功,则if语句块将返回匹配的值,如果不是,则其他语句块将返回not matched
。
但即使我输入数据库中的相同值,它也始终返回not matched
。
我的代码是:
<?php
error_reporting(0);
$user_id = 5;
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
mysql_select_db('qurefle');
if(! $conn )
{
die('Could not connect: ' . mysql_error());
}
if(isset($_POST["blccrcc"])){
$sql = 'SELECT l_coupon_c FROM cc_generator WHERE unique_id = "'.$user_id.'"';
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_assoc($retval))
{
//fetching data
$l_coupon_c = $row['l_coupon_c'];
//Data Comparison
$friend_cc = $_POST["lccrcc"];
if ($l_coupon_c == $friend_cc) {
echo"it is matched";
}
else{
echo"Not Matched";
}
}//while bracket
}//if isset bracket
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>LCC AND RCC Coupon Code Chain Extender</title>
</head>
<body>
<center>
<form method="POST" action="">
Friend cc: <input type="text" name="lccrcc"><br><br>
<input type="submit" value="Use Coupon Code" name="blccrcc">
</form>
</center>
</body>
</html>
答案 0 :(得分:1)
同时使用trim
,有时还会出现一些额外的空间问题。
if(trim($l_coupon_c) == trim($friend_cc))
和print_r($_POST);
查看POST
答案 1 :(得分:0)
请按照大写字母(大写)传递字符,根据您的数据库屏幕截图存储在upepercase中的数据 或使用函数strtoupper()
将表单数据转换为大写请参阅此链接:http://php.net/manual/en/function.strtoupper.php
即:strtoupper($ _ POST [&#39; lccrcc&#39;]);
如果您以小写形式传递数据,它适用于您的情况。或者以相反的顺序执行相同的操作,并在strtolower()
的帮助下将存储的数据转换为小写