2012-12-19 58 views
1

嘿家伙,所以我试图让一个JSON发送一个值到wordpress中的另一个页面来创建一个会话,一旦图像被点击。JSON发送问题

这里是JSON代码:

$('.item-post a').click(function() { 
     var prodname = $('#hiddenpostitle'); 

      $.post('/overviewcheck-515adfzx8522', 
      { 
       'ProdName': prodname.val() 

      }, 
      function(response) { 

      }, 
      'json' 
     ); 
    }); 

的#hiddenposttitle如下:<?php echo "<input type='hidden' value='$title' id='hiddenpostitle' name='hiddenpostitle'/> "?>

所以这个发送到overviewcheck页面,然后有有后续的模板:

<?php 
/* 
Template Name: overviewbackcheck 
*/ 
session_start(); 

$prodname= $_POST['ProdName']; 

$_SESSION['overviewprod'] = $prodname; 

?> 

有人提到了一些关于WordPress的销毁会话调用session_start(),但这不是问题,因为我修复了一段时间,并有其他会议正在进行工作。它必须与JSOn发送一些东西,我不能确定。

从这里概述页面上开设有以下几点:

$(function() 
    { 
     $('.item-post a').colorbox({opacity:0.3, href:"../overviewa512454dzdtfa"}); 
    }); 

这是颜色框代码,将打开的文件的文件中我有:

<?php echo $_SESSION['overviewprod']; ?> 

呼应出来。

最终我无法回显一个会话,它似乎没有任何东西正在作出。

如果你能帮助我,这将是非常棒的,因为我需要完成! :)

回答

0

您需要澄清程序流程。什么时候加载什么?

“我试图让JSON发送一个值”。 JSON是一种数据格式,而不是一种方法。 JSON不能发送任何东西,它可以发送。

如果您调试JavaScript(使用Chrome开发人员工具或Firefox中的Firebug),您的onclick函数中是否有产品名称?

$('.item-post a').click(function() { 
    var prodname = $('#hiddenpostitle'); 
    alert(prodname.val()); 

(您可以检查网络流量,或者设置一个断点上的“VAR PRODNAME ......”行,只是在PRODNAME添加监视,它悬停等,就看你有正确的产品名称)

接下来,看看你从AJAX请求中得到的服务器端。

<?php 

/* Template Name: overviewbackcheck */ 

session_start(); 
var_dump($_POST);die; // You can see what is dumped here in the Network tab in the browser's Developer tool. 

如果你不知道如何使用浏览器的调试工具,你总是可以保存到错误日志和读取代替。

<?php 
error_log(print_r($_POST, true)); 

最后,当你取从 “../overviewa512454dzdtfa” 的代码,这是否脚本做的session_start();你这样做之前?

<?php echo $_SESSION['overviewprod']; ?> 

相比

<?php session_start(); echo $_SESSION['overviewprod']; ?> 

不要在这个时候任何更多的想法,坚持下去。

+0

好了,所以视后都得到了有存储在隐藏字段为保持其价值增加一个数组的值,但jQuery是想采取这种和它,但是当你点击任何一个产品,它似乎经过一切,我总是得到最后一个产品,不管是什么东西,5498 –

+0

你可以在prodjsoundlighting.com –

+0

查看并点击图片 –