day90
@day90

Как определить ряд по столбцу «b», если до этого я выводил столбец «a»?

Всем привет, рубрика странных вопросов в эфире.

Сразу оговорюсь, я новичок, как в программировании так и на Тостере, по первому пункту следуют сложности со "всем", по второму "теги".

Вывел из базы данных
if(isset($_SESSION['steamid'])) {
$stmt = $pdo->prepare('SELECT * FROM St***');
$stmt->execute();
while ($row = $stmt->fetch(PDO::FETCH_LAZY))
{
    echo   '<input class="btn btn-default" type="submit" name="clickfornotice" value='.$row['Nickname'].'>';

}
}

Вывожу отсюда:
fe1cd6d30ae843cbacbcd4ce6e333993.PNG

Результат:
e34d935bdc364342bc1001c1b999fc25.PNG

При нажатии по clickfornotice, высший разум должен знать, что кликаю на кнопку Nickname, а имею ввиду человека со Steam_id. Nickname может меняться, а steamid уникальный. Нельзя отправить уведомление по никнэйму. Соответсвенно в таблице Notice -
0260a1ae8ae947aca76ba62fca471ac8.PNG

Где uid=Steam_id.

Может быть я ушел не в те дебри, но надеюсь я смог объяснить, какая у меня стоит задача, возможно есть вообще другое решение?
Спасибо.
  • Вопрос задан
  • 174 просмотра
Решения вопроса 1
А разве id не принято делать уникальным и автоназначаемым? Можно же выводить и его и обращаться по уникальному идентификатору. Вообще нужно выводить уникальное значение по которому, в последующем, можно обратиться к базе данных.
Можно сделать в виде формы:

if(isset($_SESSION['steamid'])) {
$stmt = $pdo->prepare('SELECT * FROM St***');
$stmt->execute();
while ($row = $stmt->fetch(PDO::FETCH_LAZY))
{
    echo '<form method ="post">'; 
    echo   '<input hidden="hidden" type="text" name="dataid" value='.$row['Steam_id'].'>';
    echo   '<input class="btn btn-default" type="submit" name="clickfornotice" value='.$row['Nickname'].'>';
    echo '</form>';
}
}

При клике на кнопку, отправляете данные скрытого поля и на стороне сервера принимаете, и делаете свои дела.

UPD
Ещё могу предложить вариант сделать кнопку через с собственным атрибутом data- в который помещается Steam_id. При клике, js вылавливает значение атрибута и аяксом отправляет на сервер, где вы с ним уже работаете. Это позволит уменьшить саму разметку, но увеличит код js.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы