Hallo
Ich hab ein Problem mit einem 2-dimensionalen Session-Array.
Hier mein Code
das erste print_r liefert mir folgendes:
beim zweiten print_r sind auf einmal meine 2-dimensionalen Daten "zerstört" und ich weiß nicht wieso und das muß ja irgendwo im Quellcode dazwischen passieren, den ich ja gepostet hab, aber wo keine Eingriffe in $_SESSION gemacht werden
Oder ist $_SESSION defaultmäßig noch gar kein mehrdimensionales Array und ich müßte es anstatt wie es jetzt ist:
auf folgende Weise abspeichern?
thx
Boneman
Ich hab ein Problem mit einem 2-dimensionalen Session-Array.
Hier mein Code
PHP-Code:
print_r($_SESSION);
#Anzahl und Seriennummer/Gerätenamen abfragen
echo('<form method="post" action="'.$PHP_SELF.'">
<h1>Einzelne Komponente umziehen</h1><br />');
echo('Bitte wählen Sie nun die Anzahl dieser Komponente aus, die umgezogen werden soll
und geben die Daten für Seriennummer und Gerätenamen ein.<br /><br />');
$modell_number = $_POST['select_modell_number'] ? $_POST['select_modell_number'] : '1';
echo('Anzahl: <select name="select_modell_number" size="1"
onChange="this.form.submit()">');
for($a=1; $a <= 15; $a++){
if(isset($_POST['select_modell_number'])){
if($a == $_POST['select_modell_number']){
$selected = "selected";
}
else
$selected = "";
}
echo('<option '.$selected.' value="'.$a.'">'.$a.'</option>');
}
echo('</select><br />');
for($b=1; $b <= $modell_number; $b++){
echo('<h2>'.$b.'. Komponente:</h2>
<p id="p_right">Seriennummer: <input type="text" name="'.$b.'_component_serial"
size="30"><br />
Gerätename: <input type="text" name="'.$b.'_component_name" size="30"></p><br />');
}
echo('<br />
Platz für Bemerkungen:
<input type="text" name="order_notes" maxlength="255" size="40"><br /><br />
<input type="Button" value="Zurück" onClick="javascript:history.back();">
<input type="submit" name="next_choose_components_actions_dismantling"
value="weiter zu Abbauaktionen">
<input type="hidden" name="choosen_components_move" value="2">
</form>');
print_r($_SESSION);
Code:
Array ( [loggedIn] => 1 [userlogin] => mustermann [user_status] => 1 [session_user_customer_id] => 2 [a] => Array ( [session_poa_name] => [session_poa_room] => [session_poa_address] => Abholadresse-anschrift [session_poa_postcode] => [session_poa_city] => Abholadresse-ort [session_poa_contact_name] => Ansprechpartner am Abholort-name [session_poa_contact_phone1] => [session_poa_contact_phone2] => [session_poa_date_start] => 1109199600 [session_dispo_distance] => 333 ) [b] => Array ( [session_poa_name] => [session_poa_room] => [session_poa_address] => Lieferadresse-anschrift [session_poa_postcode] => [session_poa_city] => [session_poa_contact_name] => [session_poa_contact_phone1] => [session_poa_contact_phone2] => Ansprechpartner am Lieferort-festnetz [session_poa_date_start] => 1109199600 [session_dispo_distance] => 444 )
Code:
Array ( [loggedIn] => 1 [userlogin] => mustermann [user_status] => 1 [session_user_customer_id] => 2 [a] => 16 [b] => 2 )
PHP-Code:
$_SESSION['a']['session_poa_name'] = $_POST['poa_name'];
$_SESSION['a']['session_poa_room'] = $_POST['poa_room'];
$_SESSION['a']['session_poa_address'] = $_POST['poa_address'];
$_SESSION['a']['session_poa_postcode'] = $_POST['poa_postcode'];
$_SESSION['a']['session_poa_city'] = $_POST['poa_city'];
PHP-Code:
$_SESSION = array('a' => array('session_poa_name' => $_POST['poa_name'],
'session_poa_room' => $_POST['poa_room'], 'session_poa_address' => $_POST['poa_address'],
'session_poa_postcode' => $_POST['poa_postcode'],
'session_poa_city' => $_POST['poa_city']));
Boneman
Kommentar