首先,在写下 PHP 代码之前。我在 mySQL 数据库中有一个名为 items 的表。假设它在item_no中有以下记录:
- 1L900BK
- 1L900BE
- 1L900BR
- 2L900BK
- 2L902BE
- 2L910PU
PHP代码是:
require_once('connect_db.php');
$from = $_POST['from'];
$to = $_POST['to'];
$query = "SELECT * FROM items WHERE item_no BETWEEN '".$from."' AND '".$to."' ORDER BY item_no Asc";
$result = mysql_query($query);
if(mysql_num_rows($result)>0){
$num = mysql_num_rows($result);
for($i=0;$i<$num;$i++){
$row = mysql_fetch_assoc($result);
echo $row['item_no'];
echo "<br /><br />";
}
}
现在问题从这里开始:假设我想搜索一个从1l900bk到2l900BK的项目,它将输出它们之间的所有 item_no ( 1L900bk 1L900BE ------- 2L900BK) 这是完美的!
但是当我想搜索 item_no FROM 1L9 TO 2L9 ...结果或输出不正确(1L900BK - 1L900BE - 1L900BR - 并停止!!) 2L900 的位置在哪里?当 for 循环达到此值时,它会跳过 2l9。
现在我只想在写下 2l9 时输出所有 2l900 ......我认为查询中的 BETWEEN 有问题,但我找不到替代方法。
谢谢你