ФорумПрограммированиеJavaScript → Зависимые списки

Зависимые списки

  • mefkun

    Сообщения: ? Репутация: N Группа: Кто попало

    Spritz 21 февраля 2012 г. 4:49

    Всех с наступающими праздниками!

    Знаю, что тема баян. Но все таки попрошу помощи.

    Недавно по новой работе пришлось столкнуться с чужими разработками на php, и приходится все довольно быстро схватывать.

    Необходимо создать 2 списка, значения второго зависят от того, что выбрали в первом. Обе выборки делаются из БД. И суть проблемы в том, что результат первого запроса не передается во второй запрос.

    Это страница с первым списком (файл spisok3.php)

    <html>
    <head>
    <meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=cp1251&quot;/>
    <title>Sostoyanie sveta for Date and RP</title>
    </head>
    <body>


    <?php
    $connect = mysql_connect($host, $account, $password);
    $db = mysql_select_db($dbname);
    print &quot;<h3>Заголовок</h3>&quot;;

    ?>

    <script src=&quot;JsHttpRequest.js&quot;></script>

    <script>
    function doload(value)
    {
    var req=new JsHttpRequest();
    req.onreadystatechange=function()
    {
    if(req.readyState==4)
    document.getElementById(&quot;result&quot;).innerHTML=req.responseText;
    }
    req.open(null, &quot;spisok4.php&quot;, true)
    req.send({spis:value});
    }

    </script>

    <FORM ACTION=&quot;spisok5.php&quot; METHOD=&quot;POST&quot;>

    <?php
    echo &quot;ВЫБРАТЬ УЧАСТОК &quot;;
    ?>

    <select name=&quot;spis&quot; id=&quot;spis&quot; onchange=&quot;doload(this.value);&quot;>
    <option value=&quot;no_action&quot;>Выбрать район</option>
    <?php
    $query = mysql_query(&quot;SELECT * FROM district&quot;);
    $res = mysql_fetch_array($query);
    do
    {
    echo &#39;<option value=&#39;.$res[&#39;id_dist&#39;].&#39;>&#39;.$res[&#39;name_dist&#39;].&#39;</option>&#39;;
    }
    while($res = mysql_fetch_array($query));
    ?>
    </select>

    <br><br>

    <div id=&quot;result&quot;></div>


    <?php>
    mysql_close($connect);

    $HTTP_POST_VARS[&#39;spis&#39;];
    ?>


    <p>
    <INPUT TYPE=&quot;Submit&quot; VALUE=&quot;ДАЛЬШЕ >>>&quot;>
    </FORM>
    <p>
    </body>
    </html>



    Второй список (файл: spisok4.php):

    <?php
    $connect = mysql_connect($host, $account, $password);
    $db = mysql_select_db($dbname);

    require (&quot;JsHttpRequest.php&quot;);
    $JsHttpRequest=new JsHttpRequest(&quot;windows-1251&quot;);
    ?>


    <select name=spis2 id=&quot;spis2&quot;>
    <option value=&#39;&#39;>Выбрать объект</option>
    <?php
    $query = mysql_query (&#39;SELECT * FROM kt where district=&quot;.$_REQUEST[&quot;spis&quot;].&quot;&#39;);
    $res1 = mysql_fetch_array($query);
    do
    {
    echo &#39;<option value=&#39;.$res1[&#39;id_kt&#39;].&#39;>&#39;.$res1[&#39;name_kt&#39;].&#39;</option>&#39;;
    }
    while($res1 = mysql_fetch_array($query));
    ?>
    </select>
    <?php
    echo $spis;
    mysql_close($connect);
    ?>


    <p>
    ВВЕДИТЕ ГОД В ФОРМАТЕ YYYY
    <INPUT TYPE=&quot;text&quot; NAME=&quot;myYear&quot; SIZE=&quot;10&quot; MAXLENGTH=&quot;10&quot;>
    <p>
    ВВЕДИТЕ МЕСЯЦ В ФОРМАТЕ MM
    <INPUT TYPE=&quot;text&quot; NAME=&quot;myMon&quot; SIZE=&quot;2&quot; MAXLENGTH=&quot;10&quot;>
    <p>
    ВВЕДИТЕ ДЕНЬ В ФОРМАТЕ DD
    <INPUT TYPE=&quot;text&quot; NAME=&quot;myDay&quot; SIZE=&quot;2&quot; MAXLENGTH=&quot;10&quot;>
    <p>
    ВВЕДИТЕ ЧАС В ФОРМАТЕ HH
    <INPUT TYPE=&quot;text&quot; NAME=&quot;myHour&quot; SIZE=&quot;2&quot; MAXLENGTH=&quot;10&quot;>
    <p>
    ВВЕДИТЕ МИНУТУ В ФОРМАТЕ MM
    <INPUT TYPE=&quot;text&quot; NAME=&quot;myMin&quot; SIZE=&quot;2&quot; MAXLENGTH=&quot;10&quot;>
    <p>


    Так же вместе со вторым списком загружаются поля для ввода доп информации.

    Так вот, после выбора какого-то значения в первом списке подгружается все остальное (чему я очень рад), но второй список абсолютно пустой.

    С чем связан этот косяк? Если у кого-то есть идеи, то подскажите.

    Заранее спасибо.
  • ivanscm

    Сообщения: 1251 Репутация: N Группа: Джедаи

    Spritz 22 февраля 2012 г. 0:23, спустя 19 часов 33 минуты 21 секунду

    mefkun, не слушай его.
    С возвращением, Пiха!
  • mefkun

    Сообщения: ? Репутация: N Группа: Кто попало

    Spritz 23 февраля 2012 г. 20:55, спустя 1 день 20 часов 31 минуту

    mefkun, не слушай его.


    Поинтересоваться этим мне в любом случае будет полезно, только не знаю пока поможет ли это.
  • ivanscm

    Сообщения: 1251 Репутация: N Группа: Джедаи

    Spritz 24 февраля 2012 г. 2:01, спустя 5 часов 6 минут 37 секунд

    mefkun, знание фреймворков пригодятся, но если тебе на скоряк нужно решить задачу, быстрее будет вкурить и решить. чем изучать что-то новое и прикручивать.
    С возвращением, Пiха!
  • phpdude

    Сообщения: 26617 Репутация: N Группа: в ухо

    Spritz 27 февраля 2012 г. 5:55, спустя 3 дня 3 часа 53 минуты

    ХУЙ ПИЗДА ДЖИГУРДА
    Сапожник без сапог

Пожалуйста, авторизуйтесь, чтобы написать комментарий!