William William - 1 month ago 10
MySQL Question

What argument does my function need to echo get_results() query results

This is my WordPress database query:

global $wpdb;

$table_name = $wpdb->prefix . 'qs_css';
$db_css = $wpdb->get_results(
"
SELECT qs_the_css
FROM $table_name
WHERE qs_css_id = 1
"
);

echo $db_css[0]->qs_the_css; // WORKS JUST FINE


However, I need the query results inside my function:

add_action( 'wp_head', 'quick_qs_db_css', 100 );
function quick_qs_db_css( ) { ?>

<style type="text/css" id="db-css">
<?php echo $db_css[0]->qs_the_css; // OUTPUTS NILL ! ?>
</style>

<?php }


What arguments does the
quick_qs_db_css()
function need ? Is it possible to pass query results to a function?

I would prefer not to include the query inside the
quick_qs_db_css()
function.

Update:

add_action( 'wp_head', 'quick_qs_db_css', 100 );
function quick_qs_db_css( $db_css ) { ?>


<?php var_dump( $db_css[0]->qs_the_css); // ALSO RETURNS NULL ?>


<?php }


Any input would be very much appreciated ! Thanking in advance :)

Answer

Firstly, inside function the $db_css have a local visibility and the variable isn't visible inside the function. So, you should pass the $db_css variable as argument.