Articles of pdo

PDO, отрезая строки с символом UTF-8

Я использую PHP 5.5, и когда я пытаюсь вставить символ UTF-8 в базу данных MySQL, PDO отключает его при первом символе, отличном от ASCII. Я установил мое соединение: (DB_TYPE.':host='.DB_HOST.';dbname='.DB_NAME.';charset=utf8', DB_USER, DB_PASS, array(PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING)) Я попробовал SET NAMES, что все сообщения, но это не работает либо потому, что проблема НЕ на стороне […]

Последний идентификатор вставки не возвращается

У меня есть следующий код для вставки данных в базу данных с использованием PDO. Он вставляет данные в базу данных, но не возвращает последний, вставленный в ID. здесь userid является первичным ключом try { $dbh = new PDO('mysql:host=localhost;dbname=crud_demo', "username", "password"); $sqlQuery = "INSERT INTO users(userid,first_name,last_name,email,password) VALUES(:userid,:first_name,:last_name,:email,:password)"; $statement = $dbh->prepare($sqlQuery); $bind = array( ":userid" => "bhavik", […]

PHP PDO избегает вопросительного знака, поэтому он не считает, что это заполнитель

У меня есть запрос, который выглядит так: SELECT CONCAT('path/to/page/?id=', id) AS link FROM users WHERE name = ? Я использую PDO для подготовки этого утверждения, и я получаю ошибку Invalid parameter number: number of bound variables does not match number of tokens потому что он считает, что знак вопроса в строке CONCAT является заполнителем. Есть […]

Почему моя транзакция PHP не работает?

Я работаю над школьным проектом, создающим CMS для моего портфолио. У меня возникли проблемы с работой моей функции обновления. У меня такое чувство, что это связано с тем, как я строю свою PDO Transaction. В моей базе данных есть таблица проектов, таблица категорий и ассоциативная таблица content_category. Я могу просто вставить мои проекты в эти […]

Сбой PHP (или MySQL) при извлечении большой записи базы данных (~ 5 МБ)

Он не отображает никаких ошибок, просто пустую страницу. Я попробовал умереть ('test'), прежде чем я позвоню своей функции, чтобы получить запись, и она делает это, но когда я помещаю die ('test') после того, как я получаю строку, все, что я получаю, это пустая страница (on chrome it says this: Error 324 (net::ERR_EMPTY_RESPONSE): The server closed […]

Преимущества pdo над mysql_ * или mysqli_ *

Я заметил, что многие люди используют или мигрируют в pdo, я никогда не использовал это раньше, и я действительно не хотел этого менять, но я все равно не изменился, но мне хотелось бы узнать от людей, которые используют pdo каждый день, почему я должен это изменить, я имею в виду, какие преимущества у него есть […]

Как работают подготовленные заявления?

Я пишу несколько подпрограмм DB, и я использую подготовленные инструкции. Моя среда PDO с PHP5. Я понимаю, что подготовленные заявления в основном обеспечивают преимущество в производительности, а также некоторые вспомогательные бонусы, такие как отсутствие ручных входных данных SQL-escape. Мой вопрос касается части производительности. У меня есть две реализации функции getPrice ниже, которая принимает идентификатор продукта […]

PDO Автоматическое сглаживание при извлечении?

У меня есть следующие две таблицы: Foo: ID NUMBER(38) DATA VARCHAR2(10) бар: ID NUMBER(38) FOO_ID NUMBER(38) DATA VARCHAR2(10) При использовании PDO для запроса следующего запроса: SELECT * FROM foo f INNER JOIN bar b ON (f.id = b.foo_id) Есть ли способ вернуть все столбцы из соединения в каком-то автоматическом сглаженном формате (например, «FOO.ID», «FOO.DATA», «BAR.ID» […]

PDO :: FETCH_ASSOC Что такое PDO :: FETCH_ARRAY?

<?php $sth = $dbh->prepare("SELECT name, colour FROM fruit"); $sth->execute(); /* Fetch all of the remaining rows in the result set */ print("Fetch all of the remaining rows in the result set:\n"); $result = $sth->fetchAll(); print_r($result); ?> В приведенном выше примере будет выведено нечто похожее: Извлеките все оставшиеся строки в результирующем наборе: Array ( [0] => […]

Изменена страница подключения к PDO и получен mysql_error ()

Перебирал мой код, чтобы превратить все мои запросы в подготовленные запросы (PDO). Я изменил страницу подключения соответственно. Поскольку я очищал мою страницу функций, я наткнулся на ошибку mysql_error() expects parameter 1 to be resource, integer given указанное в моей функции электронной почты email_exists($email){ $query1 = mysql_query("SELECT COUNT(user_id) FROM tempusers WHERE `email` = '$email'") OR die(mysql_error(0)); […]