Чат Telegram
Группа ВКонтакте
Новый комментарий


babka.s.miniganom 20.07.2018 в 16:03

все делаю как по инструкции, а запись данных в таблицу все равно не происходит, пробовал разные варианты, такая же история. при этом данные из других таблиц прекрасно выводит.
update!
решил проблему, нужно добавить авто инкримент полю id, чтобы запросы могли добавляться, ибо он ругался, что нет поля.

ivashkevich 21.07.2018 в 06:22

Действительно, прошу прощения за ошибку. Спасибо, исправил.

Pro100Bah 21.04.2019 в 10:10
CREATE TABLE `data` (
  `id` int(11) NOT NULL AUTO_INCREMENT,,
  `name` varchar(32) DEFAULT NULL,
  `year` char(4) DEFAULT NULL,
  PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Лишняя запятая (AUTO_INCREMENT,,), а может мне кажется

ivashkevich 21.04.2019 в 17:18

Спасибо, поправил!

esqrx 04.07.2019 в 04:19

у меня чего-то не работает fetchAll() , выводил через while какая еще есть альтернатива fetchAll()? в инете очень много вариантов нашел как вывести данные, но интересует самый популярный/удобный способ

ivashkevich 07.07.2019 в 17:44

Популярного способа нет. Каждый способ лучше подходит для конкретного случая.

XXX 19.09.2019 в 22:31

``- кавычки обязательно писать? Или можно как в phpadmin не писать их?

ivashkevich 21.09.2019 в 07:15

Это необязательно, но является правилом хорошего тона. Как и написание конструкций языка SQL большими буквами.

vitaliy2x2@gmail.com 26.12.2019 в 00:38

PDO ( PHP Data Objects ) - эта штука есть встроенная в PHP Admin или Open Server?

Ввожу в консоль php -i | grep 'pdo' как советуют тут https://p0vidl0.info/php-pdo-rabotaem-s-bazami-dannyx-pravilno.html для проверки, что это приложение есть на компьютере. И консоль не принимает команду. Вот скриншот: https://prnt.sc/qfpct2

Тогда я нашел файл через поиск на дисках: https://prnt.sc/qfpf3c (в найстройках Open Server в модулях выставлен PHP_7.0).

Что дальше делать, как войти в PDO? В интернете кучу всего написано, но никакой внятной конкретики.

ivashkevich 26.12.2019 в 19:10

PDO - это модуль (либа) для PHP, которая по умолчанию установлена в OpenServer. Что значит войти в PDO?) Рассказывайте, что пытаетесь сделать)

vitaliy2x2@gmail.com 26.12.2019 в 21:52

Куда это вписывать?

$dbh = new \PDO(
    'mysql:host=localhost;dbname=users;',
    'root',
    ''
);

Я пытался туда же, где пишем MySQL запросы, выдает ошибку. В командную панель cmd пытался - тоже ничего не выходит.

Может, нужно создать файл с расширением .php, вписать туда код и потом, войдя в Open Server, двойной клик на нем?

ivashkevich 27.12.2019 в 03:19

А вы изучением PHP ещё не занимались?

vitaliy2x2@gmail.com 27.12.2019 в 08:35

Нет еще. Мне надо научиться управлять базой данных, чтобы при добавлении контента на сайт не приходилось каждый раз его доверстывать.

ivashkevich 27.12.2019 в 08:52

А, тогда забейте на этот урок, позже вернётесь, после курса PHP для начинающих.

vitaliy2x2@gmail.com 27.12.2019 в 21:34

хорошо)

noname11.11@icloud.com 06.02.2020 в 23:28

я прошел курс php для начинающих но там про PDO ни слова. Помогите разобраться пожалуйста.
я создаю в PhpStorm класс с именем PDO
и добавляю туда код который написан у вас в статье для подключения к базе но подключение не происходит.

noname11.11@icloud.com 06.02.2020 в 23:38

все разобрался сам)))

X-Nick 26.02.2020 в 23:41
$stm = $dbh->prepare('INSERT INTO data (`name`, `year`) VALUES (:name, :year)');
$stm->bindValue('name', 'Имя');
$stm->bindValue('year', '1703');
$stm->execute();

Зачем тут именованные параметры :name и :year и для чего это связывание? Какая разница - передать напрямую в VALUES эти значения(мы же сами их и задаем) или через связывание?

ivashkevich 28.02.2020 в 05:04

Происходит фильтрация и санитация данных. Исключается SQL Injection.

Логические задачи с собеседований