首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >facebook Tab应用程序上的PHP会话

问facebook Tab应用程序上的PHP会话
EN

Stack Overflow用户
提问于 2012-10-03 04:32:57
回答 1查看 224关注 0票数 0

我已经在facebook上建立了一个应用程序,我正在尝试在数据库中插入正确的信息。信息被插入,但我的代码中的会话(而不是用户的facebook会话)出了问题。似乎如果两个不同的机器已经进入iframe应用程序,它只创建一个会话,它不存储产品的正确性。

这里:(第一页)- product-check.php我启动了会话。

代码语言:javascript
复制
session_start();

然后(第二页)- form.php:

代码语言:javascript
复制
    require 'facebook.php';
    session_start();
   if (isset($_REQUEST['product']) == NULL)
   {
   header ("location: product-check.php");
   }
   else
   {
   $product = $_REQUEST['product'];
   //let's start the session
   //Posted Values stored in session
   $_SESSION['product'] = $product;

然后在第三页上,我使用来自两个页面的值进行插入- product-check和form。

代码语言:javascript
复制
    session_start();
    $link = mysql_connect('With the right credentials') or die(mysql_error());
    mysql_set_charset('utf8',$link);
    $db_selected = mysql_select_db('application', $link);
   $product = mysql_real_escape_string($_SESSION['product']);
   if (isset($_POST['name'])){$name = mysql_real_escape_string($_POST['name']);}   
   if (isset($_POST['surname'])){$surname = mysql_real_escape_string($_POST['surname']);} 
   if (isset($_POST['email'])){$email = mysql_real_escape_string($_POST['email']);}
   if (isset($_POST['term'])){$accept_terms =   mysql_real_escape_string("N");}else{$accept_terms = mysql_real_escape_string("Y");}
   if (isset($_POST['contact'])){$accept_newsletter =   mysql_real_escape_string("Y");}else{$accept_newsletter = mysql_real_escape_string("N");}
   $query_insert = "INSERT INTO app(database fields) 
     VALUES(the above values i have declared)";
     $result = mysql_query($query_insert);
     mysql_close($link);
      session_destroy();

也就是说,并不是所有来自it.But -check.php的产品都出现在数据库中。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-03 07:43:22

好的,我尝试了另一种方法,works.This,我没有使用会话来传值,而是使用了隐藏字段。

我删除了:

代码语言:javascript
复制
    session_start();

从所有页面和与会话相关的所有内容中分离出来,然后我创建了隐藏字段,用于发布值,如下所示:

代码语言:javascript
复制
    <input type="hidden" name="productselect" value="<?php echo $variable ?>">

然后在发布的页面上,我使用了一个简单的帖子:

代码语言:javascript
复制
   $product = $_POST['productselect']

啊,真灵!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12697842

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档