Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Обработка ввода скриптом phpСтр 1 из 2Следующая ⇒
Задание
Прочитать теорию. Несмотря на то, что это - теоретическое занятие, не требующее обязательной оценки, рекомендую попробовать реализовать описанные конструкции, если вы этого не пробовали на занятиях в колледже. Теория Представленные в теории конструкции позволяют добавлять, удалять и исправлять данные с помощь доступа к базе данных через PHP. Это может быть небезопасной операцией, так как в поле ввода информации может быть введен нежелательный код. Чтобы этого избежать, можно предварительно проверять и обрабатывать вводимую информацию процедурами сервера, процедурами PHP или специальными процедурами. Например, если вместо $_GET['value'] написать strip_tags($_GET['value']), то из строки value будут исключены все символы скриптов и тегов, таким образом, нежелательный код, введенный поле запроса, не выполнится. Такие предосторожности необходимо соблюдать не только при внесении изменений в базу, и при получении информации из базы данных. Примеры приведены без использования средств предохранения, чтобы не усложнять смысл конструкций.
Если при выводе информации из баз данных форму html и обработчик PHP допустимо было помещать в одном файле веб-станицы (но нежелательно, так как может происходить многократное повторение одинаковых запросов при обновлении веб-страницы), то при добавлении данных обработчик должен обязательно находиться в отдельном файле, на который ссылается форма, так как при обновлении страницы обработчик может выполниться многократно, и в базу будет занесена лишняя (дублирующая) информация. В конструкциях всех примеров обработчики находятся в отдельных файлах.
Конструкции MS SQL и MySQL даны на примерах разных баз данных.
MS SQL Ввод новых данных
Форма html для ввода данных
<form action="insert_m.php" metod="get">
Название группы: <input name="fNameGroup" size="50" type="text"><br> Куратор группы: <input name="fCurator" size="30" type="text"><br>
<p><input name="add" type="submit" value="Добавить"> <input name="clear" type="reset" value="Очистить"></p> </form>
Обработка ввода скриптом php
<?php // MSSQL
// установление соединения с сервером $serverName = "DRACO-DNS\SQLEXPRESS";
$connectionInfo = ARRAY("UID" => "avd", "PWD" => "****", "Database"=>"College");
$linkMS = sqlsrv_connect($serverName, $connectionInfo);
IF($linkMS) { echo "Соединение установлено.<br>"; } ELSE { echo "Невозможно подключиться к серверу.<br>"; DIE(print_r(sqlsrv_errors(), true)); }
// База sqlsrv_query($linkMS,'use College;');
// Перекодировка данных $cNameGroup = iconv('UTF-8','windows-1251',$_GET['fNameGroup']); $cCurator = iconv('UTF-8','windows-1251',$_GET['fCurator']);
// Строка запроса на добавление записи в таблицу: $insert = "INSERT INTO Groups(NameGroup, Curator) VALUES('".$cNameGroup."','".$cCurator."');";
sqlsrv_query($linkMS,$insert); // Выполнение запроса sqlsrv_close($linkMS); // Отключение
echo "<a href='insert.php'>Запрос выполнен, вернуться</a>";
?> Удаление данных
Исправление данных
MySQL Ввод новых данных
Форма html для ввода данных
<form action="insert_m.php" metod="get">
Название предмета: <input name="Nazvanie" size="50" type="text"><br>
<p><input name="add" type="submit" value="Добавить"> <input name="b2" type="reset" value="Очистить"></p> </form>
Удаление данных
Форма html для ввода данных
<form action="delete_m.php" metod="get">
<select name="Nazvanie" size = “1”> <?php // установление соединения с сервером (базу можно указать позже) $linkMY = mysqli_connect("localhost","root","****","academy") or die ("Невозможно подключиться к серверу"); mysqli_query($linkMY,'SET NAMES utf8'); // тип кодировки mysqli_query($linkMY,'use academy;');
$query = mysqli_query($linkMY,'select Nazvanie from Predmet;');
while ($result = mysqli_fetch_assoc($query)) { echo '<option value='.$result['Nazvanie'].'>'.$result['Nazvanie'].'</option>'; //Формируем новую строчку } ?> </select>
<p><input name="del" type="submit" value="Удалить"></p> </form>
Задание
Прочитать теорию. Несмотря на то, что это - теоретическое занятие, не требующее обязательной оценки, рекомендую попробовать реализовать описанные конструкции, если вы этого не пробовали на занятиях в колледже. Теория Представленные в теории конструкции позволяют добавлять, удалять и исправлять данные с помощь доступа к базе данных через PHP. Это может быть небезопасной операцией, так как в поле ввода информации может быть введен нежелательный код.
Чтобы этого избежать, можно предварительно проверять и обрабатывать вводимую информацию процедурами сервера, процедурами PHP или специальными процедурами. Например, если вместо $_GET['value'] написать strip_tags($_GET['value']), то из строки value будут исключены все символы скриптов и тегов, таким образом, нежелательный код, введенный поле запроса, не выполнится. Такие предосторожности необходимо соблюдать не только при внесении изменений в базу, и при получении информации из базы данных. Примеры приведены без использования средств предохранения, чтобы не усложнять смысл конструкций.
Если при выводе информации из баз данных форму html и обработчик PHP допустимо было помещать в одном файле веб-станицы (но нежелательно, так как может происходить многократное повторение одинаковых запросов при обновлении веб-страницы), то при добавлении данных обработчик должен обязательно находиться в отдельном файле, на который ссылается форма, так как при обновлении страницы обработчик может выполниться многократно, и в базу будет занесена лишняя (дублирующая) информация. В конструкциях всех примеров обработчики находятся в отдельных файлах.
Конструкции MS SQL и MySQL даны на примерах разных баз данных.
MS SQL Ввод новых данных
Форма html для ввода данных
<form action="insert_m.php" metod="get">
Название группы: <input name="fNameGroup" size="50" type="text"><br> Куратор группы: <input name="fCurator" size="30" type="text"><br>
<p><input name="add" type="submit" value="Добавить"> <input name="clear" type="reset" value="Очистить"></p> </form>
Обработка ввода скриптом php
<?php // MSSQL
// установление соединения с сервером $serverName = "DRACO-DNS\SQLEXPRESS"; $connectionInfo = ARRAY("UID" => "avd", "PWD" => "****", "Database"=>"College");
$linkMS = sqlsrv_connect($serverName, $connectionInfo);
IF($linkMS) { echo "Соединение установлено.<br>"; } ELSE { echo "Невозможно подключиться к серверу.<br>"; DIE(print_r(sqlsrv_errors(), true)); }
// База sqlsrv_query($linkMS,'use College;');
// Перекодировка данных $cNameGroup = iconv('UTF-8','windows-1251',$_GET['fNameGroup']); $cCurator = iconv('UTF-8','windows-1251',$_GET['fCurator']);
// Строка запроса на добавление записи в таблицу: $insert = "INSERT INTO Groups(NameGroup, Curator) VALUES('".$cNameGroup."','".$cCurator."');";
sqlsrv_query($linkMS,$insert); // Выполнение запроса sqlsrv_close($linkMS); // Отключение
echo "<a href='insert.php'>Запрос выполнен, вернуться</a>";
?> Удаление данных
|
||||||
Последнее изменение этой страницы: 2021-05-27; просмотров: 59; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.21.100.34 (0.014 с.) |