0 / 0 / 0
Регистрация: 24.01.2014
Сообщений: 28
1

Placeholders pdo php

01.03.2014, 16:53. Показов 462. Ответов 0
Метки нет (Все метки)

Приветствую вас, знатоки PHP! Помогите пожалуйста понять как использовать плэйсхолдеры, до меня вот, не доходит, так как не щупал живого примера.

Вот к примеру есть таки, простой пример:

SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$sql1 = $db->query("
                    SELECT
                            `categories`.`title_cat`,
                            `users`.`name_user`
                    FROM
                            `categories`
                    JOIN
                            `users`
                    ON
                            `categories`.`meta-author_cat` = `users`.`id_user`
                    WHERE
                            `categories`.`id_cat` = 1;");
$sql1->setFetchMode(PDO::FETCH_ASSOC);
$row1 = $sql1->fetch();
PHP
1
<?=$row1['title_cat']?>
Как это перебросить в плэйсхолдеры? И безопасно ли использовать в данном случаи setFetchMode();?

Спасибо!

Добавлено через 12 часов 37 минут
Вот нашел на одном западном форуме ответ. Можете пожалуйста сказать, гарантирует эта фильтрация мне, некую защиту (но не во всем) от sql инъекций?:

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$sql1 = $db->prepare("
                        SELECT
                                `categories`.`title_cat`
                                `users`.`name_user`
                        FROM
                                `categories`
                        JOIN
                                `users`
                        ON
                                `categories`.`meta-author_cat` = `users`.`id_user`
                        WHERE
                                `categories`.`id_cat` = :id_cat;");
$inj1 = 1;
$sql1->bindParam(':id_cat', $inj1, PDO::PARAM_STR);
$sql1->execute();
$sql1->setFetchMode(PDO::FETCH_ASSOC);
$row1 = $sql1->fetch();
Добавлено через 1 час 49 минут
Правильно ли я сделал запрос?:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$sql2 = $db->prepare("
                        SELECT
                                `articles`.`id_art`,
                                `articles`.`link_art`,
                                `articles`.`title_art`
                        FROM
                                `articles`
                        LIMIT
                                :inj_start,
                                :inj_num;
                     ");
                 
$inj_start = 1;
$inj_num = 2;
$sql2->bindParam(':inj_start', $inj_start, $start, PDO::PARAM_STR);
$sql2->bindParam(':inj_num', $num, $inj_num, PDO::PARAM_STR);
$sql2->execute();
P.S. Он у меня работает, но не уверен, правильно ли он написан.
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.03.2014, 16:53
Ответы с готовыми решениями:

update pdo placeholders
Приветствую вас форумчане. Помогите пожалуйста, пытаюсь на pdo обновить данные в базе, но там...

Php,pdo, mysql+php,
К примеру у меня есть функция добавления в бд через PDO Так вот, а если я передаю массив значений,...

PHP PDO
include('connect.php'); $busynamequery = $pdo-&gt;prepare('SELECT * FROM tz_members WHERE...

PHP и PDO(Singleton)
Здравствуйте. Нуждаюсь в Вашей помощи, второй день ламаю голову над решением проблемы.Хочу вывести...

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.03.2014, 16:53

PHP и PDO(Singleton)
Здравствуйте. Нуждаюсь в Вашей помощи, второй день ламаю голову над решением проблемы.Хочу вывести...

PHP Data Objects (PDO)
Доброго всем дня. Нахожусь на этапе познания PDO. Вот в чем вопрос: &lt;?php...

PHP PDO UPDATE неработает
вот запрос $sql = &quot;UPDATE calculators SET name = :name , url = :url , height = :height WHERE...

PHP, PDO, POST, INSERT
Есть несколько баз данных, для удобства редакторования, администратор отправляет данные через метод...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru