Support » Plugin: Export any WordPress data to XML/CSV » Help with SQL Query and php fucntion

  • Resolved fpman

    (@fpman)


    Hello,

    Apologies if this is a simple question, but I’ve looked through the doc but couldn’t get it to work.

    I have an SQL Query:

    SELECT active_sub_count FROM wp_mepr_members WHERE user_id = %d

    Which returns 0 or 1 or 2

    Now I want the export to say ‘Active’ if value is 1 or greater, and if 0 say ‘Not Active’.

    I assume I pass this through a php function? Which I’ve added as bb_wpae_active

    then, in the function:

    <?php
    function bb_wpae_active($value) {
    if($value == 0) {
    return “Not Active”;
    } else {
    return “Active”;
    }
    }

    What am I doing wrong?

    TIA
    ?>

Viewing 4 replies - 1 through 4 (of 4 total)
  • Plugin Contributor WP All Import

    (@wpallimport)

    Hi @fpman,

    You will need to use the “bb_wpae_active” function on the User ID element for this. The function should use the WPDB class (see: https://codex.wordpress.org/Class_Reference/wpdb) to run the SQL Query, then you can use your IF conditional to return “Active” or “Not Active” based on the results.

    Thread Starter fpman

    (@fpman)

    Hi,

    Thanks for your reply. Could anyone point me to a working example / snippet please?

    Plugin Contributor WP All Import

    (@wpallimport)

    Hi @fpman,

    Here’s an untested example that you can modify as needed:

    function bb_wpae_active( $user_id ) {
        global $wpdb;
        $query = $wpdb->prepare( "SELECT <code>active_sub_count</code> FROM <code>&quot; . $wpdb->prefix . &quot;mepr_members</code> WHERE <code>user_id</code> = '%d'", $user_id );
        $count = $wpdb->get_var( $query );
        
        return ( $count > 0 ) ? 'Active' : 'Not Active';
    }
    Thread Starter fpman

    (@fpman)

    Thank you, I got it working now.

    Awesome support and great plugin, thanks again.

Viewing 4 replies - 1 through 4 (of 4 total)
  • The topic ‘Help with SQL Query and php fucntion’ is closed to new replies.