Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
62 / 29 / 5
Регистрация: 20.11.2009
Сообщений: 193

Как подружить $_POST и плейсхолдер ?a в DBSimple?

02.06.2010, 09:48. Показов 2062. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Использую DBSimple
Пытаюсь добавить в базу занные из формы таким образом
PHP
1
$DB->query('INSERT INTO users VALUES ("",?a)',$_POST)
Однако в таблицу забиваются нули вместо значенией, изменяется лишь автоинкриментное поле id.

Предварительная проверка $_POST есть.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.06.2010, 09:48
Ответы с готовыми решениями:

DBSimple и как его вообще ставить
Всем доброго времени. В общем суть вопроса в названии темы. Скачал библиотеку но вот как устанавливать так и не какой информации и не...

Что за плейсхолдер такой
Вот код с оберткой для хлебных крошек <div id="header"]> ]" class="home">]</a>` &showHidden=`0` ]] ...

DbSimple для работы с MySQL – подскажите альтернативу?
Доброго времени суток! Для работы с mysql использую библиотеку от Дмитрия Котерова DbSimple. Недавно начал изучать неймспейсы с...

3
 Аватар для ostgals
886 / 681 / 101
Регистрация: 23.01.2009
Сообщений: 1,582
02.06.2010, 10:22
$_POST - это не простой, а ассоциативный массив (хэш, в котором каждому элементу присвоен ключ). Следовательно, он не подходит для использования SQL-выражений INSERT с плейсхолдером ?a

Лучше используйте идентификаторный плейсхолдер (?#) и списковый (?a) одновременно:

PHP
1
$DB->query('INSERT INTO users (?#) VALUES (?a)', array_keys($_POST), array_values($_POST));
1
62 / 29 / 5
Регистрация: 20.11.2009
Сообщений: 193
02.06.2010, 14:47  [ТС]
Весьма доходчиво, спасибо! )

А в SELECT запросе, я так понимаю, велосипед не изобретешь:

PHP
1
2
3
$login=$_POST[login];
 
$DB->select ('SELECT * FROM users WHERE access="adm" AND login=?', $login);
или можно как то иначе, чтоб не плодить переменные?
0
 Аватар для ostgals
886 / 681 / 101
Регистрация: 23.01.2009
Сообщений: 1,582
02.06.2010, 14:55
DbSimple - довольно защищенная чтука. Можно и проще:

PHP
1
$DB->select ('SELECT * FROM users WHERE access="adm" AND login=?', $_POST['login']);
Все, что интерполируется через плейсхолдеры, экранируется и расставляются правильные кавычки.

Добавлено через 46 секунд
Т.е. SQL-инъекции можно не опасаться.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
02.06.2010, 14:55
Помогаю со студенческими работами здесь

Jquery mask + плейсхолдер под IE8-9
Всем привет, есть вопрос по жекверям. Попал на проект, в котором поддерживается осел 8 версии и старше. Нужно реализовать полноценные...

$_post и $_session в форме index.php. передача переменных из $_post в $_session
пока начал это делать... это в качестве примера. есть: <? session_save_path($_SERVER.'/session'); session_start(); if...

Как перезаписать массив из $_POST?
Люди добрые подскажите пожалуйста в $_POST лежит многомерный массив, как вывести его в переменную (перезаписать допустим в $array) ...

Как сравнить данные из $_POST с данными БД?
есть форма регистрации, и надо проверить введенное имя на существование в бд, если есть такое имя то не регистрировать пользователя, как...

Как удалить все данные из массива $_POST
При обновлении страницы данные снова записываются в базу. Можно ли как-то обнулить массив $_POST, чтобы он стал пуст?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru