Как получить номер строки из введенных данных (sql и php)

Я столкнулся с этой проблемой некоторое время, и я не могу найти правильный ответ в Google. Я не знаю, может быть, мне просто не повезло.

В любом случае, как я могу получить номер строки из определенной записи, которую я ввел из текстового поля PHP, например:

ID          NAME
11111       john
11112       roger
11113       ellis
11114       jack
11115       wendy

Поэтому, если я введу 11113, вывод будет выглядеть как «этот идентификатор под номером 3».

Вот мой код:

$id=$_POST['id'];
$query="SELECT COUNT(*) from employee where id like '%$id%'";
$num=mysql_query($query);
echo "this ID is at number $num";

Кто-нибудь может указать, где я ошибся?

-1

Решение

Вот пример запроса о том, как вы можете сделать это без добавления еще одного столбца для подсчета:

SELECT e.*,b.count FROM employee as e, (SELECT COUNT(*) as count FROM employee WHERE id <= 3) as b WHERE e.id = 3

Использование другого запроса выбора для подсчета всех строк с id меньше чем id запрошенный

Или, если вы хотите только смещение строки без ее данных:

SELECT COUNT(*) as count FROM employee WHERE id <= 3
0

Другие решения

  1. Сначала вы должны выбрать * из таблицы сотрудников

  2. Затем проанализируйте результат в массив,

  3. Сканируйте вышеуказанный массив (шаг 2) и найдите ваше значение (11113)

  4. Если (3) найдено, вы можете вернуть индекс массива.

0

Первым делом:
Вы используете старый PHP-метод для базы данных, используйте PDO

Если вы не хотите получить последний идентификатор вставки, его можно поймать с помощью PDO

И я не понимаю ваш SQL, потому что вы хотите получить идентификатор, фильтруя по этому идентификатору? И когда ваш идентификатор INTEGER / NUMBER, то ваше утверждение бессмысленно.

0
По вопросам рекламы [email protected]