web-dev-qa-db-ja.com

Functions.phpでmysqlコードを実行した後の成功またはエラーメッセージ

この記事のためだけに、WordPressのfunctions.phpファイルで実行したいコードがあるとします。それは私のデータベース上のmysqlテーブルを削除するためのコードです。たとえば、これが次のコードです。

$wpdb->query( "
DELETE FROM $wpdb->posts
WHERE anything = 'whocares'
" );

コードは機能しますが、コードを実行した後に成功または失敗のメッセージを表示したいです。実行後の成功メッセージを表示するコードもあります。

function remove_contributors() {
    global $wpdb;
    $args = array( 'role' => 'Contributor' );
    $contributors = get_users( $args );
    if( !empty($contributors) ) {
        require_once( ABSPATH.'wp-admin/includes/user.php' );
        $i = 0;
        foreach( $contributors as $contributor ) {
            if( wp_delete_user( $contributor->ID ) ) {
                $i++;
            }
        }
        echo $i.' Contributors deleted';
    } else {
        echo 'No Contributors deleted';
    }
}
remove_contributors();

私の簡単なコードでそれを実行する方法を教えてください。お時間をいただきありがとうございます。

2
Hardeep Asrani

$wpdbのコーデックスページ から:

関数[$wpdb->query]は、影響を受ける/選択された行数に対応する整数を返します。 MySQLエラーがあると、関数はFALSEを返します。

成功/失敗のメッセージを表示するためには、それは簡単なことであるべきです。

$result = $wpdb->query( "
    DELETE FROM $wpdb->posts
    WHERE anything = 'whocares'
" );

if( FALSE === $result ) {
    echo( "Failed!" );
} else {
    echo( "Great success!" );
}
3
Pat J