$ Wpdb-> get_results () দ্বারা উত্পাদিত ত্রুটিগুলি সনাক্ত করা হচ্ছে


9

$ Wpdb-> get_results () ব্যবহার করার সময় আমি কীভাবে ত্রুটিগুলি সনাক্ত করব?

উদাহরণ স্বরূপ:

$result = $wpdb->get_results("SELECT * FROM this is not a valid query");

পূর্ববর্তী কোডটি কোনও ব্যতিক্রম বা ত্রুটি তৈরি করে না; এটি কেবল খালি অ্যারেতে ফলাফল নির্ধারণ করে। আমরা কীভাবে get_results () দ্বারা উত্পন্ন ত্রুটিগুলি বিশ্বস্তভাবে সনাক্ত করতে পারি?

উত্তর:


7

এখানে একটি শ্রেণীর ভেরিয়েবল রয়েছে যা সর্বশেষ ত্রুটির স্ট্রিং - $ wpdb-> last_error সংরক্ষণ করে। Query ডাব্লুপিডিবি কোড করার পদ্ধতিটি দেখে, কোয়েরিটি সফল হলে, $ wpdb-> last_error একটি ফাঁকা স্ট্রিং হবে, যদি এটি ব্যর্থ হয় তবে এটি MySQL দ্বারা ফিরে আসা ত্রুটিযুক্ত স্ট্রিং হবে। সুতরাং এই জাতীয় কিছু কৌশল করতে হবে।

$result = $wpdb->get_results("SELECT * FROM this is not a valid query");
if ($wpdb->last_error) {
  echo 'You done bad! ' . $wpdb->last_error;
}

যুক্তিসঙ্গত মনে হচ্ছে - আমি এখনই এটি সন্ধান করতে পারছি না, তবে এটি যদি কাজ করে তবে ভবিষ্যতে এটি কার্যকর হবে! ধন্যবাদ! :)
— রিনোগো

পরবর্তী কার্যভার এ ফিরে এসেছিল - দুর্দান্ত কাজ করে! আমি এই কোডটি একটি ফাংশনে রেখেছি; আমি আপনার উত্তর আপডেট করেছি; আমি আশা করি আপনি কিছু মনে করবেন না!
— রিনোগো

1

আমি যে সন্ধান করতে পারি তা হ'ল:

$wpdb->show_errors();
$result = $wpdb->get_results("SELECT * FROM this is not a valid query");
$wpdb->hide_errors();

দুর্ভাগ্যক্রমে, সমস্যাটি খুব কমই সমাধান করে। আমি ত্রুটিটিকে প্রোগ্রামগতভাবে পরিচালনা করতে চাই, কেবল এটি আউটপুট প্রবাহে প্রতিধ্বনি নয়।


আমি মনে করি আউটপুট বাফারকে
— বিরত রেখে
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.