Question

J'essaie de supprimer un utilisateur lorsqu'une passerelle de paiement demande, j'ai le code suivant:

(Code édité pour afficher une fonction complète qui communique avec la passerelle de paiement, les Echo donnent la réponse à la passerelle de paiement que les sorties sont parce qu'elle est utilisée dans l'exemple de code de la passerelle de paiement.)

function handle_gateway_return() {
    $GWPass = get_option( $this->gateway . "_gateway_gwpass" );

    if ($_GET["GWPass"] != $GWPass ) {
        header("HTTP/1.0 401 Unauthorized");
        echo "<h1>Gateway 1.1</h1><h3>Authentication failed.</h3>";
        exit;
    }

    //==================================================
    // Action: user.add
    //==================================================

    if ($_GET["Action"] == "user.add") {
        // Load variables
        $ZFirstName     = trim($_GET['FIRSTNAME']);
        $ZLastName      = trim($_GET['LASTNAME']);
        $ZFullName      = $ZFirstName." ".$ZLastName;
        $ZUserName      = trim($_GET['username']);
        $ZEmail         = trim($_GET['EMAIL']);
        $ZPassword      = trim($_GET['password']); 
        $ZPassword      = md5($ZPassword); //md5

    if ( username_exists( $ZUserName ) ) {
        echo "OK|User Added!";
        exit;   
        }

    if ( !username_exists( $ZUserName ) ) {
        wp_create_user( $ZUserName, $ZPassword, $ZEmail );
        echo "OK|User Added!";
        exit;
        }

    }

    //==================================================
    // Action: user.delete
    //==================================================

    else if ($_GET["Action"] == "user.delete") {
        $ZUserName = trim($_GET['username']);

    // Grab user_id
    $user = get_user_by('login', $ZUserName);

    if (!$user) {
        echo 'USER_DOES_NOT_EXIST';
        exit;
        }

    $url = network_site_url('/wp-admin/includes/ms.php');
    if ($user) {
        include($url);
        wpmu_delete_user($user->ID);
        echo "OK|User Deleted!";
        exit;
        }

    } else { 
        echo "UNKNOWN_ACTION|UNKNOWN_ACTION";
        exit;
    }   

}

Cependant, l'utilisateur n'est pas supprimé! Qu'est-ce que je fais mal?

Merci d'avance pour votre aide!

EDIT: Cela se produit dans un fichier d'addition de passerelle de paiement utilisé dans le plugin d'adhésion WPMUDEVS. Dans le fichier Addon, j'ai une fonction qui traite du retour de la passerelle et la création de l'utilisateur fonctionne bien à l'aide de WP_create_user et oui, il n'y avait pas besoin d'inclure. J'ai ajouté l'inclusion ici simplement parce que je l'ai vu mentionné quelque part et j'ai pensé que je l'essayerais car sans l'inclure ne fonctionnait pas non plus (mais je ne pensais pas que c'était nécessaire).

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à wordpress.stackexchange
scroll top