【发布时间】:2011-12-25 05:58:25
【问题描述】:
我有一个通过 html 表单发布的变量:
$_POST['ref']
还有一个从数据库中的表中提取的变量:
$row['ref']
我有一个基本的比较脚本来检查它们是否相同:
$ref = $_POST['ref'];
$result = mysql_query("SELECT * FROM logbook.job");
if (!$result) {
die("Query to show fields from table failed");
}
$row = mysql_fetch_array($result);
$refdb = $row['ref'];
$refform = $_POST['ref'];
echo $_POST['ref'] ."<br>". $row['ref'] . "<br><br>";
if ($refdb == $refform) {
echo "Yes they are<br><br>";
}
else {
echo "No they are not<br><br>";
}
if (is_string($_POST['ref']))
{
echo "Yes";
} else {
echo "No";
}
echo "<br>";
if (is_string($row['ref']))
{
echo "Yes";
} else {
echo "No";
}
哪些输出:
G2mtxW
G2mtxW
No they are not
Yes
Yes
我把它们都呼出来了。比我问他们是否相同。然后我检查每个是否是一个字符串。
他们怎么不一样?我怎样才能让他们匹配
任何帮助将不胜感激
【问题讨论】:
-
变量中有空格吗?
-
只是为了验证,你能在每个回显的字符串后面加上
*吗? -
尝试
var_dump($row['ref'],$_POST['ref']);并以这种方式比较它们,看看是否有任何问题。 -
尝试使用
strlen()和trim()进行检查 -
您好,我发现表单中的所有变量都添加了一个空格。谢谢我用 trim() 清除它们