Това е най-разпространеният мит за отстраняването на грешки в SQL. „Трябва да видя заявката след подготовка, за да мога да разбера дали е възникнала грешка“. Факт е, че не , и ще ви кажа защо.
След като заявката е подготвена, заместителят може да се счита за валиден низ/цяло число . Не те интересува какво има в него.
Освен това, ако настроите PDO правилно, ще получите подробно PDOException
с подробности за грешката, която сте имали, заедно с пълно проследяване на мястото, където се е случила грешката, плюс получавате низа за грешка от MySQL, което прави синтактичните грешки много лесни за намиране.
За активиране на PDO изключения и деактивиране на емулира се подготвя:
$pdo = new PDO("mysql:host=localhost;dbname=database_name", "user", "password");
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);