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

Форум MySQL

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

 

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

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

тема: Извлечение из Mysql в строку, а не в столбец...
 
 автор: newcold   (11.06.2008 в 14:22)   письмо автору
 
 

Здравствуйте, подскажите как правильно оформить скрипт чтоб список из базы данных, отображался в строку, а не как обычно сверху вниз??? Всё перепробовал...

   
 
 автор: mechanic   (11.06.2008 в 14:49)   письмо автору
 
   для: newcold   (11.06.2008 в 14:22)
 

select group_concat(`myfield`) as row from `mytable`;

   
 
 автор: newcold   (11.06.2008 в 15:00)   письмо автору
 
   для: mechanic   (11.06.2008 в 14:49)
 

as row from `mytable` - это понял
select group_concat(`myfield`) - а это что значит?

   
 
 автор: mihdan   (11.06.2008 в 14:50)   письмо автору
 
   для: newcold   (11.06.2008 в 14:22)
 

Простите, не понял вас

   
 
 автор: newcold   (11.06.2008 в 14:53)   письмо автору
 
   для: mihdan   (11.06.2008 в 14:50)
 

Ну обычно данные из базы данных Mysql на странице отображаются стандартно друг над другом, а мне нужен список в строку...

   
 
 автор: mihdan   (11.06.2008 в 14:59)   письмо автору
 
   для: newcold   (11.06.2008 в 14:53)
 

На какой странице? Приведите код пожалуйста

   
 
 автор: newcold   (11.06.2008 в 15:02)   письмо автору
 
   для: mihdan   (11.06.2008 в 14:59)
 

$query = "SELECT * as row FROM sd
WHERE hide='show'
ORDER BY pos";
$ctg = mysql_query($query);
if (!$ctg) puterror("Ошибка");

вот код извлечения, отображается столбцом, а нужно в строку...

   
 
 автор: Trianon   (11.06.2008 в 15:17)   письмо автору
 
   для: newcold   (11.06.2008 в 15:02)
 

Этот код не отображает вообще ничего.

   
 
 автор: newcold   (11.06.2008 в 15:26)   письмо автору
 
   для: Trianon   (11.06.2008 в 15:17)
 

<?
  
require_once ("config.php");
  
$title="none";   
  
?>
  <?
  
if(!isset($_GET['id_catalog'])) $id_catalog 0;
  else 
$id_catalog $_GET['id_catalog'];
  
$query "SELECT * FROM sd 
            WHERE hide='show' 
            ORDER BY pos"
;
  
$ctg mysql_query($query);
  if (!
$ctgputerror("Ошибка при обращении");
  while(
$cat mysql_fetch_array($ctg))
  {
    if(
$id_catalog == $cat['id_catalog'])
    {
      echo 
"<h2 class=artblockpage>".$cat['name']."</h2>";
      include 
"2.php";
    }
  }
  
?>

вот полный код

   
 
 автор: Trianon   (11.06.2008 в 15:30)   письмо автору
 
   для: newcold   (11.06.2008 в 15:26)
 

<?
  
require_once ("config.php");
  
$title="none";   
  
?>
  <?
  
if(!isset($_GET['id_catalog'])) $id_catalog 0;
  else 
$id_catalog $_GET['id_catalog'];
  
$query "SELECT * FROM sd 
            WHERE hide='show' 
            ORDER BY pos"
;
  
$ctg mysql_query($query);
  if (!
$ctgputerror("Ошибка при обращении");
  echo 
"<h2 class=artblockpage>";
  while(
$cat mysql_fetch_array($ctg))
    if(
$id_catalog == $cat['id_catalog'])
      echo 
" ".$cat['name'];
 echo 
"</h2>";
 include 
"2.php";
  
?> 

   
 
 автор: newcold   (11.06.2008 в 15:38)   письмо автору
 
   для: Trianon   (11.06.2008 в 15:30)
 

Всё осталось стобиком, но теперь всё сразу отображается...

   
 
 автор: AcidTrash   (11.06.2008 в 15:43)   письмо автору
 
   для: newcold   (11.06.2008 в 15:38)
 

Не может быть.
Результат этого кода
echo "<h2 class=artblockpage>";
  while($cat = mysql_fetch_array($ctg)){
    if($id_catalog == $cat['id_catalog'])
      echo " ".$cat['name'];
      }
 echo "</h2>";
аналогичен записи
<h2 class=artblockpage>Товар1 Товар2 ит.д</h2>

   
 
 автор: mihdan   (11.06.2008 в 15:22)   письмо автору
 
   для: newcold   (11.06.2008 в 15:02)
 

Приведите код для отображения, который нужно исправить - это только запрос к базе на выборку!

   
 
 автор: newcold   (11.06.2008 в 15:42)   письмо автору
 
   для: mihdan   (11.06.2008 в 15:22)
 

Я наверное неправильно объяснил =(
Допустим есть таблица в БД, в таблице список цифр 1-9
стандартно они извлекаются так:
1
2
3
4
5
6
7
8
9
а нужно:
1 2 3 4 5 6 7 8 9

Хотя бы на этом примере можете подсказать...??? =)

   
 
 автор: mihdan   (11.06.2008 в 15:45)   письмо автору
 
   для: newcold   (11.06.2008 в 15:42)
 

Trianon привел вам код где все в строку:



<?
  
require_once ("config.php");
  
$title="none";     
  if(!isset(
$_GET['id_catalog'])) $id_catalog 0;
  else 
$id_catalog $_GET['id_catalog'];
  
$query "SELECT * FROM sd 
            WHERE hide='show' 
            ORDER BY pos"
;
  
$ctg mysql_query($query);
  if (!
$ctgputerror("Ошибка при обращении");
  echo 
"<h2 class=artblockpage>";
  while(
$cat mysql_fetch_array($ctg))
    if(
$id_catalog == $cat['id_catalog'])
      echo 
" ".$cat['name'];
 echo 
"</h2>";
 include 
"2.php";
  
?>  

   
 
 автор: newcold   (11.06.2008 в 15:47)   письмо автору
 
   для: mihdan   (11.06.2008 в 15:45)
 

Значит я накосячил, спасибо буду разбираться...

   
 
 автор: newcold   (11.06.2008 в 17:01)   письмо автору
 
   для: newcold   (11.06.2008 в 15:47)
 

Не, ребят - не получается... Может на примере попроще попробуем???

   
 
 автор: Trianon   (11.06.2008 в 17:06)   письмо автору
 
   для: newcold   (11.06.2008 в 17:01)
 

Давайте пример проще.

   
 
 автор: newcold   (11.06.2008 в 17:08)   письмо автору
 
   для: Trianon   (11.06.2008 в 17:06)
 

Щас я как раз его ищу...

   
 
 автор: newcold   (11.06.2008 в 17:54)   письмо автору
 
   для: newcold   (11.06.2008 в 17:08)
 

Извиняюсь что так долго...
<?
  $query 
"SELECT * FROM test 
            WHERE id_catalog="
.$cat['id_catalog']." AND hide='show'
            ORDER BY pos"
;
  
$prt mysql_query($query);
  if(
$prt)
  {
    if (
mysql_num_rows($prt)>0)
    {
      while(
$par mysql_fetch_array($prt))
      {
        echo 
"<table cellpadding='5' cellspacing='5'> ";
       
        if(!empty(
$par['name'])) echo "<td><b>".$par['name']."</b></td></tr>";
        echo 
"</table>";
      }
    } else {
      echo 
"Данные отсутствуют!";          
    }
  }
?>

   
 
 автор: sim5   (11.06.2008 в 18:00)   письмо автору
 
   для: newcold   (11.06.2008 в 17:54)
 

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

   
 
 автор: Trianon   (11.06.2008 в 18:04)   письмо автору
 
   для: sim5   (11.06.2008 в 18:00)
 

Нечего выносить - там <tr> нету. :)

   
 
 автор: sim5   (11.06.2008 в 18:22)   письмо автору
 
   для: Trianon   (11.06.2008 в 18:04)
 

Видел, я думал, что автор поймет. ;-)

   
 
 автор: Trianon   (11.06.2008 в 18:02)   письмо автору
 
   для: newcold   (11.06.2008 в 17:54)
 

<?
  $query 
"SELECT * FROM test 
            WHERE id_catalog="
.$cat['id_catalog']." AND hide='show'
            ORDER BY pos"
;
  
$prt mysql_query($query);
  if(
$prt)
  {
    if (
mysql_num_rows($prt)>0)
    {
      echo 
"<table cellpadding='5' cellspacing='5'><tr>";
      while(
$par mysql_fetch_array($prt))
          if(!empty(
$par['name'])) 
              echo 
"<td><b>".$par['name']."</b></td>";
      echo 
"</tr></table>";
    } else {
      echo 
"Данные отсутствуют!";          
    }
  }
?> 

   
 
 автор: newcold   (11.06.2008 в 18:06)   письмо автору
 
   для: Trianon   (11.06.2008 в 18:02)
 

Всё здорово... Огромное спасибо! =) Что бы я без вас делал!!!

   
Rambler's Top100
вверх

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