[FX.php List] Beating a dead horse (was: trying to read back an
array)
Dale Bengston
dbengston at tds.net
Sat Sep 18 07:49:29 MDT 2010
OK, if the support request doesn't have a database record key, then you could probably just call it 'suppReq' or whatever you want, and refer to it by that element key in $_SESSION.
if( (strlen($_POST['recid'])>0) && (is_array($_POST['recid']))) {
foreach($_POST['recid'] as $recid) {
$_SESSION['suppReq'][$recid]['description] = $_POST['description'.$recid] ;
$_SESSION['suppReq'][$recid]['type'] = $_POST['type'.$recid] ;
$_SESSION['suppReq'][$recid]['serial'] = $_POST['serial'.$recid] ;
$_SESSION['suppReq'][$recid]['problem'] = $_POST['problem'.$recid] ;
$_SESSION['suppReq'][$recid]['recid'] = $recid ;
}
}
foreach($_SESSION['suppReq'] as $recid => $value) {
$status = "Open; pending manufacturer approval";
$description = $value['description'];
$problem = $value['problem'];
$serial = $value['serial'];
echo $recid;
On Sep 17, 2010, at 11:12 AM, Bob Patin wrote:
> OK, I can do that, but at this point nothing's been written to the DB, so i don't have a support_request value per se; I suppose I can generate one.
>
> Question: should it not work this way since every user only has one array of recid?
>
> How do I retrieve the session key? I know there's a command for it, just being lazy...
>
> BP
>
>
> On Sep 17, 2010, at 11:06 AM, Dale Bengston wrote:
>
>> Oh, okay. I think then you should set your session main key to the id of their support request, and then make sub-arrays for every item in the support request.
>>
>> $suppReq = [wherever you store that value];
>>
>>
>> if( (strlen($_POST['recid'])>0) && (is_array($_POST['recid']))) {
>> foreach($_POST['recid'] as $recid) {
>> $_SESSION[$suppReq][$recid]['description] = $_POST['description'.$recid] ;
>> $_SESSION[$suppReq][$recid]['type'] = $_POST['type'.$recid] ;
>> $_SESSION[$suppReq][$recid]['serial'] = $_POST['serial'.$recid] ;
>> $_SESSION[$suppReq][$recid]['problem'] = $_POST['problem'.$recid] ;
>> $_SESSION[$suppReq][$recid]['recid'] = $recid ;
>> }
>> }
>>
>> foreach($_SESSION[$suppReq] as $recid => $value) {
>> $status = "Open; pending manufacturer approval";
>> $description = $value['description'];
>> $problem = $value['problem'];
>> $serial = $value['serial'];
>> echo $recid;
>>
>>
>>
>>
>>
>> On Sep 17, 2010, at 10:45 AM, Bob Patin wrote:
>>
>>> I don't think that'll work; here's the thing:
>>>
>>> the user may visit this page multiple times, similar to a cart; they may come here, having added a support request, then leave, find another item that needs service, and add it too.
>>>
>>> So that's why i need to build this array; each time they get to this page, i want to show them the list of items that they've selected so far for repair.
>>>
>>> So that means that my 2nd loop has to loop thru the array and not my POST values...
>>>
>>> Make sense? So that being the case, why isn't it pulling in my array?
>>>
>>> BP
>>>
>>>
>>> On Sep 17, 2010, at 10:32 AM, Dale Bengston wrote:
>>>
>>>> This (and subsequent lines) should be:
>>>>
>>>> $_SESSION[$recid]['description'] = $_POST['description'.$recid] ;
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> On Sep 17, 2010, at 9:59 AM, Bob Patin wrote:
>>>>
>>>>> Well, I'm almost there, but here's what is happening:
>>>>>
>>>>> When I read back the array using this:
>>>>>
>>>>> foreach($_SESSION['recid'] as $recid => $value) {
>>>>> $status = "Open; pending manufacturer approval";
>>>>> $description = $value['description'];
>>>>> $problem = $value['problem'];
>>>>> $serial = $value['serial'];
>>>>>
>>>>> I get back 4 records, and my data isn't there (getting a single letter in each value)...
>>>>>
>>>>> Here's how I'm writing my vars:
>>>>>
>>>>> if( isset($_POST['recid']) && is_array($_POST['recid'])) {
>>>>> foreach($_POST['recid'] as $recid) {
>>>>> $_SESSION['recid']['description'] = $_POST['description'.$recid] ;
>>>>> $_SESSION['recid']['type'] = $_POST['type'.$recid] ;
>>>>> $_SESSION['recid']['serial'] = $_POST['serial'.$recid] ;
>>>>> $_SESSION['recid']['problem'] = $_POST['problem'.$recid] ;
>>>>> }
>>>>> }
>>>>>
>>>>> I should get back only ONE record, so the array should be empty other than that one; I closed my browser just to make sure I'd ended the previous session...
>>>>>
>>>>> Do I need to filter out empty data? Why am I not getting my vars back?
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> FX.php_List mailing list
>>>>> FX.php_List at mail.iviking.org
>>>>> http://www.iviking.org/mailman/listinfo/fx.php_list
>>>>
>>>> _______________________________________________
>>>> FX.php_List mailing list
>>>> FX.php_List at mail.iviking.org
>>>> http://www.iviking.org/mailman/listinfo/fx.php_list
>>>
>>> _______________________________________________
>>> FX.php_List mailing list
>>> FX.php_List at mail.iviking.org
>>> http://www.iviking.org/mailman/listinfo/fx.php_list
>>
>> _______________________________________________
>> FX.php_List mailing list
>> FX.php_List at mail.iviking.org
>> http://www.iviking.org/mailman/listinfo/fx.php_list
>
> _______________________________________________
> FX.php_List mailing list
> FX.php_List at mail.iviking.org
> http://www.iviking.org/mailman/listinfo/fx.php_list
More information about the FX.php_List
mailing list