簡體   English   中英

通過PHP標頭重定向發送數組

[英]Sending arrays through PHP header redirects

基本上,我需要一些幫助通過PHP中的重定向發送數組信息。 我有以下代碼:

第1頁:我創建了查詢字符串並將其發送到第2頁,我可以在第2頁的$ _GET中獲取數據。

    $qstr = http_build_query(
        array(
            'products_array' => $products,
            'quantity' => $_POST['quantity']
        )
    );

    header('Location: registration.php?' . $qstr);

第2/3頁,我從$ _server獲取查詢字符串,並將其與重定向頁面連接起來

header('Location: login.php?' . $_SERVER['QUERY_STRING']);

我可以使用普通的href鏈接發送數據,但是,如果我嘗試像上面那樣發送數據,則無法檢索到第2頁之后的數據。

如果您能在這個問題上給我一些建議,那將會很有幫助。

謝謝。

編輯:回顯$ qtystr給出:

products_array%5B0%5D%5Bitem%5D = HTTP%3A%2F%2Fecx.images-amazon.com%2Fimages%2FI%2F61Y-rF9tF8L。 SL1100 .jpg&products_array%5B0%5D%5Bbrand%5D = Charmander&products_array%5B0%5D%5Bprice%5D = 25&products_array%5B1%5D%5Bitem%5D = http%3A%2F%2Fecx.images-amazon.com%2Fimages%2FI% 2F61vgC3GDI2L。 SL1100 .jpg&products_array%5B1%5D%5Bbrand%5D = Squirtle&products_array%5B1%5D%5Bprice%5D = 15&products_array%5B2%5D%5Bitem%5D = http%3A%2F%2Fec2.images-amazon.com%2Fimages%2FI 2F51TnHKT4oML。 SY300 .jpg&products_array%5B2%5D%5Bbrand%5D = Bulbasaur&products_array%5B2%5D%5Bprice%5D = 10&products_array%5B3%5D%5Bitem%5D = http%3A%2F%2Fecx.images-amazon.com%2Fimages%2FI 2F41MpzoPshAL。 SX300 .jpg&products_array%5B3%5D%5Bbrand%5D = Chikorita&products_array%5B3%5D%5Bprice%5D = 20&products_array%5B4%5D%5Bitem%5D = http%3A%2F%2Fecx.images-amazon.com%2Fimages%2 2F51BIJR%252BIqDL。 SX355 .jpg&products_array%5B4%5D%5Bbrand%5D = Mudkip&products_array%5B4%5D%5Bprice%5D = 20&quantity%5B0%5D = 0&quantity%5B1%5D = 0&quantity%5B2%5D = 0&quantity%5B3%5 5D = 0

抱歉,這是傳遞給字符串的愚蠢信息(只是測試東西),但這是我需要的兩個數組中的所有信息。

EDIT2:

我設法解決了這個問題,但沒有給您足夠的信息,抱歉。 問題實際上是我沒有設置頁面的表單動作來保留數據字符串,因此在處理表單時它一直丟失。 感謝您的所有建議,我一定會在下一次嘗試,尤其是在會議上。

僅使用PHP編碼數據

$products = "some product";
$qtd = 1;
$array = array('products_array' => $products, 'quantity' => $qtd);
$json_str = json_encode($array);
echo $json_str;
header('Location: registration.php?' . $qstr);

解碼數據

$data = json_decode($post_data); //to decode the string into an object
echo $data->products_array . "\r\n";
echo $data->quantity . "\r\n";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM