2014-02-22 23 views
0

什麼是正確的方式來傳遞PHP數組到頭然後張貼在另一個文件,然後通過它使用onload事件到一個JavaScript文件這裏是我的代碼和它不工作傳遞數組在頭(PHP),並再次傳遞給JavaScript使用onload事件

用於第一php文件

header("location: Rules.php?varFields=".http_build_query($varFields)); 

對於其中PHP的數組傳遞

$ddd = $_GET['varFields']; 

<body onload="cmbRuleField(<?php echo $ddd;?>);" > 

的代碼噸第二PHP文件的代碼的代碼他外部JavaScript文件

var varDisplay = JSON.stringify(arrayyy); 

,也試過這一個

var varDisplay = JSON.parse(arrayyy); 

回答

0

http_build_query生成一個查詢字符串,而你想要的是一個JSON編碼字符串。取而代之的http_build_query使用json_encode

header('Location: Rules.php?varFields=' . json_encode($varFields)); 

文檔:http://php.net/json_encode

+0

做我必須做的THI在這一部分? $ ddd = json_decode($ _ GET ['varFields']); – user3287181

+0

@ user3287181我不知道。這是你的代碼。你需要做第一次重定向嗎? 'echo $ _GET ['varFields'];'也可以,將JSON編碼的字符串傳遞給最終輸出。 – feeela

+0

yup sir這是必要的原因即時通訊將通過幾個PHP查詢作爲數組變量的JavaScript函數的速度目的,所以就像你剛纔所說,它會是這樣? $ ddd = json_encode($ _ GET ['varFields']);以及如何在JavaScript函數將它是這樣的? var varDisplay = JSON.stringify(arrayyy); – user3287181