- Statut : non résolu
- Ce sujet contient 8 réponses, 4 participants et a été mis à jour pour la dernière fois par
Mikadiou, le il y a 11 années et 5 mois.
-
AuteurMessages
-
28 décembre 2010 à 21 h 18 min #489706
Bonjour,
Ma configuration WP actuelle :
– Version de WordPress : 2.5
– Version de PHP/MySQL : 3 (pas sûre…)
– Thème utilisé : greenling
– Extensions en place : twitter, page order, akismet ?
– Nom de l’hebergeur : IXWebhosting
– Adresse du site : http://www.diegohartfield.netProblème(s) rencontré(s) :
Login : nom d’utilisateur + password + ok = connexion impossible : une page blanche s’affiche sans aucun message d’erreur.
Je sors de la chatroom de l’hébergeur et le php + mysql fonctionnent à merveille. Le problème vient de ma base de données. Mais où ? quoi ? quand ? comment ? pourquoi ?Au secours.
Voilà ce qui s’affiche dans mon wp-login.php via le serveur ftp :
>
add(‘error’, $error); unset($error); } if ( $wp_error->get_error_code() ) { $errors = »; $messages = »; foreach ( $wp_error->get_error_codes() as $code ) { $severity = $wp_error->get_error_data($code); foreach ( $wp_error->get_error_messages($code) as $error ) { if ( ‘message’ == $severity ) $messages .= ‘ ‘ . $error . «
n »; else $errors .= ‘ ‘ . $error . «
n »; } } if ( !empty($errors) ) echo ‘
‘ . apply_filters(‘login_errors’, $errors) . «
n »; if ( !empty($messages) ) echo ‘‘ . apply_filters(‘login_messages’, $messages) . «
n »; } } // End of login_header() function retrieve_password() { global $wpdb; $errors = new WP_Error(); if ( empty( $_POST ) && empty( $_POST ) ) $errors->add(’empty_username’, __(‘ERROR: Enter a username or e-mail address.’)); if ( strstr($_POST, ‘@’) ) { $user_data = get_user_by_email(trim($_POST)); if ( empty($user_data) ) $errors->add(‘invalid_email’, __(‘ERROR: There is no user registered with that email address.’)); } else { $login = trim($_POST); $user_data = get_userdatabylogin($login); } do_action(‘lostpassword_post’); if ( $errors->get_error_code() ) return $errors; if ( !$user_data ) { $errors->add(‘invalidcombo’, __(‘ERROR: Invalid username or e-mail.’)); return $errors; } // redefining user_login ensures we return the right case in the email $user_login = $user_data->user_login; $user_email = $user_data->user_email; do_action(‘retreive_password’, $user_login); // Misspelled and deprecated do_action(‘retrieve_password’, $user_login); $key = $wpdb->get_var($wpdb->prepare(« SELECT user_activation_key FROM $wpdb->users WHERE user_login = %s », $user_login)); if ( empty($key) ) { // Generate something random for a key… $key = wp_generate_password(); do_action(‘retrieve_password_key’, $user_login, $key); // Now insert the new md5 key into the db $wpdb->query($wpdb->prepare(« UPDATE $wpdb->users SET user_activation_key = %s WHERE user_login = %s », $key, $user_login)); } $message = __(‘Someone has asked to reset the password for the following site and username.’) . « rnrn »; $message .= get_option(‘siteurl’) . « rnrn »; $message .= sprintf(__(‘Username: %s’), $user_login) . « rnrn »; $message .= __(‘To reset your password visit the following address, otherwise just ignore this email and nothing will happen.’) . « rnrn »; $message .= get_option(‘siteurl’) . « /wp-login.php?action=rp&key=$keyrn »; if ( !wp_mail($user_email, sprintf(__(‘[%s] Password Reset’), get_option(‘blogname’)), $message) ) die(‘‘ . __(‘The e-mail could not be sent.’) . «
n » . __(‘Possible reason: your host may have disabled the mail() function…’) . ‘
‘); return true; } function reset_password($key) { global $wpdb; $key = preg_replace(‘/[^a-z0-9]/i’, », $key); if ( empty( $key ) ) return new WP_Error(‘invalid_key’, __(‘Invalid key’)); $user = $wpdb->get_row($wpdb->prepare(« SELECT * FROM $wpdb->users WHERE user_activation_key = %s », $key)); if ( empty( $user ) ) return new WP_Error(‘invalid_key’, __(‘Invalid key’)); do_action(‘password_reset’, $user); // Generate something random for a password… $new_pass = wp_generate_password(); wp_set_password($new_pass, $user->ID); $message = sprintf(__(‘Username: %s’), $user->user_login) . « rn »; $message .= sprintf(__(‘Password: %s’), $new_pass) . « rn »; $message .= get_option(‘siteurl’) . « /wp-login.phprn »; if ( !wp_mail($user->user_email, sprintf(__(‘[%s] Your new password’), get_option(‘blogname’)), $message) ) die(‘‘ . __(‘The e-mail could not be sent.’) . «
n » . __(‘Possible reason: your host may have disabled the mail() function…’) . ‘
‘); // send a copy of password change notification to the admin // but check to see if it’s the admin whose password we’re changing, and skip this if ( $user->user_email != get_option(‘admin_email’) ) { $message = sprintf(__(‘Password Lost and Changed for user: %s’), $user->user_login) . « rn »; wp_mail(get_option(‘admin_email’), sprintf(__(‘[%s] Password Lost/Changed’), get_option(‘blogname’)), $message); } return true; } function register_new_user($user_login, $user_email) { $errors = new WP_Error(); $user_login = sanitize_user( $user_login ); $user_email = apply_filters( ‘user_registration_email’, $user_email ); // Check the username if ( $user_login == » ) $errors->add(’empty_username’, __(‘ERROR: Please enter a username.’)); elseif ( !validate_username( $user_login ) ) { $errors->add(‘invalid_username’, __(‘ERROR: This username is invalid. Please enter a valid username.’)); $user_login = »; } elseif ( username_exists( $user_login ) ) $errors->add(‘username_exists’, __(‘ERROR: This username is already registered, please choose another one.’)); // Check the e-mail address if ($user_email == ») { $errors->add(’empty_email’, __(‘ERROR: Please type your e-mail address.’)); } elseif ( !is_email( $user_email ) ) { $errors->add(‘invalid_email’, __(‘ERROR: The email address isn’t correct.’)); $user_email = »; } elseif ( email_exists( $user_email ) ) $errors->add(’email_exists’, __(‘ERROR: This email is already registered, please choose another one.’)); do_action(‘register_post’, $user_login, $user_email, $errors); $errors = apply_filters( ‘registration_errors’, $errors ); if ( $errors->get_error_code() ) return $errors; $user_pass = wp_generate_password(); $user_id = wp_create_user( $user_login, $user_pass, $user_email ); if ( !$user_id ) { $errors->add(‘registerfail’, sprintf(__(‘ERROR: Couldn’t register you… please contact the webmaster !’), get_option(‘admin_email’))); return $errors; } wp_new_user_notification($user_id, $user_pass); return $user_id; } // // Main // $action = isset($_REQUEST) ? $_REQUEST : »; $errors = new WP_Error(); if ( isset($_GET) ) $action = ‘resetpass’; nocache_headers(); header(‘Content-Type: ‘.get_bloginfo(‘html_type’).’; charset=’.get_bloginfo(‘charset’)); if ( defined(‘RELOCATE’) ) { // Move flag is set if ( isset( $_SERVER ) && ($_SERVER != $_SERVER) ) $_SERVER = str_replace( $_SERVER, », $_SERVER ); $schema = ( isset($_SERVER) && strtolower($_SERVER) == ‘on’ ) ? ‘https://’ : ‘http://’; if ( dirname($schema . $_SERVER . $_SERVER) != get_option(‘siteurl’) ) update_option(‘siteurl’, dirname($schema . $_SERVER . $_SERVER) ); } //Set a cookie now to see if they are supported by the browser. setcookie(TEST_COOKIE, ‘WP Cookie check’, 0, COOKIEPATH, COOKIE_DOMAIN); if ( SITECOOKIEPATH != COOKIEPATH ) setcookie(TEST_COOKIE, ‘WP Cookie check’, 0, SITECOOKIEPATH, COOKIE_DOMAIN); $http_post = (‘POST’ == $_SERVER); switch ($action) { case ‘logout’ : wp_logout(); $redirect_to = ‘wp-login.php?loggedout=true’; if ( isset( $_REQUEST ) ) $redirect_to = $_REQUEST; wp_safe_redirect($redirect_to); exit(); break; case ‘lostpassword’ : case ‘retrievepassword’ : if ( $http_post ) { $errors = retrieve_password(); if ( !is_wp_error($errors) ) { wp_redirect(‘wp-login.php?checkemail=confirm’); exit(); } } if ( ‘invalidkey’ == $_GET ) $errors->add(‘invalidkey’, __(‘Sorry, that key does not appear to be valid.’)); do_action(‘lost_password’); login_header(__(‘Lost Password’), ‘‘ . __(‘Please enter your username or e-mail address. You will receive a new password via e-mail.’) . ‘
‘, $errors); ?>has_cap(‘edit_posts’) && ( empty( $redirect_to ) || $redirect_to == ‘wp-admin/’ ) ) $redirect_to = get_option(‘siteurl’) . ‘/wp-admin/profile.php’; wp_safe_redirect($redirect_to); exit(); } $errors = $user; // Clear errors if loggedout is set. if ( !empty($_GET) ) $errors = new WP_Error(); // If cookies are disabled we can’t log in even with a valid user+pass if ( isset($_POST) && empty($_COOKIE[TEST_COOKIE]) ) $errors->add(‘test_cookie’, __(« ERROR: Cookies are blocked or not supported by your browser. You must enable cookies to use WordPress. »)); // Some parts of this script use the main login form to display a message if ( isset($_GET) && TRUE == $_GET ) $errors->add(‘loggedout’, __(‘You are now logged out.’), ‘message’); elseif ( isset($_GET) && ‘disabled’ == $_GET ) $errors->add(‘registerdiabled’, __(‘User registration is currently not allowed.’)); elseif ( isset($_GET) && ‘confirm’ == $_GET ) $errors->add(‘confirm’, __(‘Check your e-mail for the confirmation link.’), ‘message’); elseif ( isset($_GET) && ‘newpass’ == $_GET ) $errors->add(‘newpass’, __(‘Check your e-mail for your new password.’), ‘message’); elseif ( isset($_GET) && ‘registered’ == $_GET ) $errors->add(‘registered’, __(‘Registration complete. Please check your e-mail.’), ‘message’); login_header(__(‘Login’), », $errors); ?>
J’ai désactivé l’ajout de commentaires il y a quelques semaines et modifié mon mot de passe, mais j’ai utilisé WP plus d’une fois après ça et tout fonctionnait parfaitement.
28 décembre 2010 à 22 h 13 min #751290salut
Essaie de renommer le plugin par ftp dont tu te sers pour l’envoi des newsletters, notifiations articles et ce genre de chose. Pour voir.29 décembre 2010 à 18 h 21 min #751291Bonjour
suite à ton message privé:
Tu ouvres ton logiciel FTP (filezilla?), tu vas dans wp-content/plugin et tu renommes le plugin qui fait newsletter
Ou si tu ne sais pas, renomme tout le dossier plugin par pluginx par exemple. Puis tu te connectes. Si tu peux te connecter normalement sans le message d’erreur précédent, c’est qu’un de tes plugin est la cause du problème.
A ce moment là, renomme ton pluginx par le nom normal, plugin puis désactive tous tes plugins.
Si tu peux te connecter sans avoir à renommer, fais-le et désactive tous tes plugins. Puis réactive un à un et vois lequel pose problème (pas la peine de désactiver askimet, simple tag, all in one, google analytics, ils ne sont pas en cause)29 décembre 2010 à 19 h 57 min #751292Après avoir renommé le dossier « plugins » en « pluginsx », nous revoilà à la case départ…
Warning: Cannot modify header information – headers already sent by (output started at /hsphere/local/home/lazingara/diegohartfield.net/wp/wp-includes/default-filters.php:1) in /hsphere/local/home/lazingara/diegohartfield.net/wp/wp-login.php on line 203 Warning: Cannot modify header information – headers already sent by (output started at /hsphere/local/home/lazingara/diegohartfield.net/wp/wp-includes/default-filters.php:1) in /hsphere/local/home/lazingara/diegohartfield.net/wp/wp-login.php on line 215 Warning: Cannot modify header information – headers already sent by (output started at /hsphere/local/home/lazingara/diegohartfield.net/wp/wp-includes/default-filters.php:1) in /hsphere/local/home/lazingara/diegohartfield.net/wp/wp-includes/pluggable.php on line 558 Warning: Cannot modify header information – headers already sent by (output started at /hsphere/local/home/lazingara/diegohartfield.net/wp/wp-includes/default-filters.php:1) in /hsphere/local/home/lazingara/diegohartfield.net/wp/wp-includes/pluggable.php on line 695
Je viens de voir que le plugin Twitter ne se mettait pas à jour sur la page d’accueil de mon site. Un rapport avec l’activation du nouveau profil Twitter ??? (J’explore toutes les pistes….)
29 décembre 2010 à 21 h 32 min #751293Il faut alors visiter ta base de données pour trouver le problème
Forcer par exemple ) utiliser le thème par défaut pour voir si c’est ça, il va falloir faire le tour de ta base2 janvier 2011 à 11 h 17 min #751294Rien de rien. Je t’envoie un MP.
25 octobre 2013 à 18 h 50 min #751295Bonjour,
En lisant le forum en anglais, j’ai trouvé la réponse, ici en vrac :http://wordpress.org/support/topic/problem-upgrading-to-37
*********OK – I’ve found a fix for the problem in the original post –
Call to undefined function wp_get_current_user() in /home/…/public_html/…/wordpress/wp-includes/user.php on line 215
that doesn’t require the uploading of the entire INCLUDES directory.
You need to add this line to the top of your CAPABILITIES.PHP file –
require_once (‘pluggable.php’);
so it looks like this –
<?php
require_once (‘pluggable.php’);
/**
* WordPress Roles and Capabilities.Thanks to this post from 2010 and this more recent post with screenshots. For reference – there’s also mention here to a specific plugin giving a similar error, which might be useful to someone.
Obviously editing core WP files like this is not recommended as a permanent fix, as it may cause other issues, and you’ll need to apply the fix every time you upgrade WP. But at least my site is back online again, till a more elegant solution is worked out by the coders out there.
25 octobre 2013 à 22 h 29 min #751296Apporter une réponse (et en anglais, encore en plus !) pour un topic vieux de presque 3 ans, ça c’est utile !! 😡
26 octobre 2013 à 8 h 21 min #751297Désolé, en plus je me suis trompé d’onglet donc de topic…
En fait suite au passage au WP3.7, vu le nombre de messages sur le sujet (j’en faisais partie pour une douzaine de sites), je cherchais depuis 2 heures et je voulais faire profiter du monde de cette solution…
Vu le ton, je ne vais pas déplacer mon message. « On » peut se rendre utile et le faire si « on » l’estime nécessaire. -
AuteurMessages
- Vous devez être connecté pour répondre à ce sujet.