Продолжаю я ковырять изучать БД и PHP и встала проблема редактирования данных. Я понимаю что это делается с помощью UPDATE запроса, но не представляю как это можно сделать с помощью PHP. Набросал код, который делает выборку и полученную инфу вставляет в текстовое поле. Дальше можно редактировать полученную инфу в браузере и, по задумке, при нажатии на кнопку "Редактировать", которая возле каждой строки, информация бы обновлялась в БД, но это не происходит. Посоветуйте, как лучше реализовать такую функцию. Сам код:
| Код | <?php $db = mysql_connect('127.0.0.1', 'root', '1234') or die("Could not connect: " . mysql_error()); mysql_select_db("test", $db) or die("Could not connect: " . mysql_error()); //Делаем выборку всего и вся в БД if (isset($_GET['update'])){ $select = mysql_query("SELECT * FROM clients INNER JOIN agreements ON clients.Agreement_number = agreements.Agreement_number INNER JOIN price ON clients.Agreement_number = price.Agreement_number"); // выводим на страницу сайта заголовки HTML-таблицы echo '<table border="1" align="center">'; echo '<thead>'; echo '<tr>'; echo '<th>№</th>'; echo '<th>Название клиента</th>'; echo '<th>Номер договора</th>'; echo '<th>Дата подписания договора</th>'; echo '<th>Дата окончания договора</th>'; echo '<th>Цена</th>'; echo '<th>Редактировать</th>'; echo '</tr>'; echo '</thead>'; // выводим в HTML-таблицу все данные из БД echo '<tbody>'; while($data = mysql_fetch_array($select)){ echo '<tr align="center">'; echo '<td>' . $data['idAgreements'] . '</td>'; echo '<td> <form> <input type="text" name="Name" method="get" value="' . $data['Name'] . '"> <input type="hidden" name="update_name" value="'.$data['Name'].'"> </form></td>'; //Вставляем значение из массива в тег input echo '<td> <input type="text" name="Agreement_number" method="get" value="' . $data['Agreement_number'] . '">'. '</td>'; echo '<td> <input type="date" name="Start_date" method="get" value="' . $data['Start_date'] . '">'. '</td>'; echo '<td> <input type="date" name="End_date" method="get" value="' . $data['End_date'] . '">'. '</td>'; echo '<td> <input type="text" name="Price" method="get" value="' . $data['Price'] . '">'. ' $</td>'; echo '<td> <form> <input name="update_button" type="submit" value="Редактировать"> <?-- //Кнопка редактирования для каждой строки --> <input type="hidden" name="update_row" value="'.$data['Name'].$data['Agreement_number'].$data['Start_date'].$data['End_date'].$data['Price'].'"> </form> </td>'; echo '</tr>'; } echo '</tbody>'; echo '</table>'; echo('<a href="sql.html"> Назад</a>');
} //update содержимого elseif($_GET['update_row']){ mysql_query("UPDATE clients SET Name =" .intval($_GET['Name'])." ",$db) or die("Could not connect: " . mysql_error()); //Вносим изменения в таблицу clients echo ("Строка изменена"); echo('<a href="sql.html"> Назад</a>'); }
?>
|
|