Автор Тема: Перенос после вывода 5-ой картинки  (Прочитано 6304 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн -DieseLok-

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 178
  • +0/-0
  • 0
    • Просмотр профиля
    • http://kyivstar.biz
Драсте! Уже запарился поиск мучать...

Вообщет ситуация такая:


$query = "SELECT link FROM photo";
$result = mysql_query($query, $connection);
while ($rows = mysql_fetch_array($result))


{

}


Вообщем, получаеться что из базы выводиться ссылки на картинки.

Возможно ли как-то ограничить вывод ссылок в ряду? нутоесть на страницу я знаю как, лимит, а допустим у меня стоит лимит 10, тоесть выводить на страницу 10 ссылок/картинок, в ряд помещяеться 5, тоесть два ряда, как это зделать? ато у меня получеться выводяться все 10 картинок в один ряд и сайт становиться в два раза шире :(



Зарание спасибо!

Оффлайн for_i_0

  • $15 per hour
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 555
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.php.net/manual/en
Перенос после вывода 5-ой картинки
« Ответ #1 : 25 Ноября 2004, 09:08:46 »

function TblCreation($col$all$data)
{
 echo \
'<table align="center" width="500" border="1">\';
 $i = 0;
    if ( $all > $col ){
       for ( $tr=0; $tr<$all; $tr+=$col ) {
       echo "\\t\\n<tr>";
       for( $td=0; $td<$col; $td++ ) {
          if ( $tr + $td < $all ) {
          echo \'<td align="center" valign="top"><img src="\'.$data[$i].\'">
                </td>\';
 $i++;
          }
       }
                   echo "\\t\\n</tr>";
       }
    }else{
       echo "<tr>";
       for ( $td=0; $td<$all; $td++ ) {
       echo \'<td align="center" valign="top"><img src="\'.$data[$i].\'"></td>\';
 $i++;
                  }
       echo "</tr>";
           }
 echo "</table>";
}


# $col - количество колонок
# $all - количество записей
# $data - записи
« Последнее редактирование: 17 Января 2005, 10:04:51 от for_i_0 »
[off]Безработный[/off]

Оффлайн -DieseLok-

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 178
  • +0/-0
  • 0
    • Просмотр профиля
    • http://kyivstar.biz
Перенос после вывода 5-ой картинки
« Ответ #2 : 13 Января 2005, 19:04:43 »
Спаисбо код работает!

Только проблемка...

он выдаёт вместо картинки из базы...

по букве ссылки в каждой ячейке

тоесть допустим у меня в ряду 10 ячеек
и ссылка на картинку:

то скрипт выдаёт такое:

В ячейке №1: <
В ячейке №2: i
В ячейке №3: m
В ячейке №4: g
В ячейке №5:
В ячейке №6: s
В ячейке №7: r

и т.д.

помогите плз!

Зарание спасибо!

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Перенос после вывода 5-ой картинки
« Ответ #3 : 13 Января 2005, 19:08:49 »
Это не форум, это цирк...

Оффлайн -DieseLok-

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 178
  • +0/-0
  • 0
    • Просмотр профиля
    • http://kyivstar.biz
Перенос после вывода 5-ой картинки
« Ответ #4 : 13 Января 2005, 20:39:36 »
А что смешного? что я не так спросил?

Оффлайн for_i_0

  • $15 per hour
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 555
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.php.net/manual/en
Перенос после вывода 5-ой картинки
« Ответ #5 : 17 Января 2005, 09:14:22 »
-DieseLok-

Проблема не в скрипте. А  в твоем выводе данных из БД.
[off]Безработный[/off]

Оффлайн -DieseLok-

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 178
  • +0/-0
  • 0
    • Просмотр профиля
    • http://kyivstar.biz
Перенос после вывода 5-ой картинки
« Ответ #6 : 17 Января 2005, 09:17:24 »
Дело в том что для проверки я не делал вывод из базы данных, я просто ввёл определённую строку...

только единственное если это важно из приведенного выше примера я вырезал вот что:
function TblCreation($col, $all, $data)
{}

у меня просто не получалось применить функцияю :(

Оффлайн for_i_0

  • $15 per hour
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 555
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.php.net/manual/en
Перенос после вывода 5-ой картинки
« Ответ #7 : 17 Января 2005, 09:58:24 »
-DieseLok-

Я ввел в предыдущую функцию изменения для удобства.

1. Вызывай функцию так:

TblCreation($col, $all, $data);

2. $data - это не строка а массив.
попробуй так:
array("risunok_1.gif", "risunok_2.gif", risunok_n.gif);

3. $all - это количетва записей, тоесть  $all count($data); 

4. $col - количество колонок вводим вручную.
[off]Безработный[/off]

Оффлайн -DieseLok-

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 178
  • +0/-0
  • 0
    • Просмотр профиля
    • http://kyivstar.biz
Перенос после вывода 5-ой картинки
« Ответ #8 : 23 Января 2005, 22:43:29 »
Спасибо конечьно уже вроде опять наполу работает :) ну тоесть у меня из базы выводиться ссылка на картинку... и как мне теперь в массив ссылку впихнуть?

зарание спасибо...

Оффлайн for_i_0

  • $15 per hour
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 555
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.php.net/manual/en
Перенос после вывода 5-ой картинки
« Ответ #9 : 24 Января 2005, 10:29:08 »
-DieseLok-
Ни в какой массив тебе НЕ НАДО впихивать ссылку!
[OFF]Результат запроса в БД и есть твой массив.[/OFF]
[off]Безработный[/off]

Оффлайн -DieseLok-

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 178
  • +0/-0
  • 0
    • Просмотр профиля
    • http://kyivstar.biz
Перенос после вывода 5-ой картинки
« Ответ #10 : 28 Января 2005, 01:16:10 »
// по результату этого вывода выкидываеться 6 ссылок на рисунки

	
$query "SELECT * FROM lsongs WHERE si_id=\'4\'";
	
$result mysql_query($query$connection);
	
$posts=mysql_numrows($result);



$col="3";
$all="$posts";

	
$query "SELECT * FROM lsongs WHERE si_id=\'4\'";
	
$result mysql_query($query$connection);
	
while (
$rows mysql_fetch_array($result))
{
$data $rows[so_link];
}


TblCreation($col$all$data);


После вот такого вывода выводиться первая картинка, а после неё ничего не выводиться...

Помогите плз... что я, ломака, не так делаю?

Зарание спасибо!

Оффлайн Vranos

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 3
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Перенос после вывода 5-ой картинки
« Ответ #11 : 28 Января 2005, 23:23:37 »
Попробуй for() использовать!
ИМХО while() впадает в бесконечный цикл ибо проверки условия в твоем коде нет!

Это во первых....

Во-вторых:
Как ты собираешься в таблицу вводить вместо массива переменную???


Мой совет:
1. замени while на for
2. тело цикла немного расширь...сделай все не так изящно, но по рабочему (Генерируй таблицу обычным HTML примерно так же как делал в начале темы. Только с помощью for())!!!

Оффлайн -DieseLok-

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 178
  • +0/-0
  • 0
    • Просмотр профиля
    • http://kyivstar.biz
Перенос после вывода 5-ой картинки
« Ответ #12 : 28 Января 2005, 23:27:04 »
Вот короче:


echo "<table border=1><tr>";
$i=1;
        
$query "SELECT * FROM logo_songs WHERE si_id = \'10\'";
        
$result mysql_query($query$connection);
        while (
$line mysql_fetch_array($result))
{
$img=$line[\'so_link\'];
echo "<td><img src=\'$img\' border=\'0\'></td>";
if ($i==5)
{
echo "</tr><tr>";
$i=0;
}
$i++;
}
echo "</table>";


В пару строк готовый скрипт, мне помогли :) всем спасибо!

Оффлайн for_i_0

  • $15 per hour
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 555
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.php.net/manual/en
Перенос после вывода 5-ой картинки
« Ответ #13 : 31 Января 2005, 13:27:26 »
Цитировать
Vranos:
Попробуй for() использовать! ИМХО while() впадает в бесконечный цикл ибо проверки условия в твоем коде нет!


Бред какой то.
Вывод данных из БД в массив как раз так и производится в теле цикла while()  а не for() во избежании пересчета данных в массив. И условий в теле цикла в данном случае никаких не надо.

А по поводу вышеизложенного мною скрипта если есть какие то доводы. Рад буду услышать их.

-DieseLok-
А вам молодой человек перед тем как возврощатся к дискусии данной темы посоветую прочесть всю тему с начало до конца и не раз. Да бы избежать ошибок на подобе:
$all $post; Разве я такое писал ?
$all - intager. $post - у тебя массив. И ты после этого хочешь что бы скрипт работал ?

А по поводу возврощения к этой теме, я более чем уверен, что вернешся и не раз. Так как выше изложенный тобою скрипт никуда не годится, что его синтаксис, не говоря уже о логике его.
« Последнее редактирование: 31 Января 2005, 14:15:52 от for_i_0 »
[off]Безработный[/off]

Оффлайн -DieseLok-

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 178
  • +0/-0
  • 0
    • Просмотр профиля
    • http://kyivstar.biz
Перенос после вывода 5-ой картинки
« Ответ #14 : 31 Января 2005, 13:32:39 »
А чё в нем не так? просто ради интереса...
Впринцыпе те задачи которые я  ставил перед этим скриптом  он выполняет... но ради интереса что я теряю?

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28