我的阵列出了什么问题?

时间:2014-06-23 05:54:35

标签: php arrays

我有一个接收数据然后将其放入数组的程序。由于我无法辨别的原因,在我的头发拉出数小时之后,字段“groupID”显示为已经通过,但随后(在下一行)未找到。这是代码:

session_start(); // Start session first thing in script
// Script Error Reporting
error_reporting(E_ALL);
ini_set('display_errors', '1');


echo "what we sent: " ;
print_r($_GET);
$groupId = $_GET['groupId'];
$GroupName = $_GET['GroupName'];
$Price = $_GET['Price'];
$_SESSION["cart_array"] = array(
0 => array(
               "groupId" => $groupId, 
       "GroupName" => $GroupName, 
       "Price" => $Price
)  //array
); //array

echo "<br />";      
print_r ($_SESSION["cart_array"]);

该计划的输出如下: 我们发送了什么:

Array ( [newvalue] => 1 [theData] => groupId=1 [GroupName] => Urban Textures [StylePatternColor] => RBN TXTRS [KitDescription] => [StandardPutUp] => 270 [Price] => 1485 [Discount] => 1417 [DiscountNote] => 1 [Kit] => True [Quantity] => 1 )

Notice: Undefined index: groupId in /home/acmeco5/public_html/AcmeComputingCart/cartUpdaterSimplified.php on line 10

Array ( [0] => Array ( [groupId] => [GroupName] => Urban Textures [Price] => 1485 ) )

请注意,groupId在$_GET中显示为值为1,但在下一行中未定义。

我做错了什么????

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

您正在阅读print_r结果错误。注意它说

[theData] => groupId=1

这意味着有一个索引为theData的元素,其值为groupId=1。 NOT,索引为groupId的元素,这是您尝试使用的元素。

答案 1 :(得分:0)

你可以这样试试。

if(strpos($_GET[theData]),'='){
   $group = $_GET[theData];
   $groups  = explode('=',$group);
   $group_id  = $groups[1];
}else{
   $group_id  = $_GET[theData];
}

欢呼声..