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

Форум MySQL

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

 

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

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

тема: Сортировка по алфавиту

Сообщения:  [1-10]    [11-20]  [21-27] 

 
 автор: Valick   (16.03.2013 в 13:21)   письмо автору
 
   для: Sfinks   (16.03.2013 в 12:07)
 

:)

   
 
 автор: Sfinks   (16.03.2013 в 12:07)   письмо автору
 
   для: Valick   (16.03.2013 в 09:40)
 

Спасибо, Valick =)

   
 
 автор: liberty   (16.03.2013 в 09:52)   письмо автору
 
   для: Valick   (16.03.2013 в 09:40)
 

вау.

щас вот так выглядит

"
"ПОСЁЛОК СОВХОЗА ""ОСТАНКИНО""" "САНАТОРИЙ ""ВОРОБЬЕВО""" "ЦЕНТРАЛЬНАЯ УСАДЬБА СОВХОЗА ""НОВООРСКИЙ"""
1
10 ЛЕТ ОКТЯБРЯ 12 ЛЕТ ОКТЯБРЯ 15 ЛЕТ ОКТЯБРЯ
2
2 ОТДЕЛЕНИЕ СОВХОЗА ВОЛГО-ДОН 2 ОТДЕЛЕНИЕ СОВХОЗА ДИНАМО
4
40 ЛЕТ ОКТЯБРЯ
А
АБАБКОВО АБАГА АБАГА-ЦЕНТРАЛЬНАЯ АБАГАЙТУЙ АБАДЗЕХСКАЯ АБАЗА АБАЙ 
АБАКАН АБАКАНОВО АБАКУМОВКА АБАКУМОВО АБАЛАК АБАЛАКОВО АБАЛАЧ АБАН
 АБАТСКИЙ АБАШЕВО АБАШЕВО АБАШЕВО АББАКУМОВО АБГАНЕРОВО АБГАНЕРОВО-ВОКЗАЛ

и т.д.

   
 
 автор: Valick   (16.03.2013 в 09:40)   письмо автору
 
   для: liberty   (16.03.2013 в 09:26)
 

чуть забыл
вот это
if($row[letter]<>$n) echo '<hr />'.$row[letter].'<br />';

замените на это
if($row[letter]<>$n) {$n=$row[letter]; echo '<hr />'.$row[letter].'<br />';}

и попробуйте
___
но если надо сверху, то отдельным запросом, который был выше

   
 
 автор: liberty   (16.03.2013 в 09:26)   письмо автору
 
   для: Valick   (16.03.2013 в 09:02)
 

ну теперь понятно.
сейчас выводятся таким образом
"
"ПОСЁЛОК СОВХОЗА ""ОСТАНКИНО"""
1
10 ЛЕТ ОКТЯБРЯ
1
12 ЛЕТ ОКТЯБРЯ
1
15 ЛЕТ ОКТЯБРЯ
2
2 ОТДЕЛЕНИЕ СОВХОЗА ВОЛГО-ДОН
2
2 ОТДЕЛЕНИЕ СОВХОЗА ДИНАМО
4
40 ЛЕТ ОКТЯБРЯ
А
АБАБКОВО

цифры вот откуда выходят.
ну не совсем так хотелось бы.
нужно оставить города по колонкам как здесь
<?php 
$sql 
mysql_query("SELECT * FROM town ORDER by name");     
if(!
$sql)   
{echo 
"<br><p>В данном разделе пока нет информации</p>";}   
else    
{   
  if(
mysql_num_rows($sql) > 0)    
  {    
    while (
$row mysql_fetch_array($sql))     
    { 
      
$query "SELECT COUNT(*) FROM pu   
                WHERE approved='1' and id_town='
$row[id_town]'";  
      
$res mysql_query($query);  
      if(!
$res) exit("<br>Ошибка обращения к базе данных - ".mysql_error());  
      
$total mysql_result($res0); 
    if(
$total 0
      { 
      
$filename[] = "<a href='post_towns_pu.php?id_town=$row[id_town]'>$row[name]</a>&nbsp;($total)"
    } 
    }
  } 

?>

а сверху вывести в строку буквы городов - только те, которые есть в базе pu по полю id_town
из вашего примера - выводятся все города из базы town - а там тысячи.

   
 
 автор: Valick   (16.03.2013 в 09:02)   письмо автору
 
   для: liberty   (16.03.2013 в 08:06)
 

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

<?php
$query
="SELECT LEFT(name,1) AS letter, name, id_town
          FROM town 
          ORDER BY name"
;
$res=mysql_query($query);
$n='';
if(
$res){
  if(
mysql_num_rows($res)){
    while(
$row=mysql_fetch_assoc($res)){
      if(
$row[letter]<>$n) echo '<hr />'.$row[letter].'<br />';
      
printf ("<a href='post_towns_pu.php?id_town=$row[id_town]'>%s</a>
"
$row["name"]);
    }
  }
}
?>

   
 
 автор: liberty   (16.03.2013 в 08:06)   письмо автору
 
   для: Valick   (15.03.2013 в 21:42)
 

запрос сделал.
выводит первые буквы и цифры "1 2 4
<?php
$result111 
mysql_query("
SELECT DISTINCT LEFT(name,1) AS letter 
FROM town 
ORDER BY letter
"
$db); 
if (!
$result111

echo 
"<p>1)Запрос на выборку данных из базы не прошел.</p>"

else 
{   
if (
mysql_num_rows($result111) > 0)
{
while (
$myrow111 mysql_fetch_array($result111))
{
printf ("<a href='post_towns_pu.php?id_town=$myrow111[id_town]'>%s</a>
"
$myrow111["letter"]);

}
}
?>

как вот теперь связать букву с нужным городом?

   
 
 автор: Valick   (15.03.2013 в 21:42)   письмо автору
 
   для: liberty   (15.03.2013 в 21:23)
 

Вы безнадежны ....
При нулевом уровне знаний, вы дадите фору 10-ти программистам по части гонора.
У меня складывается впечатление, что вы чего-то недопонимаете, не только в РНР, но и в жизни. Поймите вам тут никто, и ничего не должен. И если вы даже правильный запрос не можете разобрать и применить, то кто виноват?

   
 
 автор: liberty   (15.03.2013 в 21:23)   письмо автору
 
   для: Lotanaen   (15.03.2013 в 14:36)
 

Ok.
What does Letter mean?
Is it table? Or something else?
I don't have this table in my database.
I am waiting for your reply.
thank's for your time.

   
 
 автор: Lotanaen   (15.03.2013 в 14:36)   письмо автору
 
   для: liberty   (15.03.2013 в 14:31)
 

у Вас с английским как?
DISTINCT LEFT(name,1) AS letter

as это как по русски

   

Сообщения:  [1-10]    [11-20]  [21-27] 

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

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