Muszę na początku podkreślić, że uczę się dopiero webowego programowania.
W jednym obiekcie typu select (odczyt z bazy) wybieram wartości dla drugiego obiektu select (odczyt z bazy). Wszystko się ładnie wyświetla jednak mam problem aby te dane przesłać w formularzu do następnej strony;/ Myślę, że problemem jest to, że PHP się już dawno wykonało i teraz gdy JS się wykonuje to nie ma odświerzania wartości zmiennych PHP. Dostaję puste zmienne. Myślałem, żeby w JS odświerzać te dane PHP lub też zapisywać te dane do cookie's a w następnej stronie je odczytywać. Na prawdę próbowałem różnych rozwiązań i niestety nic mi nie chce działać. A może wystarczy po prostu do JS wrzucić odświerzanie wartości PHP, da się ? Zależy mi aby dane z obu select'ów były pobierane z bazy.
Zamieszczam poniżej sposób odczytu z bazy i wyświetlania na stronie - proszę o pomoc, na pewno inni również z tego skorzystają. Fora przeszukane z marnym efektem, proszę chociaż o jakieś wskazówki, bo to faktycznie może być błachy problem dla znających się.
Skrypt odświerzający selecta podmenu w stronie głównej:
<!--skrypt dla zmiany listy podmenu--> <script type="text/javascript"> var xmlhttp; function showList(str) { xmlhttp=GetXmlHttpObject(); var url="pokaz_liste.php"; url=url+"?q="+str; xmlhttp.onreadystatechange=stateListChanged; xmlhttp.open("GET",url,true); xmlhttp.send(null); } function stateListChanged() { if (xmlhttp.readyState==4) { document.getElementById("podmenu").innerHTML=xmlhttp.responseText; } } function GetXmlHttpObject() { if (window.XMLHttpRequest) { return new XMLHttpRequest(); } if (window.ActiveXObject) { return new ActiveXObject("Microsoft.XMLHTTP"); } return null; } </script>
zawartość pokaz_liste.php
<?php if($_GET['q']) { // Nawiazanie polaczenia (...); if(!$db_select) { } { } } ?>
Kod dla strony głównej
<!--wybierz menu--> <tr><td align="right">MENU</td><td align="left">'; // Nawiazanie polaczenia (...) // Wybor bazy danych $db_select = mysql_select_db('baza'); if(!$db_select) { die ('Nie mozna nawiazac polaczenia z baza danych - blad wyboru bazy:<nr/>'.mysql_error()); } $list1_query = mysql_query('SELECT * FROM baza_menu'); echo '<select name="menu" onchange="showList(this.value)">'; while($row_list1 = mysql_fetch_array($list1_query)) { echo '<option value="'.$row_list1[0].'">'.$row_list1[1].'</option>'; } echo '</select>*</td></tr>'; echo'<tr><td align="right">PODMENU</td><td align="left"><div id="podmenu">*</div></td></tr>';
Zależy mi na zmiennych $row_list1[1] z kodu ze strony głównej oraz $row_list2[2] z pokaz_liste.php.
Dziękuję za wszelką pomoc!