PHP var显示在Chrome Dev Tool中,但不显示在网页上

时间:2012-05-03 11:54:46

标签: php javascript jquery facebook google-chrome-devtools

我有这个问题,我可以通过Chrome开发者工具上的预览看到变量的回显,但它在实际网页上是空白的。

我猜这是一个时间问题,所以要说清楚这就是我的方式。

  • 当页面(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
                    });
                });

            });

        });

我可以看到它发布信息,所以我的问题是。是他们在同一页面上收集信息的另一种方式。甚至解释为什么我可以把它看作开发工具,但不是主页?

由于

安德鲁

1 个答案:

答案 0 :(得分:0)

echo $_POST['una'];在head标记中回显,因此它将显示在Chrome开发工具中,但不会显示在网页中。

关于<?php echo $una; ?>,我没有看到这个变量被设置的任何地方。所以这可能是它变得空白的原因