Кнопка, которая выполняет изменения записи в базе данных (HTML TABLE) - PullRequest
0 голосов
/ 29 августа 2018

Я создаю инвентаризационное веб-приложение для своей школьной библиотеки. Все страницы построены на HTML, а PHP связывается с базой данных MySQL.

Одна из страниц приложения позволяет выполнять поиск по названию книги в базе данных и возвращает результат в одной таблице (или в нескольких таблицах, если имеется более одного результата).

Я хочу добавить кнопку внутри ячейки таблицы, которая при нажатии выполняет изменение параметра записи. Точнее, один заголовок столбца называется «доступность». Если ответ «у», то книга доступна. Когда пользователь продает книгу, нажимает кнопку «Продажа» справа, которая изменяет параметр на «n».

Смотрите скриншот: https://drive.google.com/file/d/15y4w6UZpWVIVZjsQN6H3fsmTQeTdFDmP/view?usp=sharing

Как я могу это сделать?

Это код таблицы:

    echo '<table style="width:100%" border="1">';
    echo '<tr>';
    echo '<th><font color="navy" face="Helvetica" size="3"><center><p>Author:</p></center></font><th>';
    echo '<th><font color="navy" face="Helvetica" size="3"><center><p>Title:</p></center></font><th>';
    echo '<th><font color="navy" face="Helvetica" size="3"><center><p>ISBN:</p></center></font><th>';
    echo '<th><font color="navy" face="Helvetica" size="3"><center><p>Cover Price:</p></center></font><th>';
    echo '<th><font color="navy" face="Helvetica" size="3"><center><p>40% Price:</p></center></font><th>';
    echo '<th><font color="navy" face="Helvetica" size="3"><center><p>Availability:</p></center></font><th>';
    echo '<th><font color="navy" face="Helvetica" size="3"><center><p>Returned:</p></center></font><th>';
    echo '<th><font color="navy" face="Helvetica" size="3"><center><p>Phone:</p></center></font><th>';
    echo '<th><font color="navy" face="Helvetica" size="3"><center><p>First Name:</p></center></font><th>';
    echo '<th><font color="navy" face="Helvetica" size="3"><center><p>Last Name:</p></center></font><th>';
    echo '<th><font color="navy" face="Helvetica" size="3"><center><p>Class:</p></center></font><th>';
    echo '<th><font color="navy" face="Helvetica" size="3"><center><p>Student ID:</p></center></font><th>';
    echo '<th><font color="navy" face="Helvetica" size="3"><center><p>Sell:</p></center></font><th>';

    echo '</tr>';
    echo '<tr>';
    echo '<th><font color="black" face="Helvetica" size="2"><center>'.$results['author'].'</center></font><th>';
    echo '<th><font color="black" face="Helvetica" size="2"><center>'.$results['title'].'</center></font><th>';
    echo '<th><font color="black" face="Helvetica" size="2"><center>'.$results['isbn'].'</center></font><th>';
    echo '<th><font color="black" face="Helvetica" size="2"><center>'.$results['coverprice'].'</center></font><th>';
    echo '<th><font color="black" face="Helvetica" size="2"><center>'.$results['fortyprice'].'</center></font><th>';
    echo '<th><font color="black" face="Helvetica" size="2"><center>'.$results['availability'].'</center></font><th>';
    echo '<th><font color="black" face="Helvetica" size="2"><center>'.$results['returned'].'</center></font><th>';
    echo '<th><font color="black" face="Helvetica" size="2"><center>'.$results['phone'].'</center></font><th>';
    echo '<th><font color="black" face="Helvetica" size="2"><center>'.$results['firstname'].'</center></font><th>';
    echo '<th><font color="black" face="Helvetica" size="2"><center>'.$results['lastname'].'</center></font><th>';
    echo '<th><font color="black" face="Helvetica" size="2"><center>'.$results['class'].'</center></font><th>';
    echo '<th><font color="black" face="Helvetica" size="2"><center>'.$results['studentid'].'</center></font><th>';
            echo '<th><form action="BOOKS_changestatus.php" method="GET"><input type="submit" value="Sell"></th>';





    echo '</tr>';
    echo '<br>';



                }

Файл changestatus.php все еще пуст, хотя ...

1 Ответ

0 голосов
/ 29 августа 2018

Вы сделали небольшую ошибку там. Вы должны поместить скрытое поле в форму и отправить его на страницу php, где вы хотите обновить ее в своей базе данных. Заменить это

echo '<th><form action="BOOKS_changestatus.php" method="GET"><input type="submit" value="Sell"></th>';

с этим

echo '<th><form action="changestatus.php" method="GET">// I assumed that changestatus.php is your php page where you want to do database work
     <input type="hidden" name="id" value="' .$results['studentid'] . '"> //I assume that this is your id in your database
     <input type="submit" name="submit" value="Sell"></form></th>';

Сейчас на changestatus.php странице

if(isset($_GET['submit']))
 {
   $id = $_GET['studentid'];

   //Now you have id and it will be easy for you now to update record in your database against this id

 }

Примечание: Я сделал некоторые предположения относительно вашего кода. Вы можете исправить меня, если что-то не так

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...