НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
⊗ppSpPDVB 63 of 83 menu

Позиционная привязка переменных в PDO в PHP

Можно привязывать переменные к запросу по одной. Это делается с помощью метода bindValue. Затем полученный запрос исполняют, но в этом случае в execute ничего не передается.

Такая привязка позволяет точно указать тип переменной, отменяя автооборачивание в кавычки для числовых значений. Давайте посмотрим, как это делается. Пусть у нас есть две переменные, строковая и числовая:

<?php $name = 'name1'; $age = 25; ?>

Подготовим запрос:

<?php $sql = 'SELECT * FROM users WHERE name=? or age=?'; $res = $pdo->prepare($sql); ?>

Теперь привяжем переменные к запросу с помощью метода bindValue. В первом параметре метода указывается номер позиции в запросе, во втором параметре - имя переменной, а в третьем указывается тип переменной (числовой или строковый):

<?php $res->bindValue(1, $name, PDO::PARAM_INT); $res->bindValue(2, $age, PDO::PARAM_STR); ?>

Выполним запрос:

<?php $res->execute(); ?>

Посмотрим на результат:

<?php while ($row = $res->fetch()) { var_dump($row); } ?>

Даны переменные:

<?php $name1 = 'name1'; $name2 = 'name2'; ?>

Получите юзеров, у которых имя совпадает со значением одной или второй переменной.

Даны переменные:

<?php $age1 = 21; $age2 = 22; ?>

Получите юзеров, у которых возраст совпадает со значением одной или второй переменной.

Русский
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить