|
|
|
(ขอกระทู้นี้นะคะ) ติดปัญหาเรื่องของ Login with Facebook ค่ะ |
|
|
|
|
|
|
|
พอดีตั้งค่าหมดแล้ว ทำทุกอย่างก็ครบหมดแล้ว แต่พอคลิกเพื่อจะล๊อกอิน facebook ขึ้นว่า
URL ที่ให้มาไม่ได้รับอนุญาตจากการกำหนดค่าของแอพพลิเคชัน: URL ที่ให้ไว้อย่างน้อยหนึ่ง URL ไม่ได้รับอนุญาตจากการตั้งค่าของแอพพลิเคชั่นซึ่งต้องตรงกับ URL ของเว็บไซต์หรือ URL แคนวาส หรือโดเมนต้องเป็นโดเมนย่อยของหนึ่งในโดเมนหลักของแอพพลิเคชั่น
ไม่ทราบว่าต้องไปแก้ตรงไหนคะ
App domain
Url Site
Mobile Site
ก็ตั้งหมดแล้วค่ะ
ข้างล่างนี่เป็น code ทั้งหมดค่ะ
ขอบคุณมาก ๆ ค่ะ
register.php
Code (PHP)
<?php
include("fb_connect_popup.php");
//pre($fb_user);
?>
<h1>php-sdk 3.1.1</h1>
<?php if($fb_user){ // ถ้ามีการล็อกอิน facebook อยู่แล้ว แสดงลิ้งค์สำหรับ logout ?>
<a href="<?=$logoutUrl?>">Logout</a>
<?php }else{ // ถ้ายังไม่ได้ล็อกอิน แสดงลิ้งค์สำหรับ Login ?>
<div>
Login using OAuth 2.0 handled by the PHP SDK:
<a href="javascript:popup('<?=$loginUrl?>','',500,350);">Login with Facebook</a>
</div>
<?php } ?>
<h3>PHP Session</h3>
<pre><?php print_r($_SESSION); ?></pre>
<?php if($fb_user){ // ถ้ามีการล็อกอิน facebook อยู่แล้ว แสดงข้อมูลของคนๆ นั้น ?>
<h3>You</h3>
<img src="https://graph.facebook.com/<?=$fb_user?>/picture">
<h3>Your User Object (/me)</h3>
<?php
pre($fb_userData);
?>
<?php }else{ // ถ้ายังไม่ได้ล็อกอิน ?>
<strong><em>You are not Connected.</em></strong>
<?php } ?>
<script type="text/javascript">
function popup(url,name,windowWidth,windowHeight){
myleft=(screen.width)?(screen.width-windowWidth)/2:100;
mytop=(screen.height)?(screen.height-windowHeight)/2:100;
properties = "width="+windowWidth+",height="+windowHeight;
properties +=",scrollbars=yes, top="+mytop+",left="+myleft;
window.open(url,name,properties);
}
</script>
fb_connect_popup.php
Code (PHP)
<?php
session_start(); // กำหนดไว้ กรณีอาจได้ใช้ตัวแปร session
include("inc/facebook.php"); // เรียกใช้งานไฟล์ php-sdk สำหรับ facebook
//
$facebook = new Facebook(array(
'appId' => '2649770xxxxxxxx', // appid ที่ได้จาก facebook
'secret' => '71e35exxxxxxxxxxx', // app secret ที่ได้จาก facebook
'fileUpload' => true, // เปิดใช้ในส่วนของการอัพโหลดรูปได้
'cookie' => true, // อนุญาตใช้งาน cookie
));
// สร้างฟังก์ชันไว้สำหรัดทดสอบ การแสดงผลการใช้งาน
function pre($varUse){
echo "<pre>";
print_r($varUse);
echo "</pre>";
}
// Get User ID
$fb_user = $facebook->getUser();
if($fb_user){
try{
// Proceed knowing you have a logged in user who's authenticated.
$fb_userData=$facebook->api('/me');
}catch(FacebookApiException $e) {
error_log($e);
$user=null;
}
}
if(isset($_GET['logout'])){ // ทำการ logout อย่างสมบูรณ์
$facebook->destroySession(null); // ล่างค่า session ของ facebook
header("Location:".$_SERVER['PHP_SELF']); //ลิ้งค์ไปหน้าที่ต้องการเมื่อ logout เรียบร้อยแล้ว
}
// Login or logout url will be needed depending on current user state.
if($fb_user){
$logoutUrl = $facebook->getLogoutUrl(array(
"next"=>"register.php?logout"
));
} else{
$loginUrl = $facebook->getLoginUrl(array(
"redirect_uri"=>"register.php",
"display"=>"popup",
"scope"=>"offline_access,publish_stream,email" // คั่นแต่ละค่าด้วย ,(comma
));
}
?>
Tag : PHP, MySQL, HTML/CSS, JavaScript
|
ประวัติการแก้ไข 2014-07-04 08:57:48
|
|
|
|
|
Date :
2014-07-04 08:54:01 |
By :
because |
View :
1094 |
Reply :
5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่มีใครตอบเลยอ่ะ
|
|
|
|
|
Date :
2014-07-04 10:10:54 |
By :
because |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คำถามบางคำถาม ก็ไม่มีคำตอบที่รวดเร็ว หรอกครับ ..
บางคำถาม ก็แทบไม่ได้คำตอบเลย .. ต้องทดลองทำเอง
หรือบางทีจนได้ไปจ้างเขาทำก็มีครับ .. อย่าเพิ่งนอยส์
สู้ ๆครับ
ผมขอทดลองทำก่อน ทำไมมันทำยากจัง .
|
|
|
|
|
Date :
2014-07-04 11:43:01 |
By :
deawx |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอมั่วนะจากที่เคยทำมาลักษณะนี้ไม่ทราบว่ายืนยันไซต์ใน developers.facebook หรือยัง
1. developers.facebook.com
2. สร้าง app นำโค้ดมาติดหน้า url ที่ส่งในการสร้าง เพื่อยืนยันตัวตนว่าเราเป็นเจ้าขอไซต์จริงๆ
3. ยืนยันถ้าผ่านมันจะบอกว่าผ่านเองเหละ
ก็น่าจะจบปัญหาแล้วนะ เพราะถ้าเราเอาโค้ดมาติดเลยลอยๆมันไม่ผ่านกฎของเขา
ปล. สุดท้ายแล้วการเทสต้องทำบนโฮสจริงนะครับ localhost ไม่ได้เพราะการทำงานลักษณะนี้ เกิดขึ้นจริงและมีผลกระทบกับเว็บเจ้าของ API จริงถ้าเราเอาโค้ดเขามาเทสเราก็ต้องเทสบนของจริงนะครับ
|
ประวัติการแก้ไข 2014-07-04 13:05:51 2014-07-04 13:08:57
|
|
|
|
Date :
2014-07-04 13:04:12 |
By :
meannerss |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่มีอะไรหรอก คุณรันบน Appserv หรือ Xampp ใช่มั้ยครับ? มันเลยฟ้องว่า URL ไม่มีอยู่จริงต้องเอาไปรันดูบน Server จริงดูครับ
|
|
|
|
|
Date :
2014-07-04 13:34:14 |
By :
Manussawin |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|