Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Функция записи в БД из формы
Насколько это будет правильный и безопастный код, дабы на фильтрацию в самом html поле(input) надежды мало. Помогите пожалуйста.
exlant
Отправлено: 22 Мая, 2015 - 00:10:48
Посетитель
Покинул форум
Сообщений всего: 425
Дата рег-ции: Февр. 2015
Помог: 14 раз(а)
то как вы пишете абсолютно не безопасно! Да и API mysql_* уже устарела, и будет удалена в следующей версии php! Используйте mysqli или pdo c их подготавливаемыми запросами!
Мелкий
Отправлено: 22 Мая, 2015 - 00:14:46
Активный участник
Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009 Откуда: Россия, Санкт-Петербург
Покинул форум
Сообщений всего: 32
Дата рег-ции: Май 2015
Помог: 0 раз(а)
Грубо говоря.писать не mysql_query, а mysqli_query и mysqli_connect ?
exlant
Отправлено: 22 Мая, 2015 - 00:49:19
Посетитель
Покинул форум
Сообщений всего: 425
Дата рег-ции: Февр. 2015
Помог: 14 раз(а)
Александерр это далеко не все отличии....
В плане безопасности там есть - подготавливаемые запросы! Про них тоже следует почитать!
в общем читайте! Не думаю что у кого то есть желание пересказывать вам мануал!
Покинул форум
Сообщений всего: 32
Дата рег-ции: Май 2015
Помог: 0 раз(а)
exlant пишет:
Александерр это далеко не все отличии....
В плане безопасности там есть - подготавливаемые запросы! Про них тоже следует почитать!
в общем читайте! Не думаю что у кого то есть желание пересказывать вам мануал!
Большое спс,понял. В моем запросе вручную нужно думать о безопасности,а в Mysgli уже есть безопасные подготовленные запросы. отличия по коду смотрю не велики.
Александерр
Отправлено: 24 Мая, 2015 - 21:44:19
Новичок
Покинул форум
Сообщений всего: 32
Дата рег-ции: Май 2015
Помог: 0 раз(а)
подскажите как выглядит запрос записи в БД через PDO из формы плиз.
Вместо этого:
1. нет, в таком виде, как я написал(массив для подготовленных запросов с параметрами, можно обозвать как пожелаете...) $parameters = array(':url' => $_POST['url'], ':id' => $id);
2. Это запрос к базе данных, что бы не писать вот так: $sth = $dbh->prepare('UPDATE `configs` SET `bloknot`= :url `WHERE` id= :id');
3. Вот это само подключение $dbh-> http://php.net/manual/ru/pdo.construct.php
а $sth означает "Statement Handle"...
И вся эта строчка, подготавливает запрос - $sql к ДБ - $dbh , и помещает объект с подготовленным запросом в $sth
4. execute() - выполняет подготовленный запрос, в нашем случаи с параметрами, которые находятся в массиве - $parameters.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.