当我尝试搜索带有数字的可用ID时,它会正确回声。
但是,如果里面有一个字母,像这样:5325252T,它不会在数据库中找到它。 我有一个类型为:longtext
的列我该如何解决这个问题?我之前从未注意到这个问题,现在我急着解决它......
顺便说一句,如果我回显rusp_9_cf7dbplugin_submits的所有表,它还会显示那些带有字母的id。真的很奇怪。
// Create connection
$conn = new mysqli($hostname, $username, $password, $database);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT field_value FROM rusp_9_cf7dbplugin_submits WHERE field_value = 5325252T"; // If i remove the T, It will find the id and echo it in a table, but if the T is there, it wont find the id at all...
$result = $conn->query($sql);
if ($result->num_rows > 0) {
echo "<table><tr><th>ID</th><th>Name</th></tr>";
// output data of each row
while($row = $result->fetch_assoc()) {
echo "<tr><td>".$row["field_value"]."</td><td>".$row["field_value"]." ".$row["field_value"]."</td></tr>";
}
echo "</table>";
} else {
echo "0 results";
}
$conn->close();
答案 0 :(得分:0)
只需将field_value
值括在单个引号'
中,因为添加一个字符会使SQL引擎将该值解释为一个数字,因为它是string literal
,而如果只是integer
然后它将数字解释为...
$sql = "SELECT field_value FROM rusp_9_cf7dbplugin_submits WHERE field_value = '5325252T'"; // If i remove the T, It will find the id and echo it in a table, but if the T is there, it wont find the id at all...
...
。
您的代码变为......
Status = "Reject"