【问题标题】:insert data to database problems向数据库插入数据问题
【发布时间】:2012-08-30 00:25:18
【问题描述】:

我在名为 facebook.php 的文件中有以下代码:

$user = json_decode(@file_get_contents(
'https://graph.facebook.com/me?access_token=' .
$cookie['access_token']));

在我的另一个页面上

require 'facebook.php';
<p>Welcome <?= $user->name ?></p>

这很好用,它会显示来自 facebook 的用户名。 (显然我有一个 facebook 应用程序可以让用户登录我的网站)

在 facebook.php 我也有:

    $id = $user->id;
    $name = $user->name;
    $email = $user->email;

    mysql_query("INSERT INTO facebook (id, name, email)
    VALUES ('$id' , '$name' , '$email')");

此插入不起作用(未插入任何内容)。但是,如果我将代码更改为:

    $id ='123';
    $name = 'testname';
    $email = 'blhalvlvlv';

    mysql_query("INSERT INTO facebook (id, name, email)
    VALUES ('$id' , '$name' , '$email')");

然后这会起作用,它将数据插入到数据库中的表中。为什么使用 $user->id $user->name 和 $user->email 不起作用?

【问题讨论】:

  • 您是否确认 $user 已正确填充?
  • 我认为它在其他页面上工作的事实是正确填充的。我不确定如何最终测试这一点。
  • 简单的方法是 echo var_dump($user);看看你得到了什么
  • 你是对的。它没有得到正确填充。我已经整理好了。你想纠正一个简短的答案,以便我接受吗:) 谢谢你的帮助。
  • 如果您将 error_reporting 级别(和 display_errors)设置为 sensible 值,PHP 会告诉您这一点。所以,在开发的时候设置这个选项!

标签: php mysql database facebook login


【解决方案1】:

检查以确保 $user 值设置正确。

简单的方法是 echo var_dump($user);看看你得到了什么

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-06
    • 2014-10-20
    • 2014-01-29
    • 1970-01-01
    相关资源
    最近更新 更多