2010-07-11 43 views
0

我希望你能帮助我。我厌倦了尝试的东西没有任何解决方案和PHP它只是让我疯狂。我正在寻找帮助,因为我有一个html文档,我使用ajax感谢jquery api。在这个文件中,在一个js函数,我有:

$.ajax({ type: "GET", url: "c.php", data: "dia="+matriz[0]+"&mes="+matriz[1]+"&ano="+matriz[2]+"&diaa="+matriz2[0]+"&mess="+matriz2[1]+"&anoo="+matriz2[2]+"&modo=0&semana=0", success: Mundo, error: function(e){ alert('Error: ' + e); } });

此代码可以让我送,我想文件c.php,我掌握的信息:

include('funciones.php'); include('config.php');

$mierda = array(); 
$mierda[0] = $_GET['modo']; 
$mierda[1] = $_GET['dia']; 
$mierda[2] = $_GET['mes']; 
$mierda[3] = $_GET['ano']; 
$mierda[4] = $_GET['diaa']; 
$mierda[5] = $_GET['mess']; 
$mierda[6] = $_GET['anoo']; 
$mierda[7] = $_GET['semana']; 

如你所见,这很简单。我的疯狂问题是,用萤火虫我已经看到数据发送得很好,但由于某种原因,我无法使用它。我尝试过使用$ _Get,$ _post和$ _request,并且总是出现同样的问题。但这可能是陌生人......如果我把:

echo json_encode($mierda); 

然后奇迹般地,在PHP返回我已经通过了所以在最后我有数据:

  1. 我可以将数据发送到PHP文件以及
  2. 我可以打印所有我传以及刚刚访问哟$ _GET,$ _ POST,$ _REQUEST
  3. 我不能使用任何价值separatly比如$ _GET [“直径”]
数据

那里出了什么问题?

PS。包含php文件是可以访问我的数据库的功能,所以不存在与它们的交互。

+0

应该使用POST而不是GET,除非你想IE缓存的结果。 – dmp 2010-07-11 15:32:08

回答

5

你的数据不是URL编码。尝试做这样的事情,

$.ajax({ type: "GET", 
     url: "c.php", 
     data: {"dia":matriz[0], "mes":matriz[1] ....},  
     success: Mundo, 
     error: function(e){ alert('Error: ' + e); } 
}); 
0

你有一个疯狂的问题。根据你的问题:

$mierda = array(); 
$mierda[0] = $_GET['dia']; //... and so on 
echo json_encode($mierda); 

作品,同时:

echo $_GET['dia']; 

犯规。试试:

$mierda = array(); 
$mierda[0] = $_GET['dia']; 
echo $mierda[0]; 

echo $_GET['dia']; 

它会告诉你问题是在PHP还是javascript。

-1

我编码的数据为ZZColer说的,错误仍然存​​在。

Starx,这不是一个返回的问题。

digitalFresh,其实错误来自PHP,因为我可以$ _POST,$ _GET数组复制到一个新的数组并打印所有这些信息,但如果我喜欢所有的东西后,就把:

如果(mierda [0 ] == 0){...元素是空的!如果我尝试直接$ _GET [“直径”]它说,这个元素不数组中存在。此外,我曾尝试$ _GET [直径]或$ _GET [0]而不的溶液。

PD:

我不知道如何,但问题固溶!

感谢所有!