Bonjour,
Sur un site spip complètement relooké, je veux proposer un enregistrement simple pour les invités avec lequel ils peuvent choisir leur mot de passe et leur login sans avoir à cliquer sur une page de confirmation.
L’enregistrement se fait apparemment bien, mais lorsque j’essaye la connexion, la page se fige, alors que la connexion fonctionne pour moi le webmaster.
J’ai du oublier quelque chose à l’enregistrement, malheureusement la documentation de spip est pauvre sur ce sujet.
Mon site: www.modelevivant.art
Merci de votre aide.
Voici le code que j’utilise pour l’enregistrement:
include_spip(‹ action/editer_auteur ›);
$id_auteur = auteur_inserer();
if (!$id_auteur) {
return array(‹ message_erreur_register › => ‹ Erreur enregistrement nouveau utilisateur ›);
}
$desc = [
‹ login › => $login,
‹ statut › => ‹ nouveau ›,
‹ prefs › => ‹ 6forum ›,
‹ nom › => $nom,
‹ pass › => $account_password,
‹ lang › => $GLOBALS[‹ spip_lang ›],
‹ email › => $mail_complet
];
include_spip('inc/autoriser');
// lever l'autorisation pour pouvoir modifier le statut
autoriser_exception('modifier', 'auteur', $id_auteur);
auteur_modifier($id_auteur, $desc);
autoriser_exception('modifier', 'auteur', $id_auteur, false);
tu en saurais plus si tu activais les logs (et regarder le log des autorisations en particulier) et les affichages utiles au debuging (cf spip.net) et je sais pas non plus mais tu pourrais essayer en préparant $desc d’abord puis appeler auteur_inserer('spip', $desc); avec.
Bonjour,
J’ai enfin trouvé le problème, en fait spip ne permet pas de boucler sur la table auteurs, sauf si tu es webmaster!!
Je suppose que c’est une mesure de sécurité.
Donc je croyais ne pas être logué en tant que visiteur, alors que je l’étais bien, seulement je dois récupérer mes infos avec la balise session plutôt dans une boucle.
Du coup, j’ai transféré toutes mes données supplémentaires dans une nouvelle table plutôt que dans la table auteurs.