$ wpdb-> get_row () কেবলমাত্র একটি একক সারিতে ফিরবে?


21

এটা কেন? আমি কনসোলে একই ক্যোয়ারীটি চেষ্টা করেছি এবং এটি একাধিক সারি ফিরিয়ে দিয়েছে। কোয়েরিটি এখানে:

$this->wpdb->get_row("SELECT * FROM ".$this->wpdb->users." WHERE status = 'active'", ARRAY_A);

বেশ কয়েকটি সক্রিয় ব্যবহারকারী থাকা অবস্থায় এটি একই একক সারিতে ফিরতে থাকবে। আমি কিছু অনুপস্থিত করছি?

উত্তর:


38

প্রকৃতপক্ষে, get_row()কেবলমাত্র যখন আপনি একটি ফলাফল পাওয়ার প্রত্যাশা করেন তা ব্যবহার করুন, অন্যথায় আপনি ব্যবহার করতে পারেনget_results()



41

ডাটাবেস থেকে ডেটা টানানোর জন্য তিনটি উপায় রয়েছে।

$wpdb->get_var: ডাটাবেস টেবিল থেকে একক মান পেতে এটি ব্যবহার করুন। আপনি মতামত মোট সংখ্যা গণনা করতে চান তাহলে। আপনি নিম্নলিখিত পদ্ধতিতে এটি করতে পারেন:

<?php 
$comment_count = $wpdb->get_var($wpdb->prepare("SELECT COUNT(*) FROM $wpdb->comments;")); 
echo '<p>Total comments: ' . $comment_count . '</p>';
?>

2।$wpdb->get_row : একটি সম্পূর্ণ টেবিল সারি পুনরুদ্ধার করতে আপনি এটি ব্যবহার করতে পারেন।

উদাহরণ:

<?php 
$thepost = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM $wpdb->posts WHERE ID = 1" ) );
echo $thepost->post_title; 
?>

অথবা

<?php 
$thepost = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM $wpdb->posts WHERE ID = 1" ), ARRAY_A );
print_r ($thepost); 
?>

ARRAY_AGet_row এ প্যারামিটারটি ব্যবহার করে আপনার পোস্ট ডেটাটি সহযোগী অ্যারে হিসাবে ফিরে আসে। বিকল্পভাবে, আপনি এটি ব্যবহার করতে পারেনARRAY_N সংখ্যাসূচকভাবে তালিকাযুক্ত অ্যারেতে আপনার পোস্ট ডেটা ফেরত প্যারামিটারটি ।

$wpdb->get_results: স্ট্যান্ডার্ড SELECTক্যোয়ারীগুলি ডাটাবেস থেকে একাধিক সারি ডেটা পুনরুদ্ধার করার জন্য get_results ফাংশনটি ব্যবহার করা উচিত।

<?php 
global $wpdb;
$allposts = $wpdb->get_results( $wpdb->prepare("SELECT ID, post_title FROM $wpdb->posts WHERE post_status = 'publish'") );
foreach ($allposts as $singlepost) { 
         echo '<p>' .$singlepost->post_title. '</p>';
}
?>

এবং আপনার শেষটি দরকার যেমনটি আপনি আশা করতে পারেন।


1
বিস্ময়কর বিশদ
উদাহরণসমূহ

নিশ্চিত! কেন নয় ..
পিক্সেলগ্রেনে


0

আমার সমাধান সহজ ..

<?php
function count_results() {
    # use the data base
    global $wpdb;

    # Query to count all results from one table
    $sql_count_results = '
        SELECT count(*) as count
        FROM `YOUR_TABLE`;';

    # Ejecute function
    $results = $wpdb->get_row( $sql_count_results , OBJECT );

    # Return results
    return $results->count;
}

ব্যবহার করুন:

<?php
echo count_results();

4
এই কোডটি পোস্ট করার ক্ষেত্রে এটি কী যুক্ত করে তাও যদি আপনি ব্যাখ্যা করতে পারেন তবে দুর্দান্ত হবে।
ব্র্যাভোকেল

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