Chrome デベロッパー ツールのプレビューで変数のエコーを確認できるが、実際の Web ページでは空白であるという問題があります。
これはタイミングの問題によるものだと推測しているので、明確にするために、これが私のやり方です。
- ページ (index.php) が読み込まれると、ユーザー名を取得するために FB で FLQ クエリを実行する .js ファイルがリンクされます。
- 次に、ajax を使用して index.php に情報を再投稿します。
- index.php ページに戻り、再読み込みして $_POST 経由で収集します
- 次に、$_POST に保持されているユーザー情報の一部を表示します。
私がやっていることは不可能であると推測していますが、Chrome 開発ツールでは、すべての変数がページにエコーされるのは奇妙ですが、変数が表示されるはずの実際のページは空白です。
保留ページがあり、詳細を収集してから読み込み、メインページに移動してデータを表示することしか提案できません。
<!--
Index.php
-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<?php
global $uid;
global $una;
global $uem;
global $uph;
?>
<title></title>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript" src="https://connect.facebook.net/en_US/all.js"> </script>
<script type="text/javascript">
// initialize the library with the API key
FB.init({ apiKey: '2847xxxxxxxx689' });
</script>
<?php
?>
<script type="text/javascript">
FB.login(function(response) {
// handle the response
}, {scope: 'email,publish_stream'});
</script>
<script type="text/javascript" src="jquery/op.js"></script>
<?php
$uid = $_POST['uid'];
$una = $_POST['una'];
$uem = $_POST['uem'];
$uph = $_POST['uph'];
echo $_POST['una'];
?>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="stylesheets/op_main.css" media="Screen" type="text/css" />
<?php
//include('assets/opPHP.php');
include('sql/ajaxsql.php');
include('sql/phpsql.php');
$opapp = new opapp;
?>
<body>
<div id="mainbody">
<div id="topbanner">
Beta Name <?php echo $una; ?>
</div>
<--
.js File
-->
$(window).load(function() {
FB.api('/me', function(response) {
var query = FB.Data.query('select uid,name,email, pic_square from user where uid={0}', response.id);
query.wait(function(rows) {
var uid = rows[0].uid;
var una = rows[0].name;
var uem = rows[0].email;
var uph = '<img src="' + rows[0].pic_square + '>';
$.ajax({
url: '../index.php',
type: 'POST',
data: 'uid=' + uid + '&una=' + una + '&uem=' + uem + '&uph=' + uph
});
});
});
});
私はそれが情報を投稿しているのを見ることができるので、私の質問は. 同じページにいる間、情報を収集する別の方法です。開発ツールではあるのにメインページでは表示されない理由を説明してください。
ありがとう
アンドリュー