Fork me on GitHub




« 1 (2) 3 »


Re: Connexion avec facebook
Aspirant
Inscrit: 11/11/2010 14:56
Messages: 78
il faut ajouter une colonne dans la table users

$i++;
$ret[$i] = true;
$query[$i] = sprintf("ALTER TABLE " $xoopsDB -> prefix'users') . " ADD COLUMN uidfb VARCHAR(25) NOT NULL default '0' AFTER lastactivity");
$ret[$i] = $ret[$i] && $xoopsDB -> query$query[$i] );



et puis modifier la ligne
//Verification de l'existance du membre
        
if ($member_handler1->getUserCount(new Criteria('uname'$uid)) > 0) {


par
//Verification de l'existance du membre
        
if ($member_handler1->getUserCount(new Criteria('uidfb'$uid)) > 0) {



modifier la ligne
$newuser->setVar("uname"$uid);


par
$newuser->setVar("uname"$username);


modifier la ligne
if($done) {
            
            
redirect_header('index.php'10_AM_USERRANK_SAVE);
            }


par
if($done) {
            
$sql 'UPDATE ' $xoopsDB -> prefix'users' ) . ' SET uidfb='.$uid.' WHERE uid=' $newuser1;
                
$result $xoopsDB -> queryF$sql );
            
redirect_header('index.php'10_AM_USERRANK_SAVE);
            }

Posté le : 04/11/2013 00:05
Partager Twitter Partagez cette article sur GG+
Re: Connexion avec facebook
Semi pro
Inscrit: 01/08/2005 19:06
Messages: 1851
de qu'elle fichier ?

Posté le : 04/11/2013 00:52
Partager Twitter Partagez cette article sur GG+
Re: Connexion avec facebook
Aspirant
Inscrit: 11/11/2010 14:56
Messages: 78
connect.php

Posté le : 04/11/2013 01:16
Partager Twitter Partagez cette article sur GG+
Re: Connexion avec facebook
Semi pro
Inscrit: 01/08/2005 19:06
Messages: 1851
ok mais pour ceci
$i++; $ret[$i] = true$query[$i] = sprintf("ALTER TABLE " $xoopsDB -> prefix'users') . " ADD COLUMN uidfb VARCHAR(25) NOT NULL default '0' AFTER lastactivity"); $ret[$i] = $ret[$i] && $xoopsDB -> query$query[$i] );


je dois le mettre aussi dans le fichier connect.php ?

Posté le : 04/11/2013 10:41
Partager Twitter Partagez cette article sur GG+
Re: Connexion avec facebook
Aspirant
Inscrit: 11/11/2010 14:56
Messages: 78
il y a pas mal de méthode pour ajouter une colonne dans une table sql.
soit en passant par phpmyadmin soit en tapant le bout de code dans un fichier update.php de n'importe quel module installé et après faire une mise a jour, peut être c'est pas trop claire mais voilà en passant par phpmyadmin la requete sql est

ALTER TABLE users ADD uidfb VARCHAR255 after lastactivity




Posté le : 04/11/2013 11:16
Partager Twitter Partagez cette article sur GG+
Re: Connexion avec facebook
Semi pro
Inscrit: 01/08/2005 19:06
Messages: 1851
j'ai tous fait comme tu l'indique et sa ne fonctionne plus du tous plus moyen de ce co avec le bouton j'ai une page blanche sur connect.php et on ne dois pas avoir le meme module car je n'est pas la colonne lastactivity

Posté le : 04/11/2013 14:12
Partager Twitter Partagez cette article sur GG+
Re: Connexion avec facebook
Aspirant
Inscrit: 11/11/2010 14:56
Messages: 78
oups j'ai oublié de vérifier, dans la table users il n'y a pas de colonne lastactivity plutot il y a la colonne user_mailok
donc la requête sql est

ALTER TABLE users ADD uidfb VARCHAR255 after user_mailok


Rq: lastactivity c'est une colonne que j'ai ajouté avant pour une autre fonctionnalité, ça n'a rien a voir avec facebook connect.

Posté le : 04/11/2013 14:19
Partager Twitter Partagez cette article sur GG+
Re: Connexion avec facebook
Semi pro
Inscrit: 01/08/2005 19:06
Messages: 1851
sa ne fonctionne toujours pas sniff

en fait j'ai bien le bouton facebook lorsque je clique dessus j'arrive sur une page blanche par contre quand je revient sur l'index on vois bien que je me suis enregistrer mais je ne suis pas connecter

Posté le : 04/11/2013 16:44
Partager Twitter Partagez cette article sur GG+
Re: Connexion avec facebook
Aspirant
Inscrit: 11/11/2010 14:56
Messages: 78
problème de session et cookies sur ton navigateur.
si tu vérifie ça tu va trouver deux kookies xoops_user avec deux valeurs différents donc un conflit de navigation.
La solution c'est de supprimer complètement les cookies et ressayer sinon vérifie avec un autre navigateur.

si ça marche pas poste le contenu de la page connect.php et les error trouvés en modifiant le debugLevel" => 0, dans le fichier xoops_data/configs/xoopsconfig.php

Posté le : 04/11/2013 18:12
Partager Twitter Partagez cette article sur GG+
Re: Connexion avec facebook
Semi pro
Inscrit: 01/08/2005 19:06
Messages: 1851
J'ai bien fait comme tu a dit supprimer mes cookies et cache cela n'a rien changer j'ai mi 0 au debug aucun message ne s'affiche

<?php

include dirname(__FILE__) . DIRECTORY_SEPARATOR 'header.php';
include 
dirname(dirname(dirname(__FILE__))) . DIRECTORY_SEPARATOR 'mainfile.php';
include 
dirname(__FILE__) . DIRECTORY_SEPARATOR.'lib'DIRECTORY_SEPARATOR .'facebook.php';

//$xoops = Xoops::getInstance();

//Connexion à l'application facebook
$config = array('appId' => 'monappid',
                
'secret' => 'maclef appsecret'
                
);
$facebook = new Facebook($config);

//Recupere l'uid facebook de la personne qui se connecte
$currentUser $facebook->getUser();
//echo $currentUser;
//Lien de Connexion & deconnexion
if ($currentUser) {
  
//$params = array('next' => XOOPS_URL.'/modules/profile/disconnected.php');
  //$params = array('next' => XOOPS_URL . '/user.php?op=logout');
  //$logoutUrl = $facebook->getLogoutUrl($params);
  //echo('<a href="'.$logoutUrl.'"><img src="http://static.ak.fbcdn.net/rsrc.php/z2Y31/hash/4li2k73z.gif">LOGOUT</a>');
  //$block['facebook']= '<a href="'.$logoutUrl.'"><img src="/images/fb_logout.png"></a>';
  //redirect_header(XOOPS_URL.'/user.php', 1, _US_INCORRECTLOGIN);
 
} else {
    
//$params = array('scope' => 'email', 'user_birthday');
     //$params = array( 'req_perms' => 'email,user_birthday,status_update,publish_stream,user_photos,user_videos,offline_access',
        //                'scope' => 'email,user_birthday,status_update,publish_stream,user_photos,user_videos,offline_access');
    //$loginUrl = $facebook->getLoginUrl($params);
    
$loginUrl $facebook->getLoginUrl( array('scope' => 'user_about_me,user_activities,user_birthday,user_checkins,user_education_history,user_events,user_groups,user_hometown,user_interests,user_likes,user_location,user_notes,user_online_presence,user_photo_video_tags,user_photos,user_relationships,user_relationship_details,user_religion_politics,user_status,user_videos,user_website,user_work_history,email,read_friendlists,read_insights,read_mailbox,read_requests,read_stream,xmpp_login,ads_management,create_event,manage_friendlists,manage_notifications,offline_access,publish_checkins,publish_stream,rsvp_event,sms,publish_actions,manage_pages'));
  
//echo('<a href="'.$loginUrl.'">facebook</a>');
  
echo('<a href="'.$loginUrl.'"><img src="http://andylockett.com/wp-content/uploads/2013/02/FacebookButton_post-image.jpg"></a>');

}

//Creation du profil utilisateur
if($currentUser){
    try{
        
$facebook_profile $facebook->api('/me');
        
//print_r($facebook_profile);                                                    
    
}
    catch (
FacebookApiException $e){
        
setcookie('fbsr_' $config['appId'], $_COOKIE['fbsr_' $config['appId']], time() - 3600"/");
        unset(
$_COOKIE['fbsr_' $config['appId']]);
       
// print_r($);
        //$currentUser = null;
        
$currentUser '';
        
//$block['facebook']= 'IL faut supprimer les Kookies';
        //$block['facebook']= '<a href="/connect.php">Logout</a>';
        
echo('<a href="/connect.php"><img src="http://andylockett.com/wp-content/uploads/2013/02/FacebookButton_post-image.jpg"></a>');
    }
    
    
$uid $facebook_profile['id'];
    
$username $facebook_profile['name'];
    
$name $facebook_profile['name'];

    
//$password = $xoops->makePass();
    
$password xoops_makepass();

    
$email = (isset($facebook_profile['email']) && !empty($facebook_profile['email'])) ? $facebook_profile['email'] : $uid "@".$_SERVER['HTTP_HOST'];
    
//$email = 'test@facebook.com';
    
if (!$username || !$email || !$password) {
        
$adduser_errormsg _AM_YMCACF;

    } else {
        
//$member_handler1 = $xoops->gethandler('member');
        
$member_handler1 =& xoops_gethandler('member');
        
$profile_handler xoops_getmodulehandler('profile''profile');

        
        
//Verification de l'existance du membre
        
if ($member_handler1->getUserCount(new Criteria('uidfb'$uid)) > 0) {
            
//Membre present dans la BDD
            
$uname trim($uid);
            
            
$criteria = new CriteriaCompo();
            
$criteria->add(new Criteria('email'$email));
            
$users_arr $member_handler1->getUsers($criteria);
            
//var_dump($users_arr);
            //if ($users_arr[0]->getVar('uname') == '' || $users_arr[0]->getVar('pass') == '') {
                //$xoops->redirect(XOOPS_URL.'/user.php', 1, _US_INCORRECTLOGIN);
                //redirect_header(XOOPS_URL.'/user.php', 1, _US_INCORRECTLOGIN);
            //    exit();
            //}

            
if ($users_arr == false) {
                
//$xoops->redirect(XOOPS_URL.'/user.php', 1, _US_INCORRECTLOGIN);
                
redirect_header(XOOPS_URL.'/user.php'1_US_INCORRECTLOGIN);
            }

            if (
false != $users_arr) {
                if (
== $users_arr[0]->getVar('level')) {
                    
//$xoops->redirect(XOOPS_URL.'/index.php', 5, _US_NOACTTPADM);
                    
redirect_header(XOOPS_URL.'/index.php'5_US_NOACTTPADM);
                    exit();
                }
                if (
$xoopsConfig['closesite'] == 1) {
                    
$allowed false;
                    foreach (
$users_arr[0]->getGroups() as $group) {
                        if (
in_array($group$xoopsConfig['closesite_okgrp']) || XOOPS_GROUP_ADMIN == $group) {
                            
$allowed true;
                            break;
                        }
                    }
                    if (!
$allowed) {
                        
redirect_header(XOOPS_URL.'/index.php'1_NOPERM);
                        exit();
                    }
                }
                
$users_arr[0]->setVar('last_login'time());
                if (!
$member_handler1->insertUser($users_arr[0])) {
                }
                
// Regenerate a new session id and destroy old session
                
$GLOBALS["sess_handler"]->regenerate_id(true);
                
$_SESSION = array();
                
$_SESSION['xoopsUserId'] = $users_arr[0]->getVar('uid');
                
$_SESSION['xoopsUserGroups'] = $users_arr[0]->getGroups();
                
$user_theme $users_arr[0]->getVar('theme');
                if (
in_array($user_theme$xoopsConfig['theme_set_allowed'])) {
                    
$_SESSION['xoopsUserTheme'] = $user_theme;
                }

                
// Set cookie for rememberme
                //if (!empty($xoopsConfig['usercookie'])) {
                    //if (!empty($_POST["rememberme"])) {
                        
setcookie($xoopsConfig['usercookie'], $_SESSION['xoopsUserId'] . '-' md5($users_arr[0]->getVar('pass') . XOOPS_DB_NAME XOOPS_DB_PASS XOOPS_DB_PREFIX), time() + 31536000'/'XOOPS_COOKIE_DOMAIN0);
                    
//} else {
                    //    setcookie($xoopsConfig['usercookie'], 0, -1, '/', XOOPS_COOKIE_DOMAIN, 0);
                    //}
                //}

                
if (!empty($_POST['xoops_redirect']) && !strpos($_POST['xoops_redirect'], 'register')) {
                    
$_POST['xoops_redirect'] = trim($_POST['xoops_redirect']);
                    
$parsed parse_url(XOOPS_URL);
                    
$url = isset($parsed['scheme']) ? $parsed['scheme'].'://' 'http://';
                    if (isset( 
$parsed['host'])) {
                        
$url .= $parsed['host'];
                        if (isset( 
$parsed['port'])) {
                            
$url .= ':' $parsed['port'];
                        }
                    } else {
                        
$url .= $_SERVER['HTTP_HOST'];
                    }
                    if (@
$parsed['path']) {
                        if (
strncmp($parsed['path'], $_POST['xoops_redirect'], strlen$parsed['path']))) {
                            
$url .= $parsed['path'];
                        }
                    }
                    
$url .= $_POST['xoops_redirect'];
                } else {
                    
$url XOOPS_URL '/index.php';
                }

                
// RMV-NOTIFY
                // Perform some maintenance of notification records
                
$notification_handler =& xoops_gethandler('notification');
                
$notification_handler->doLoginMaintenance($users_arr[0]->getVar('uid'));

                
//$xoops->redirect($url, 1, sprintf("", $users_arr[0]->getVar('uname')), false);
                //redirect_header($url, 1, sprintf("", $users_arr[0]->getVar('uname')), false);
                
redirect_header(XOOPS_URL.'/index.php'5_US_MERCI_POUR_VOTRE_CONNECTION.'  '.$users_arr[0]->getVar('uname'));

            } else if (empty(
$_POST['xoops_redirect'])) {
                
//$xoops->redirect(XOOPS_URL . '/user.php', 5, '');
                
redirect_header(XOOPS_URL '/user.php'5'');
            } else {
                
//$xoops->redirect(XOOPS_URL . '/user.php?xoops_redirect=' . urlencode(trim($_POST['xoops_redirect'])), 5, '', false);
                
redirect_header(XOOPS_URL '/user.php?xoops_redirect=' urlencode(trim($_POST['xoops_redirect'])), 5''false);
            }
        } else {
        
                                                        
                                                        
            
//Creation de l'utilisateur
            //$member_handler1 =& xoops_gethandler('member');
            
$newuser $member_handler1->createUser();
            
$profile $profile_handler->create();
            
$newuser->setVar("user_viewemail","");
            
$newuser->setVar("attachsig","");
            
$newuser->setVar("name"$username);
            
$newuser->setVar("uname"$username);
            
$newuser->setVar("email"$email);
            
$newuser->setVar("url""");
            
//$newuser->setVar("user_avatar",'avatars/'.$currentUser.'.jpg');
            
$newuser->setVar("user_avatar",'avatars/blank.gif');
            
$newuser->setVar('user_regdate'time());
            
$newuser->setVar("user_icq""");
            
$newuser->setVar("user_from""");
            
$newuser->setVar("user_sig""");
            
$newuser->setVar("user_aim""");
            
$newuser->setVar("user_yim""");
            
$newuser->setVar("user_msnm""");
            
$newuser->setVar("pass"md5($password));
            
$newuser->setVar("timezone_offset"$xoopsConfig['default_TZ']);
            
$newuser->setVar("uorder"$xoopsConfig['com_order']);
            
$newuser->setVar("umode",$xoopsConfig['com_mode']);
            
// RMV-NOTIFY
            
$newuser->setVar("notify_method"1);
            
$newuser->setVar("notify_mode"1);
            
$newuser->setVar("bio""");
            
$newuser->setVar("rank"1);
            
$newuser->setVar("level"1);
            
$newuser->setVar("user_occ""");
            
$newuser->setVar("user_intrest""");
            
$newuser->setVar('user_mailok'true);
            if (!
$member_handler1->insertUser($newuser1)) {
            echo 
$newuser->getHtmlErrors();
                echo 
_AM_NOTINSERTED;

            } 
        
$profile->setVar('profile_id'$newuser->getVar('uid') );
        
$profile_handler->insert($profile);

            
$newuser1 $newuser->getVar('uid');
            
$sqlcommandline "INSERT INTO " $xoopsDB -> prefix("groups_users_link") . "(groupid, uid) VALUES ('2', '$newuser1')";                                                    
            
$done $xoopsDB->queryF($sqlcommandline);
                                            
                    
//telecharger le fb_photo
                    //j'ai supprimé cette partie

                    //envoyer email de notification                                    
                    
$xoopsMailer =& xoops_getMailer();
                    
$xoopsMailer->useMail();
                    
$mail->setTemplateDir(XOOPS_ROOT_PATH."/modules/profile/language/".$xoopsConfig['language']."/mail_template/");
                    
$xoopsMailer->setTemplate('register.tpl');
                    
$xoopsMailer->assign('SITENAME'$xoopsConfig['sitename']);
                    
$xoopsMailer->assign('ADMINMAIL'$xoopsConfig['adminmail']);
                    
$xoopsMailer->assign('SITEURL'XOOPS_URL "/");
                    
$xoopsMailer->setToUsers($newuser->getVar('uid'));
                    
$xoopsMailer->setFromEmail($xoopsConfig['adminmail']);
                    
$xoopsMailer->setFromName($xoopsConfig['sitename']);
                    
$xoopsMailer->setSubject(sprintf(_US_USERKEYFOR$uname));
                    
$xoopsMailer->send();
            if(
$done) {
            
$sql 'UPDATE ' $xoopsDB -> prefix'users' ) . ' SET uidfb='.$uid.' WHERE uid=' $newuser1;
                
$result $xoopsDB -> queryF$sql );
            
redirect_header('index.php'10_AM_USERRANK_SAVE); 
            }
        }
    }
}


 
?>

Posté le : 04/11/2013 19:13
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant
« 1 (2) 3 »



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

40 Personne(s) en ligne (30 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 40 | Plus ...