मैं इस तरह के अपवादों को फेंकने के लिए त्रुटि मोड सेट करना पसंद करता हूं:
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
डेटाबेस से कनेक्ट होने के ठीक बाद। तो हर समस्या एक PDOException फेंक देगी तो आपका कोड होगा:
$selectQuery = '
SELECT
' . implode($allFields, ', ') . '
FROM
People
WHERE
' . $fieldName . ' = :value
';
try
{
$selectQueryResult = $db->prepare($selectQuery);
selectQueryResult->bindParam(':value', $fieldValue);
$selectQueryResult->execute();
}
catch(PDOException $e)
{
handle_sql_errors($selectQuery, $e->getMessage());
}
जहां समारोह होगा:
function handle_sql_errors($query, $error_message)
{
echo '<pre>';
echo $query;
echo '</pre>';
echo $error_message;
die;
}
'; इको $ error_message; मरना;} वास्तव में मैं एक सामान्य फ़ंक्शन का उपयोग कर रहा हूं जिसमें कुछ ऐसा भी है
$debug = debug_backtrace();
echo 'Found in ' . $debug[0]['file'] . ' on line ' . $debug[0]['line'];
मुझे यह बताने के लिए कि अगर मैं एक से अधिक प्रश्न चला रहा हूँ तो समस्या कहाँ थी