Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
1 / 1 / 1
Регистрация: 25.10.2016
Сообщений: 83
1

Правильно ли составлен запрос

24.01.2017, 15:46. Показов 597. Ответов 6
Метки pdo, php (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, подскажите правильно ли составлен запрос:
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
try{    
        $stmt = $pdo -> prepare("UPDATE users SET");
        if($newPassword){
            $stmt .= "`password` = :newPassword, ";
        }
        $stmt .= "`name` = :name,
                  `sec_name` = :sec_name,
                  `surname` = :surname,
                  `adress` = :adress,
                  `tel` = :tel 
            WHERE `email` = :email AND `password` = :password limit 1";   
        $salt = getSalt($email);
        if (!$salt) {
            return false;
        } 
        $curPasswordMD5 = passwordHash($curPassword, $salt);
        $stmt->execute(
                 array( ":name" => $name,
                        ":sec_name" => $sec_name,
                        ":surname" => $surname,
                        ":adress" => $adress,
                        ":tel" => $tel,
                        ":newPassword" => $newPassword['hash'],
                        ":email" => $email,
                        ":password" => $curPasswordMD5['hash'],
                       )                      
                ); 
        return $stmt;
        } catch (Exception $e) {
            exit($e->getMessage());
        }
Добавлено через 19 часов 55 минут
Разобрался с предшествующими ошибками, и теперь по этому запросу интерпритатор пхп выкидывает мне исключение
<br />
<b>Catchable fatal error</b>: Object of class PDOStatement could not be converted to string in <b>C
:\xampp\htdocs\myshop.local\models\UsersModel.php</b> on line <b>236</b><br />
это 11 строка кода приведенного выше. Подскажите что не правильно?

Добавлено через 2 минуты
Я с такой ошибкой никогда не сталкивался, поэтому даже не знаю с чего начать.

Добавлено через 17 секунд
Я с такой ошибкой никогда не сталкивался, поэтому даже не знаю с чего начать.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.01.2017, 15:46
Ответы с готовыми решениями:

Правильно ли составлен запрос ?
SELECT * FROM author_user WHERE name = &quot;.$log.&quot; password = sha1(&quot;.$pass.&quot;)&quot; Правильно ли...

Как в sql запрос вставить еще один запрос правильно?
Есть длинный запрос, в котором можете даже не разбираться если не хотите, но выдает он следующее:...

Запрос INSERT INTO как построить запрос правильно?
Народ помогите пожалуйста сделать запрос правильно. Имеется таблица users в ней имеется данные для...

Query, правильно ли составлен запрос?
Правильно ли я составил запрос? public Cursor getTitleDB() { return...

6
Модератор
4217 / 3058 / 583
Регистрация: 21.01.2011
Сообщений: 13,205
24.01.2017, 16:23 2
Цитата Сообщение от Tverdislav Посмотреть сообщение
Подскажите что не правильно?
Какую роль там играет LIMIT ?
0
1 / 1 / 1
Регистрация: 25.10.2016
Сообщений: 83
24.01.2017, 16:32  [ТС] 3
Grossmeister, Выбрать одну строку с таким мылом и паролем в которую нужно внести изменения.
Вообще это запрос на изменение данных внесенных при регистрации.
0
Модератор
4217 / 3058 / 583
Регистрация: 21.01.2011
Сообщений: 13,205
24.01.2017, 16:49 4
Цитата Сообщение от Tverdislav Посмотреть сообщение
Выбрать одну строку с таким мылом и паролем в которую нужно внести изменения
Не понял. Обычно строка задается сочетанием значений в WHERE. Значит ли это, что у тебя много строк с такими значениями, которые ты указываешь в WHERE? А если их действительно много, то ты меняешь произвольную из них (впрочем сомневаюсь, что синтаксис UPDATE допускает LIMIT).
0
1 / 1 / 1
Регистрация: 25.10.2016
Сообщений: 83
24.01.2017, 16:58  [ТС] 5
Grossmeister, но и без LIMIT все остается по прежнему, так что я думаю проблема не в нем. В гугле вообще ничего похожего нет. Т.е. про это ошибку много написано но у всех примеры какие-то странные, кто вместе с PDO использует mysql_query, кто-то с
PHP
1
$stmt = $pdo -> query()
использует
PHP
1
$stmt->execute()
и у них выкидывает такие ошибки.
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
24.01.2017, 18:17 6
Цитата Сообщение от Grossmeister Посмотреть сообщение
впрочем сомневаюсь, что синтаксис UPDATE допускает LIMIT
допускает https://dev.mysql.com/doc/refm... pdate.html
0
1 / 1 / 1
Регистрация: 25.10.2016
Сообщений: 83
24.01.2017, 18:41  [ТС] 7
Всем спасибо проблема решена. Все дело было в операторе if
0
24.01.2017, 18:41
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.01.2017, 18:41
Помогаю со студенческими работами здесь

Правильно ли составлен вопрос
Вопрос Is he 22 years old ? правильно составлен ? Или надо He is 22 years old ?

Правильно ли составлен robots.txt?
Приветствую! Года 2 назад составлял robots.txt для своего сайта на wordpress. Вот он: Недавно...

Правильно ли составлен robots.txt
Добрый день! Прочитала все страницы в этой теме, но хочется перестраховаться, подскажите,...

Правильно составлен robots.txt ?
Правильно составлен robots.txt ? User-agent: * Disallow: /a/ Disallow: /stat/ Disallow:...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru