web-dev-qa-db-de.com

Erfolgreiche oder Fehlermeldung nach dem Ausführen von MySQL-Code in functions.php

Angenommen, es gibt nur für diesen Artikel einen Code, den ich in der Datei functions.php von WordPress ausführen möchte. Es ist ein Code zum Löschen der MySQL-Tabelle in meiner Datenbank. Zum Beispiel ist hier der Code:

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

Der Code funktioniert, aber ich möchte nach dem Ausführen des Codes eine Meldung Erfolgreich oder Fehlgeschlagen anzeigen. Ich habe auch einen Code, der die Erfolgsmeldung nach dem Ausführen anzeigt.

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();

Sagen Sie mir, wie ich es in meinem einfachen Code tun kann. Danke für die Zeit!

2
Hardeep Asrani

Von der Codex-Seite für $wpdb :

Die Funktion [$wpdb->query] gibt eine Ganzzahl zurück, die der Anzahl der betroffenen/ausgewählten Zeilen entspricht. Wenn ein MySQL-Fehler auftritt, gibt die Funktion FALSE zurück.

Um eine Erfolgs-/Fehlermeldung anzuzeigen, sollte dies einfach sein:

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

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