Форум программистов, компьютерный форум, киберфорум
PHP: ООП
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
 Аватар для Voldemort
0 / 0 / 0
Регистрация: 19.01.2017
Сообщений: 2

Работа с PDO

19.01.2017, 22:14. Показов 816. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Недавно начал изучать php, так как он нужен был для связи базы данных с сайтом. Нашел видео урок по написанию кода для этой самой связи, но когда стал пробовать у себя, то выдается ошибка Fatal error: Cannot re-assign $this in E:\USR\www\Database.php on line 9.
Вот код программы
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<?php
class Database{
 public $isConn;
 protected $datab;
 //connect to db
 public function __construct(#username="root", $password="", $host="localhost", $dbname="Database", $options=[]){
 $this->isConn=TRUE; // строка, содержащая ошибку
 try{
 $_this->datab=new PDO ("sqlsrv:Server= {$host}; dbname={$dbname}; charset=utf8", $username, $passwd, $options);
 $_this->datab->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXEPTION);
 $_this->datab->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
 } catch (PDOException $e) {
 throw new Exception($e->getMessage());
 
 }
 }
 //disconnect from db
 public function Disconnect(){
 $_this->datab=NULL;
 $_this->isConn=FALSE;
 }
 //get row
 public function getRow($query, $params=[]){
 try {
 $stmt=$_this->datab->prepare($query);
 $stmt->execute($params);
 return $stmt->fetch();
 } catch (PDOException $e){
 throw new Exception($e->getMessage());
 }
 }
 //get rows
 public function getRows($query, $params=[]){
 try {
 $stmt=$_this->datab->prepare($query);
 $stmt->execute($params);
 return $stmt->fetchAll();
 } catch (PDOException $e){
 throw new Exception($e->getMessage());
 }
 }
 //insert row
 public function insertRow($query, $params=[]){
 try {
 $stmt=$_this->datab->prepare($query);
 $stmt->execute($params);
 return TRUE;
 } catch (PDOException $e){
 throw new Exception($e->getMessage());
 }
 }
 //update row
 public function updateRow($query, $params=[]){
 $_this->insertRow($query, $params);
 }
 //delete row
 public function deleteRow($query, $params=[]){
 $_this->insertRow($query, $params);
 }
}
?>
Добавлено через 24 минуты
То, что во всех остальных строчках написано $_this - это неудачная попытка исправления (Я исправлял и ошибочную строчку тоже), но результата это не дало.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
19.01.2017, 22:14
Ответы с готовыми решениями:

работа с PDO
при подключении к mysql через PDO ниче не происходит... т.е. $dbType='mysql'; $dbHost='localhost'; $dbName='name'; ...

Работа с БД MySQL | PDO
Работа с БД MySQL в PHP Данный пост решил написать в дополнение Работа с БД MySQL в PHP автор (KOPOJI). Преимущества PDO: ...

Работа PDO в функциях
Люди, всем привет. проблема в следуюшем: когда делаю PDO запрос - работает нормально, но как только тотже самый запрос вставляю в функцию...

1
Эксперт PHP
3900 / 3238 / 1353
Регистрация: 01.08.2012
Сообщений: 10,914
19.01.2017, 22:50
Цитата Сообщение от Voldemort Посмотреть сообщение
Недавно начал изучать php
Начните с чего-нибудь попроще, без ООП. Либо начните изучение ООП с самого начала.

Цитата Сообщение от Voldemort Посмотреть сообщение
Cannot re-assign $this
Переменная $this имеет особое назначение, её нельзя перезаписывать.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.01.2017, 22:50
Помогаю со студенческими работами здесь

PDO
Есть код: $Plan_ID = 1; $stmt = $pdo-&gt;prepare('SELECT * FROM Plans WHERE ID = ?'); $stmt-&gt;execute(); $Plan = $stmt-&gt;fetchAll(); ...

BETWEEN в PDO
Начал буквально час назад работать с опцией BETWEEN, чтобы сделать вывод записей из БД по определенной ячейке, если число в ней совпадает с...

PDO
Всем привет, нашёл готовый PDO класс но вот не могу разобраться как сделать определённый запрос &lt;?php /** * Thin PDO Wrapper: A...

PDO и IN
Как в PDO реализовать такой запрос? SELECT name FROM products WHERE id IN (value1, value2) пробовал вот так $params=array('id'=&gt;...

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


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru