Скрыть / показать список в PHP

0

У меня есть список, сгенерированный MySQL. Когда я нажимаю один элемент списка, он показывает новый список, относящийся к элементу на той же странице.

Edit:

Вот код, как я получаю список.

<?php
    include("./conn/connect.php");
    $query = "SELECT * FROM entreprise ORDER BY id";
    $result = mysql_query($query) or die("result failed: ".mysql_error());
    while($row = mysql_fetch_assoc($result) ){
        echo $row['name'].'<br>';
    }
?>

Я не могу закончить последнюю часть.

Как я могу это достичь?

  • 0
    Вам нужно опубликовать код. Вам нужно будет выполнить другой запрос, чтобы сгенерировать подмножество результатов при нажатии на элемент.
  • 0
    код будет полезен. а также, вы используете настоящее время в описании, например, если функциональность уже есть, а затем вы спрашиваете, как этого добиться ... это немного сбивает с толку ..
Показать ещё 1 комментарий
Теги:

3 ответа

2
Лучший ответ

Вы пытаетесь запустить запрос в PHP и заполнить списки в раскрывающихся списках на странице HTML? Если это так, вы должны использовать JavaScript, чтобы показывать и скрывать их в зависимости от того, что нажал предыдущий список. вы можете использовать события, чтобы узнать, что было нажато, отправить форму или что-то еще и получить соответствующий список, который будет показан ниже.

Я правильно понял вашу проблему? или я в отъезде?

Edit:

OK. Использование JavaScript для скрытия элементов отображения не нуждается в учебнике.

Имейте список в форме. Событие onchange сообщит вам, когда выбранный элемент изменился. когда это произойдет, отправьте форму на ту же страницу. В PHP вы можете получить выбранный элемент. Затем запустите свой запрос и получите второй список на основе этого ввода. используйте Echo или что-то, чтобы написать новый список в HTML.

<?php
// Here, $_POST['options'] will give you the selected item from first list.
// Run your query to get the next list and use echo() to write 
// out the HTML or something
?>

<form name="myform" method="POST" action="test.php">
    <select name="options" onchange="myform.submit();">
        <option value="item1">item1</option>
        <option value="item2">item2</option>
        <option value="item3">item3</option>
    </select>
</form>

<?php
// Use a 'for each' kind of loop here and run through the results 
// of your second list. Construct the secondary select tag using 
// the data here.
?>

Вы можете создать первый список, используя PHP после выполнения запроса. Я не делал этого, потому что код был бы длинным и сложным.

В основном вы запускаете первый запрос и создаете первый список и добавляете события, как показано.

Когда пользователь выбирает что-то в этом списке, вы отправляете его на ту же страницу и на основе этого значения запускаете второй запрос и создаете вторичный список.

  • 0
    @senthil, да, я думаю, ты прекрасно понимаешь контекст. И есть ли у вас какие-либо предложения или учебники для этого? Заранее спасибо.
2

Если вы создадите свой список с помощью семантического кода, вам будет проще стилизовать его с помощью CSS. (IE использует UL, LI и т.д.).

<?php
include("./conn/connect.php");
$query = "SELECT * FROM entreprise ORDER BY id";
$result = mysql_query($query) or die("result failed: ".mysql_error());
echo "<ul id=\"hideme\">";
while($row = mysql_fetch_assoc($result) ){
    echo "<li>" . $row['name'] . "</li>";
}
echo "</ul>";

? >

И ваш JQuery:

 $(document).ready(function() {
   $('#toggle').click( function() {
    $('#hideme').toggle();
   });
});

Просто создайте ссылку, кнопку, что-нибудь вроде этого:

<input type="submit" name="toggle" value="Toggle list show" id="toggle" />
  • 0
    @hfidgen, спасибо, но я не использую такой переключатель, я хочу щелкнуть один элемент списка, а затем он сгенерирует новый список справа на основе выбранного элемента.
0

Вы можете использовать дерево javascript jQuery. Перейдите в здесь для демонстрации

Это то, что вам нужно?

  • 0
    @ Джейми, спасибо, но я не думаю, что найду что-то вроде jtree.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню