[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Запрос к БД через php
dilik
Добрый день.

Необходимо написать запрос к БД: названия населенных пунктов поместить в раскрывающийся список


Я посмотрел примеры, вывел отдельно города:
Код
<?php
$host='localhost'; // имя хоста (уточняется у провайдера)
$database='BAZA'; // имя базы данных, которую вы должны создать
$user='USER'; // заданное вами имя пользователя, либо определенное провайдером
$pswd='PASS'; // заданный вами пароль

$dbh = mysql_connect($host, $user, $pswd) or die("Не могу соединиться с MySQL.");
mysql_select_db($database) or die("Не могу подключиться к базе.");
$query = "SELECT `location_name` FROM `listing_location` WHERE `location_type` = 'CITY' ";
$res = mysql_query($query);
while($row = mysql_fetch_array($res))
  {
    echo $row['location_name']."<br>\n";
}
?>


Раскрывающийся список сделал так:

Код
<select>
<option value=''>- Выберите город -</option>
</select>


Как объединить их? Т.е. чтобы города появлялись именно внутри списка. И как их упорядочить по алфавиту? Спасибо;)



Спустя 2 часа, 36 минут, 16 секунд (30.07.2008 - 16:57) waldicom написал(а):
Код
<select>
  <option value='null'>- Выберите город -</option>
  <?php
    while($row = mysql_fetch_array($res)){
      echo "<option value='" . $row['location_name'] . '">" . $row['location_name'] . "</option>\n";
    }
  ?>
</select>


ы?

Спустя 57 минут, 22 секунды (30.07.2008 - 17:54) dilik написал(а):
Цитата(waldicom @ 30.7.2008, 16:57) [snapback]44817[/snapback]
Код
<select>
  <option value='null'>- Выберите город -</option>
  <?php
    while($row = mysql_fetch_array($res)){
      echo "<option value='" . $row['location_name'] . '">" . $row['location_name'] . "</option>\n";
    }
  ?>
</select>


ы?


Код
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';'


в строке

Код
echo "<option value='" . $row['location_name'] . '">" . $row['location_name'] . "</option>\n";

Спустя 4 минуты, 28 секунд (30.07.2008 - 17:59) Viking написал(а):
ну да, копипаст рулит... типа не привыкайте делать свою работу за других
Код
echo "<option value='" . $row['location_name'] . "'>" . $row['location_name'] . "</option>\n";

Спустя 2 минуты, 30 секунд (30.07.2008 - 18:01) dilik написал(а):
ПОНЯЛ!

там ошибка, правильней надо

Код
echo "<option value='" . $row['location_name'] . "'>" . $row['location_name'] . "</option>\n";



Бармалейкин, спасибо! wink.gif

Спустя 1 минута, 11 секунд (30.07.2008 - 18:02) dilik написал(а):
Viking, Спасибо, вначала скопировал, а потом сам разобрался в ошибке)))

Спустя 5 минут, 3 секунды (30.07.2008 - 18:07) dilik написал(а):
а сортировку не подскажете как сделать по алфавиту? blush.gif dumau.gif

Спустя 3 минуты, 10 секунд (30.07.2008 - 18:11) waldicom написал(а):

Спустя 55 секунд (30.07.2008 - 18:12) Viking написал(а):
Цитата(dilik @ 30.7.2008, 19:07) [snapback]44835[/snapback]
а сортировку не подскажете как сделать по алфавиту? blush.gif dumau.gif

$query = "SELECT `location_name` FROM `listing_location` WHERE `location_type` = 'CITY' ORDER BY `location_name`";

Спустя 3 часа, 33 минуты, 40 секунд (30.07.2008 - 21:45) dilik написал(а):
Большое спасибо!

Спустя 15 часов, 32 минуты, 40 секунд (31.07.2008 - 13:18) ervlen написал(а):
Я меленько не понял, вот например мне нужно вывести текст из БД в таком же виде.
Код
<select><option value=''>- Выберите город -</option></select>

Но как будет выглядеть код например если название базы например noname_noname, название таблицы nnm_noname столбик из которого нужно вывести список name_no

Спустя 7 минут, 3 секунды (31.07.2008 - 13:25) dilik написал(а):
Попробуй этот: wink.gif

Код
<?php
$host='localhost'; // имя хоста (уточняется у провайдера)
$database='noname_noname'; // имя базы данных, которую вы должны создать
$user=''; // заданное вами имя пользователя, либо определенное провайдером
$pswd=''; // заданный вами пароль

$dbh = mysql_connect($host, $user, $pswd) or die("Не могу соединиться с MySQL.");
mysql_select_db($database) or die("Не могу подключиться к базе.");
$query = "SELECT `name_no` FROM `nnm_noname`";
$res = mysql_query($query);
?>
<select>
  <option value='null'>- Выберите город -</option>
  <?php
    while($row = mysql_fetch_array($res)){
      echo "<option value='" . $row['name_no'] . "'>" . $row['name_no'] . "</option>\n";
    }
  ?>
</select>

Спустя 1 час, 40 минут, 45 секунд (31.07.2008 - 15:06) ervlen написал(а):
чет не получается

Спустя 6 минут, 14 секунд (31.07.2008 - 15:12) ervlen написал(а):
Код
     echo "<option value='" . $row['name_no'] . "'>" . $row['name_no'] . "</option>\n";
вот тут ))

Спустя 1 час, 31 минута, 15 секунд (31.07.2008 - 16:43) dilik написал(а):
Неплохо бы узнать, какая ошибочка вылезает. Телепаты в отпуске;)

P.S> Вместо name_no подставляешь столбик из которого нужно вывести список;)

Спустя 16 минут, 46 секунд (31.07.2008 - 17:00) ervlen написал(а):
Parse error: syntax error, unexpected T_STRING а дальше номмер строки...

Спустя 5 часов, 29 минут, 54 секунды (31.07.2008 - 22:30) ervlen написал(а):
у меня стоит джумла!

Спустя 56 минут, 22 секунды (31.07.2008 - 23:26) dilik написал(а):
попробуй создать пустой документ 111.php и внеси туда тот код, попробуй запустить отдельно

Спустя 2 минуты, 18 секунд (31.07.2008 - 23:29) ervlen написал(а):
Цитата(dilik @ 1.8.2008, 2:26) [snapback]44950[/snapback]
попробуй создать пустой документ 111.php и внеси туда тот код, попробуй запустить отдельно

Таже самая ошибка!

Спустя 9 часов, 15 минут, 45 секунд (1.08.2008 - 08:44) ervlen написал(а):
Все, мы с dilik разобрались... Вот рабочий вариант:
Код
<?php
$query = "SELECT `name_no` FROM `nnm_noname`";
$res = mysql_query($query);
?>
<select>
  <option value='null'>- ВЫБИРАЙТЕ -</option>
  <?php
    while($row = mysql_fetch_array($res)){
      echo "<option value=''>" . $row['name_no'] . "</option>\n";
    }
  ?>
</select>


Спустя 41 секунда (1.08.2008 - 08:45) ervlen написал(а):
Код
<?php
$query = "SELECT `name_no` FROM `nnm_noname`";
$res = mysql_query($query);
?>
<select>
  <option value='null'>- ВЫБИРАЙТЕ -</option>
  <?php
    while($row = mysql_fetch_array($res)){
      echo "<option value='' onClick="Display('email');">" . $row['name_no'] . "</option>\n";
    }
  ?>
</select>
[/quote]

А как теперь сюда onClick прописать??? Когда ввожу его вот в эту строку
Код
      echo "<option value='' onClick="Display(" . $row['name'] . ");">" . $row['name'] . "</option>\n";
, у мну пишет ошибку
Код
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in...

Спустя 6 минут, 18 секунд (1.08.2008 - 08:51) dilik написал(а):
кому надо, могут еще и подключение к базе прикрутить. Просто ему это не надо;)

Спустя 10 часов, 14 минут, 12 секунд (1.08.2008 - 19:05) sergeiss написал(а):
Цитата(ervlen @ 1.8.2008, 9:45) [snapback]44972[/snapback]
А как теперь сюда onClick прописать??? Когда ввожу его вот в эту строку
Код
      echo "<option value='' onClick="Display(" . $row['name'] . ");">" . $row['name'] . "</option>\n";
, у мну пишет ошибку
Код
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in...

Тебе надо добавить обратный слэш перед двойной кавычкой, которая находится внутри символьной строки - это только в случае, если строка в начале и конце ограничена также двойной кавычкой. В твоем случае напиши
Код
      echo "<option value='' onClick=\"Display(" . $row['name'] . ");\">" . $row['name'] . "</option>\n";

и эта часть кода должна стать рабочей.

Спустя 2 года, 6 месяцев, 18 дней, 19 часов, 32 минуты, 24 секунды (20.02.2011 - 15:38) Guest написал(а):
народ а подскажите плиз как мне сделать список чтобы там не павторялись поля, к примеру у меня есть база где хранятся информация о магазинах, т.е.страна, город, название магазина, адрес и т. д., в раскрывающийся список я вывожу страны, тоесть пользователь выберает страну и ему выводятся магазины в этой стране, а как сделать так чтобы если попадаются 2 одинаковых страны в список выводилось только одна

Вот код если надо:


if ($vid==3) {
if(isset($_REQUEST["country"]))
$country= $_REQUEST["country"];
$sql = "select * from Shop";
$q = mysql_query($sql) or die(); // отправляем запрос на сервер
$n = mysql_num_rows($q); // получаем число строк результата
echo "<br>
<table align=center>
<th>
<form method=post align=center action=view_shop.php?vid=3>";

echo "<strong> Страна:</strong>

<select name='country'>";

for($i=0;$i<$n; $i++)
{ // перебираем все строки в результате запроса на выборку
$value = mysql_result($q,$i,country); // получаем значение поля
echo "

<option value = $value>$value";
}

echo "
</select>";
echo "<input type=submit name='search' value='Показать' align=center>";

echo "</form></th></table>";
$sql = "SELECT * FROM Shop where country='$country'"; // создаем SQL запрос
$q = mysql_query($sql) or die("Невозможно выполнить запрос: ". mysql_error()); // отправляем запрос на сервер
$n = mysql_num_rows($q); // получаем число строк результата
?>
<table align='center' border='1' cellspacing='0' cellpadding='0' width=700px>
<tbody>
<tr>
<th ALIGN=CENTER>Магазин</th>
<th ALIGN=CENTER>Адрес</th>
<th ALIGN=CENTER>Телефон</th>
<th align=center>E-mail</th>
</tr>
<?php
for($i=0;$i<$n; $i++)
{ // перебираем все строки в результате запроса на выборку
$magazin = mysql_result($q,$i,magazin); // получаем значение поля
$addres = mysql_result($q,$i,addres); // получаем значение поля
$telephon = mysql_result($q,$i,telephon); // получаем значение поля
$email = mysql_result($q,$i,email); // получаем значение поля
echo "<tr>";
echo "<td ALIGN=CENTER>$magazin</td>";
echo "<td ALIGN=CENTER>$addres</td>";
echo "<td ALIGN=CENTER>$telephon</td>";
echo "<td ALIGN=CENTER>$email</td>";
echo "</tr>";
}
echo "</tbody> </table>";
}?>
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.