如何从输入的数据中获取行号(sql 和 php)
How to get row number from inputted data (sql and php)
我遇到这个问题有一段时间了,我似乎无法在 google 上找到正确的答案。不知道是不是我运气不好。
无论如何,如何从我从 PHP 文本字段输入的特定记录中获取行号,例如:
ID NAME
11111 john
11112 roger
11113 ellis
11114 jack
11115 wendy
所以如果我输入 11113,输出会像 "this ID is at number 3"。
这是我的代码:
$id=$_POST['id'];
$query="SELECT COUNT(*) from employee where id like '%$id%'";
$num=mysql_query($query);
echo "this ID is at number $num";
谁能指出我哪里错了?
这是一个查询示例,说明如何在不添加另一列计数的情况下执行此操作:
SELECT e.*,b.count FROM employee as e, (SELECT COUNT(*) as count FROM employee WHERE id <= 3) as b WHERE e.id = 3
使用另一个 select 查询来计算 id
小于请求的 id
的所有行
或者如果您只想要行的偏移量而不需要其数据:
SELECT COUNT(*) as count FROM employee WHERE id <= 3
首先,您应该 select * 来自员工 table
然后将结果解析为数组,
扫描上面的数组(step2)并找到你的值(11113)
如果找到(3),则可以return数组索引。
第一件事:
您正在为数据库使用旧的 PHP 方法,请使用 PDO
如果不想得到最后插入的ID,可以用PDO抓取
我不明白你的SQL,因为你想得到一个ID,通过ID过滤?当您的 ID 是 INTEGER/NUMBER 时,您的陈述就毫无意义了。
我遇到这个问题有一段时间了,我似乎无法在 google 上找到正确的答案。不知道是不是我运气不好。
无论如何,如何从我从 PHP 文本字段输入的特定记录中获取行号,例如:
ID NAME
11111 john
11112 roger
11113 ellis
11114 jack
11115 wendy
所以如果我输入 11113,输出会像 "this ID is at number 3"。
这是我的代码:
$id=$_POST['id'];
$query="SELECT COUNT(*) from employee where id like '%$id%'";
$num=mysql_query($query);
echo "this ID is at number $num";
谁能指出我哪里错了?
这是一个查询示例,说明如何在不添加另一列计数的情况下执行此操作:
SELECT e.*,b.count FROM employee as e, (SELECT COUNT(*) as count FROM employee WHERE id <= 3) as b WHERE e.id = 3
使用另一个 select 查询来计算 id
小于请求的 id
的所有行
或者如果您只想要行的偏移量而不需要其数据:
SELECT COUNT(*) as count FROM employee WHERE id <= 3
首先,您应该 select * 来自员工 table
然后将结果解析为数组,
扫描上面的数组(step2)并找到你的值(11113)
如果找到(3),则可以return数组索引。
第一件事: 您正在为数据库使用旧的 PHP 方法,请使用 PDO
如果不想得到最后插入的ID,可以用PDO抓取
我不明白你的SQL,因为你想得到一个ID,通过ID过滤?当您的 ID 是 INTEGER/NUMBER 时,您的陈述就毫无意义了。