Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Помогите сделать выборку из базы данных MySQL
 
 автор: Empire   (24.12.2005 в 19:24)   письмо автору
 
 

У меня есть несколько полей в таблице Бд Mysql, например: Город, Товар, Цена.
Каким образом можно сделать выборку из этих полей?

   
 
 автор: PantiL   (24.12.2005 в 19:36)   письмо автору
 
   для: Empire   (24.12.2005 в 19:24)
 


<?
$q 
"SELECT 'city', 'tovar', 'cena' FROM table;";
$r mysql_query($q);
$arr mysql_fetch_array($r);
echo 
$arr['city'];
echo 
$arr['tovar'];
echo 
$arr['cena'];
?>

   
 
 автор: cheops   (24.12.2005 в 22:20)   письмо автору
 
   для: PantiL   (24.12.2005 в 19:36)
 

Или, если записей несколько
<? 
  $q 
"SELECT 'city', 'tovar', 'cena' FROM table;"
  
$r mysql_query($q); 
  if(!
$r) exit(mysql_error());
  while(
$arr mysql_fetch_array($r))
  {
    echo 
$arr['city']."<br>"
    echo 
$arr['tovar']."<br>"
    echo 
$arr['cena']."<br><br>"
  }
?>

PS Вопросы, посвященные MySQL, лучше сразу размещать в разделе форума MySQL.

   
 
 автор: Empire   (25.12.2005 в 15:56)   письмо автору
 
   для: Empire   (24.12.2005 в 19:24)
 

Скажите пожалуйста, если я выбираю из Option Menu(допустим их 3) , нажимаю Ок и хочу, чтобы у меня из базы была взята информация, которая совпадает с моим запросом.
Как это сделать ?

   
 
 автор: WebTech   (25.12.2005 в 17:02)   письмо автору
 
   для: Empire   (25.12.2005 в 15:56)
 

Дай select'у какое-нибудь имя, например

<select type="text" name="tovar>

а затем в скрипте обработчике по этому имени выбираешь

$tovar = $_POST['tovar'];

Ты это имел ввиду?

   
 
 автор: Empire   (25.12.2005 в 17:18)   письмо автору
 
   для: WebTech   (25.12.2005 в 17:02)
 

Я присваиваю выбранное значение какой-то переменной($tovar), затем мне нужно напечатать все строчки таблицы, в которых столбец tovar принимал бы значение $tovar .

   
 
 автор: WebTech   (25.12.2005 в 18:10)   письмо автору
 
   для: Empire   (25.12.2005 в 17:18)
 

Ну, например так

<?php
$qry 
'select * from table where tovar="'.$tovar.'"';
$res mysql_query($qry);
$num mysql_num_rows($qry);
for (
$i=0$i<$num$i++)
{
$recs mysql_fetch_array($res);
$tovar $recs['tovar'];
$cena $recs['cena'];
$city $recs['city'];
echo 
$tovar.'<br>';
echo 
$cena.'<br>';
echo 
$city.'<br>';
echo 
'<br>';
}
?>

   
 
 автор: Empire   (26.12.2005 в 02:32)   письмо автору
 
   для: WebTech   (25.12.2005 в 18:10)
 

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in z:\home\test.ru\www\apple.php on line 19


<?

/* Некоторые переменные */
$hostname "localhost";
$username "root";
$password "";
$dbName "kvartira";

/* Таблица MySQL, в которой хранятся данные */
$userstable "metro";

/* создать соединение */
MYSQL_CONNECT($hostname,$username,$password) OR DIE("Не могу создать соединение ");
@
mysql_select_db("$dbName") or die("Не могу выбрать базу данных "); 


$qry "select * from $userstable where choise = '$tovar'"
$res mysql_query($qry); 
$num mysql_num_rows($qry);
for (
$i=0$i<$num$i++) 
{
$recs mysql_fetch_array($res); 
$tovar $recs['choise']; 
$name $recs['clients'];
echo 
$tovar."<br>" 
echo 
$name."<br>";  
echo 
"<br>"
}
?>


Что это за ошибка, и как ее исправить ?

   
 
 автор: WebTech   (26.12.2005 в 12:45)   письмо автору
 
   для: Empire   (26.12.2005 в 02:32)
 

Исправьте строку как написано

$qry = "select * from".$userstable." where choise = '".$tovar."'";

Переменная $userstable должна иметь значение равное какой-либо таблице в бд

   
 
 автор: cheops   (26.12.2005 в 13:20)   письмо автору
 
   для: WebTech   (26.12.2005 в 12:45)
 

Кроме этого, после строки
<?php
$res 
mysql_query($qry);
?>

лучше всегда добавлять проверку на ошибки
<?php
  
if(!$res) exit(mysql_error());
?>

   
 
 автор: Empire   (27.12.2005 в 19:10)   письмо автору
 
   для: cheops   (26.12.2005 в 13:20)
 

добавляю

if(!$res) exit(mysql_error());


остается
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in z:\home\test.ru\www\apple.php on line 21

   
 
 автор: Empire   (27.12.2005 в 19:05)   письмо автору
 
   для: WebTech   (26.12.2005 в 12:45)
 

делаю, как ты написал - выводит 2 ошибки
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in z:\home\test.ru\www\apple.php on line 21

и

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in z:\home\test.ru\www\apple.php on line 25

   
 
 автор: cheops   (27.12.2005 в 22:03)   письмо автору
 
   для: Empire   (27.12.2005 в 19:05)
 

Обратите внимание на блок
<?php
  $res 
mysql_query($qry); 
  
$num mysql_num_rows($qry);
?>

его следует исправить следующим образом
<?php
  $res 
mysql_query($qry); 
  
$num mysql_num_rows($res);
?>

   
 
 автор: romza   (28.12.2005 в 10:25)   письмо автору
 
   для: cheops   (27.12.2005 в 22:03)
 

А у меня почему то выдает следующее:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'fromrn_objtree where choise = ''' at line 1

Версия MySQL 5.0.16.

   
 
 автор: cheops   (28.12.2005 в 13:14)   письмо автору
 
   для: romza   (28.12.2005 в 10:25)
 

У вас почему-то нет пробела между ключевым словом FROM и именем таблицы rn_objtree, проверьте, точно ли между ними имеется пробел?

   
 
 автор: Empire   (29.12.2005 в 18:44)   письмо автору
 
   для: cheops   (28.12.2005 в 13:14)
 

Всем большое спасибо !!!

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования