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

Форум PHP

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

 

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

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

тема: Как сделать так чтоб из базы выбиралось в цикл по 4 элемента в строчке
 
 автор: klavesin   (13.08.2009 в 04:43)   письмо автору
 
 

Добрый день!!
Помогите пожалуйста разобраться, я только изучаю язык PHP.
Как сделать так чтоб из базы выбиралось в цикл по 4 элемента в строчке,
поясню :
у меня в базе находиться название раздели а путь к фото, я бы хотел чтоб это все выводилось по 4 элемента в строке и потом переносилось на другую строку, а у меня почему то все в одной строке все 12 элементов

  Ответить  
 
 автор: Valick   (13.08.2009 в 09:55)   письмо автору
 
   для: klavesin   (13.08.2009 в 04:43)
 

не мешайте в кучу выборку из базы и вывод в браузер - это два различных "государства".
показывайте свой код

  Ответить  
 
 автор: klavesin   (13.08.2009 в 22:31)   письмо автору
 
   для: Valick   (13.08.2009 в 09:55)
 

<table width="1080" align="center" bgcolor="#FFFFFF">
<?php include ("include/header.php");?>
<tr>
<td>
<table width="1082" align="center">
<tr>
<?php include ("include/left.php");?>
<td valign="top" class="product_title" >
<?php
$result = mysql_query ("SELECT id,title,imag FROM Rasdeli");
$myrow = mysql_fetch_array ($result);


do
{
printf("<table align='left' c>
<tr>
<td class='rasdeli'><p>%s</p></td>
</tr>
<tr>
<td><p align='center'>%s</p>
</tr>
</td>
</table>", $myrow['imag'],$myrow['title'] );


}

while ($myrow =mysql_fetch_array ($result));

?>
</td>
</tr>
</table>
</td>
</tr>
<?php include("include/footer.php");?>
</table>


Это то что между тегами <body>

  Ответить  
 
 автор: neadekvat   (13.08.2009 в 23:48)   письмо автору
 
   для: klavesin   (13.08.2009 в 22:31)
 

> а у меня почему то все в одной строке все 12 элементов
А хто эта сдееелал?!
Удивительно, и правда, почему это все 12 элементов сразу.
А как, по вашему, код должен понять, что вам нужно? Телепатически? Уж простите, такого php пока не умеет.
Так и скажите, что вам просто нужно все написать с нуля.
А у вас бред какой-то.

  Ответить  
 
 автор: klavesin   (13.08.2009 в 23:53)   письмо автору
 
   для: neadekvat   (13.08.2009 в 23:48)
 

подскажите как нужно написать ??

  Ответить  
 
 автор: neadekvat   (13.08.2009 в 23:59)   письмо автору
 
   для: klavesin   (13.08.2009 в 23:53)
 

Если вы ответите на вопрос правильно, то я помогу вам.
Почему я должен помогать человеку, который, во-первых, не уважает русский язык, во-вторых, не хочет думать своей головой?
"во-первых" и "во-вторых" имеют равнозначный вес, но разделить пришлось, увы.

  Ответить  
 
 автор: klavesin   (14.08.2009 в 00:07)   письмо автору
 
   для: neadekvat   (13.08.2009 в 23:59)
 

я прошу помощи не от того что не хочу думать своей головой, а просто некому подсказать правильный путь,

  Ответить  
 
 автор: neadekvat   (14.08.2009 в 00:21)   письмо автору
 
   для: klavesin   (14.08.2009 в 00:07)
 

Нет, нет, вам лень, вы не хотите думать.
Одно то, что выбирая из базы сначала возвращаете ассоциативный массив, а потом через do...while делаете, говорит, что вы на коленке написали код и даже не пытались поискать что-то в интернете.
Я уже дал два направления на правильный путь.

  Ответить  
 
 автор: Valick   (14.08.2009 в 03:58)   письмо автору
 
   для: neadekvat   (14.08.2009 в 00:21)
 

"Как вы яхту назовёте так она и поплывёт" ?
как вы догадались что человеку лень? что человек не хочет думать? что, в конце-концов, код писался на коленке?
зачем искать в интернете если человек обратился за помощью сюда? там кроме порносайтов нет нифига ...
Я лично кроме видеокурса Евгения Попова ничего подозрительного не заметил...

  Ответить  
 
 автор: neadekvat   (14.08.2009 в 14:32)   письмо автору
 
   для: Valick   (14.08.2009 в 03:58)
 

Спросили бы вы это вчера - я бы смог ответить..

Но посмотрите на код - там, по-моему, ни капли логики и ни одного шага к тому, чтобы сделать то, что нужно.
Я не говорю, что там что-то некрасиво или можно сделать лучше...там просто совсем не так, как надо.
Читал я тут недавно статьи на php.su и очень мне выражение понравилось, звучало оно примерно так:
"Знаете, почему вы не видите на форуме вопросы от квалифицированных специалистов? Они просто умеют работать с документацией"
Вот вы лично видите в коде попытки сделать то, что нужно человеку? Я нет. Оттуда и такие выводы

  Ответить  
 
 автор: Valick   (14.08.2009 в 04:13)   письмо автору
 
   для: klavesin   (13.08.2009 в 22:31)
 

попробуйте вот так

<table width="1080" align="center" bgcolor="#FFFFFF">
<?php include ("include/header.php");?>
<tr>
<td>
<table width="1082" align="center">
<tr>
<?php include ("include/left.php");?>
<td valign="top" class="product_title" >
<?php
$result 
mysql_query ("SELECT id,title,imag FROM Rasdeli");
$i=0;
while (
$myrow mysql_fetch_array ($result)){
printf("<table align='left' c>
<tr>
<td class='rasdeli'><p>%s</p></td>
</tr>
<tr>
<td><p align='center'>%s</p>
</tr>
</td>
</table>"
$myrow['imag'],$myrow['title'] );
if (
$i++ == 4) {$i=0; echo "</td></tr><tr><td>";}

?> 
</td>
</tr>
</table>
</td>
</tr>
<?php include("include/footer.php");?>
</table>

  Ответить  
 
 автор: klavesin   (15.08.2009 в 00:56)   письмо автору
 
   для: Valick   (14.08.2009 в 04:13)
 

спасибо за понимание !!!
но так все равно выводит в одну строчку

  Ответить  
 
 автор: SETTER   (16.08.2009 в 23:59)   письмо автору
 
   для: klavesin   (15.08.2009 в 00:56)
 

Незнаю правильно ли я понял. Но из того что я понял, вывод пар imag - title, по четыре пары в одном ряду. Принцип вывода такой:

<?php
include "config.php";
$result mysql_query ("SELECT * FROM rasdeli ");


while(
$my mysql_fetch_array ($result))
{
    for(
$i=0$i<4$i++)
    {
       
$r .=  $my[imag]. " - " $my[title] . "&nbsp;&nbsp;";
    }
    
$r .= "<br>";
}

echo 
$r;
?> 

config.php - файл подключения к БД.

  Ответить  
 
 автор: ride   (17.08.2009 в 10:23)   письмо автору
 
   для: klavesin   (13.08.2009 в 04:43)
 

наверно вы хотите как-то так(не проверял):

<table>
<?php 
    $i
=0;
    while(
$res=mysql_fetch_assoc($query)){
          if(
$i%4==0){
               if(
$i>4) echo'</tr>';
               echo
'<tr>';
          }
          echo
'<td><img src="'.$res['image'].'"> '.$res['title'].'</td>';
          
$i++;
    }
    while(
$i%4!=0){
         echo
'<td>&nbsp;</td>';$i++;
   }
?>
</tr>
</table>

  Ответить  
 
 автор: Sergeich   (17.08.2009 в 16:23)   письмо автору
 
   для: klavesin   (13.08.2009 в 04:43)
 

<?php
//Допустим, Ваши данные, которые необходимо вывести хранятся в массиве $dr
//Тогда с помощью функции array_chunk(); мы считываем информацию в многомерный массив, где данные разбиты по четыре (второй параметр функции)
$all=array_chunk($dr4);
//Далее, выводим информацию построчно по 4 ячейки в виде таблицы с помощью двух циклов
echo "<table>";
//Здесь мы запускаем цикл по первому индексу, формируя, тем самым, строку
for ($i 0$i count($all); $i++){
echo 
"<tr>";
//Здесь встроенный цикл выводит Ваши данные в четыре ячейки в строке
foreach($all[$i] as $value){
echo 
"<td>".$value."</td>";
}
//Закрываем строку и переходим к следующей
echo "</tr>";
}
//Закрываем таблицу по выведении всех данных многомерного массива
echo "<table>";
?>


А еще внимательно читаем документацию и думаем.

  Ответить  
Rambler's Top100
вверх

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