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

Форум MySQL

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Хелп! Поправьте Запросик

Сообщения:  [1-10]   [11-16] 

 
 автор: cheops   (29.03.2012 в 14:33)   письмо автору
 
   для: dimonich2004   (29.03.2012 в 13:38)
 

Тем что он выполнит хотя бы один цикл, хотя задача предполагает, что их может быть 0. Т.е. для такого типа задач специально введен цикл while(). У вас есть пила и лом, вы ломом выкорчевываете дерево, а пилой пилите наледь на дороге. Это все возможно, но выглядит не профессионально.

  Ответить  
 
 автор: Valick   (29.03.2012 в 13:58)   письмо автору
 
   для: dimonich2004   (29.03.2012 в 13:38)
 

просто не по назначению используется
если вам нужно забить гвоздь вы возьмете молоток или черствый батон?
do while используется там где условие определяется не ранее чем после хотя бы одной итерации цикла, в нашем случае все известно и до начала цикла.
и иногда можно получить ошибку или нотайс. если запрос вернется пустым

  Ответить  
 
 автор: dimonich2004   (29.03.2012 в 13:38)   письмо автору
 
   для: Valick   (21.03.2012 в 22:13)
 

а чем так плох DO в связке с WHILE?

  Ответить  
 
 автор: Valick   (21.03.2012 в 22:13)   письмо автору
 
   для: dimonich2004   (21.03.2012 в 21:31)
 

А запросы к 3 или 5ти таблицам тоже с ON делаюццо?
да, причем ON можно писать несколько раз для каждого JOIN, ну или использовать AND
__
и самое главное, чем быстрее избавитесь от видео курса Попова, тем лучше
вместо do{}while() используйте while(){}, воспользуйтесь поиском по этому форуму в разделе MySQL примеров очень много

  Ответить  
 
 автор: dimonich2004   (21.03.2012 в 21:31)   письмо автору
 
   для: Valick   (21.03.2012 в 21:24)
 

- "Три раза КУ!"

СПАСИБО ОГРОМНОЕ!

Первый раз решил такой запрос сложный сделать и видимо заморочился что не заметил))))

СПАСИБО!

А запросы к 3 или 5ти таблицам тоже с ON делаюццо?

  Ответить  
 
 автор: dimonich2004   (21.03.2012 в 21:29)   письмо автору
 
   для: Valick   (21.03.2012 в 21:24)
 

fab_id ?

=))))

  Ответить  
 
 автор: Valick   (21.03.2012 в 21:24)   письмо автору
 
   для: dimonich2004   (21.03.2012 в 21:14)
 

ну а теперь посмотрите на таблицы и догадайтесь почему у вас условие ON color_fabr=fab_name ON color_fabr=fab_name ни разу не выполняется :)

  Ответить  
 
 автор: dimonich2004   (21.03.2012 в 21:14)   письмо автору
 
   для: Valick   (21.03.2012 в 21:10)
 

Пусто

на экране

ошибок нет(((

записи есть

--
-- Table structure for table `db_color`
--

CREATE TABLE IF NOT EXISTS `db_color` (
`color_id` int(11) NOT NULL AUTO_INCREMENT,
`color_name` tinytext NOT NULL,
`color_img` tinytext NOT NULL,
`color_fabr` int(11) NOT NULL,
PRIMARY KEY (`color_id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=2 ;

--
-- Dumping data for table `db_color`
--

INSERT INTO `db_color` (`color_id`, `color_name`, `color_img`, `color_fabr`) VALUES
(1, 'Дуб', '20120321112548_dub.jpg', 2);





--
-- Table structure for table `db_fabriks`
--

CREATE TABLE IF NOT EXISTS `db_fabriks` (
`fab_id` int(11) NOT NULL AUTO_INCREMENT,
`fab_name` tinytext NOT NULL,
`fabr_city` int(11) NOT NULL,
PRIMARY KEY (`fab_id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=5 ;

--
-- Dumping data for table `db_fabriks`
--

INSERT INTO `db_fabriks` (`fab_id`, `fab_name`, `fabr_city`) VALUES
(1, 'Одинцово', 1),
(2, 'Текона', 2),
(3, 'Mario rioli', 3),
(4, 'Доп1', 4);

  Ответить  
 
 автор: Valick   (21.03.2012 в 21:10)   письмо автору
 
   для: dimonich2004   (21.03.2012 в 20:50)
 

сделайте $qf=mysql_query("SELECT color_id,color_img,color_name,fab_name FROM db_color JOIN db_fabriks ON color_fabr=fab_name ORDER BY color_name") or die(mysql_error());

  Ответить  
 
 автор: dimonich2004   (21.03.2012 в 20:50)   письмо автору
 
   для: Valick   (21.03.2012 в 20:40)
 

Глухо как в танке ((


<?
$qf
=mysql_query("SELECT color_id,color_img,color_name,fab_name FROM db_color JOIN db_fabriks ON color_fabr=fab_name ORDER BY color_name");
$fq=mysql_fetch_array($qf);
do
{
    
//if(!empty($fq['color_name']))
    //{
        
$ii++;
?>
        <div style="width:32%; float:left; color:#00F; margin:1px; padding:1px; border-style:solid; border-width:1px; border-radius:10px;" align="center"><img src="../FabrColorImg/<? echo $fq['color_img']; ?>" style="float:left;" /><p><? echo $ii.") ".$fq['color_name']." (Текона)".$fq['fab_name']; ?></p></div>
<?
    
//}
}while($fq=mysql_fetch_array($qf));
?>



А правильно я вывожу?
- У меня пусто - нечего не выводит (Ошибок нет - просто пусто)

  Ответить  

Сообщения:  [1-10]   [11-16] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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