$ 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.