Forum Webscript.Ru

Программирование => PHP => Тема начата: SkyNeT от 31 Октября 2004, 21:53:12

Название: Помогите плиз с циклами
Отправлено: SkyNeT от 31 Октября 2004, 21:53:12
Здравствуйте!!!

У меня такая проблема:

есть скрипт, который читает данные из MySQL\'a (т.е. новости), при добовлении новых запесей, они должны вставляться вверх, а они у меня наооборот самыее последние...

Скрипт...

mysql_connect("localhost", "baza", "") or die("Could not connect: " . mysql_error());
mysql_select_db("baza") or die("Could not DB: " . mysql_error());
$sql = "SELECT * FROM `table` WHERE kategoria=\'новости\' LIMIT 0, 200 ";
$result = mysql_query($sql);

$showperpage=0;
// сколько показывать на страницу
if (isset($HTTP_GET_VARS[\'show\']))
{
$showperpage=(int)$HTTP_POST_VARS[\'show\'];
}
if (isset($HTTP_POST_VARS[\'show\']))
{
$showperpage=(int)$HTTP_POST_VARS[\'show\'];
}

// сколько показывать на страницу по умолчанию
if (($showperpage<1)||($showperpage>200))
{
$showperpage=15;
}

// сколько записей получилось
$counted=mysql_num_rows($result);
// сколько будет страниц
$countedpages=ceil($counted/$showperpage);

// получить из УРЛ текущую страницу
$currentpage=0;
if (isset($HTTP_GET_VARS[\'page\']))
{
$currentpage=(int)$HTTP_GET_VARS[\'page\'];
}
if ($currentpage>$countedpages)
{
$currentpage=$countedpages;
}
if ($currentpage<1)
{
$currentpage=1;
}
// первая позиция
$start_pos=($currentpage-1)*$showperpage+1;
// последняя позиция
$end_pos=$start_pos+$showperpage-1;
if ($end_pos>$counted)
{
$end_pos=$counted;
}
if (!mysql_num_rows($result))
{
print "

По запросу ничего не найдено

";
}
else
{
$i = $start_pos;
// перейти на начальную позицию
mysql_data_seek($result, $i-1) or print "Could not seek to row ".($i-1);
// вывести найденные результаты до позиции $end_pos
while ($row=mysql_fetch_array($result))
//for($row=mysql_fetch_array($result))
{
if ($i>$end_pos)
{
break;
}
print "




$row[2]




$row[6]




Раздел: $row[1]


  Дата размещения: $row[4]
















";
$i++;
}
}
print "";
// вывести страницы для выбора
print "Странницы: ";
for ($i = 1; $i <= $countedpages; $i++)
{
   if ($currentpage!=$i)
   {
   print "
[ ".$i." ]";
   }
else
{
print "[ ".$i." ]";
}
}

print "";

Помогите плиз, а то честно запарился...

Заранее спасибо!!!
Название: Помогите плиз с циклами
Отправлено: SkyNeT от 31 Октября 2004, 21:57:03
Кстати, вот где это можно посмотреть

http://security.zlat.info/news.php
Название: Помогите плиз с циклами
Отправлено: Алексей от 31 Октября 2004, 22:45:55
возможно ошибусь, т.к. в весь код не вникал, но поробуй изменить 3 строку:


$sql = "SELECT * FROM `table` WHERE kategoria=\'новости\' ORDER BY [B]тут впиши имя столбца, в котором находятся уникальные идентификаторы новостей[/B] desc LIMIT 0, 200 ";
Название: Помогите плиз с циклами
Отправлено: Меняздесьдавнонет от 31 Октября 2004, 23:05:23
весь этот бред, который тут написан,  должен выполняться с помощью mysql
и сортировка, и выбор тех записей, которые надо показывать.

В данный момент база используется, как пошлый текстовый файл.
Название: Помогите плиз с циклами
Отправлено: SkyNeT от 01 Ноября 2004, 10:30:22
ну тогда если есть, скажите нормальный скрипт, чтоб читал из базы данные, выводил их на странницу и был постраничный вывод...

Плиз..
Название: Помогите плиз с циклами
Отправлено: SkyNeT от 01 Ноября 2004, 11:08:38
Всё!!! Aлексей спасибо тебе, всё получилось!!!
Название: Помогите плиз с циклами
Отправлено: Меняздесьдавнонет от 01 Ноября 2004, 11:47:56
Цитировать
SkyNeT:
скажите нормальный скрипт

Это единственный, как я понимаю, способ, который тебе доступен?
Чтобы тебе сказали нормальный скрипт?
Своего ума не хватает, а, главное, желания чему-то учиться?

Так и будешь сидать и долбать базу каменным топром?

Все-таки, прав был Ксандер.
форумами пользуются одни идоты, не способные ДАЖЕ нужный им готовый скрипт в яндексе найти...
Название: Помогите плиз с циклами
Отправлено: SkyNeT от 01 Ноября 2004, 15:37:40
Нет... я ведь написал скрипт, просто некоторые аспекты я не знаю, вот и спрашиваю Вас, а ты сразу засрал всё... вот я спросил готовый скрипт, чтобы потом его проанализировать и доделать свой...

Ведь я не создатель PHP, чтоб знать его полностью, я уверен, что и ты когда-то, может и сейчас пребегал к готовым скриптам, разве я не прав???
Название: Помогите плиз с циклами
Отправлено: Алексей от 01 Ноября 2004, 15:47:38
SkyNeT
а можно поинтересоваться, кем ты работаешь и этот (http://security.zlat.info/news.php) ли скрипт отлаживаешь... ??
Название: Помогите плиз с циклами
Отправлено: SkyNeT от 01 Ноября 2004, 16:00:17
честно я негде не работаю, а тока учусь в инстетуте....
а скрипт я отлаживал именно этот...
Название: Помогите плиз с циклами
Отправлено: SkyNeT от 01 Ноября 2004, 16:01:54
А чего???
Название: Помогите плиз с циклами
Отправлено: Green Kakadu от 01 Ноября 2004, 16:13:01
Цитировать
SkyNeT:
Ведь я не создатель PHP, чтоб знать его полностью, я уверен, что и ты когда-то, может и сейчас пребегал к готовым скриптам,

посылка неправильная -> к документации.
возможно, скрипт который ты будешь рассматривать как "пример" писал вовсе не создатель PHP, а какой-нибудь Вася Криворучкин
Название: Помогите плиз с циклами
Отправлено: SkyNeT от 01 Ноября 2004, 16:24:53
Точно, но ведь я как то должен учиться...
Название: Помогите плиз с циклами
Отправлено: Меняздесьдавнонет от 01 Ноября 2004, 16:28:53
так ты ж не хочешь учиться?
ты не спрашивашеь - как правильно.
не читаешь документацию.
ты просто выпрашиваешь готовый скрипт.

а смысл?
все равно ты просто его вставляешь в свой, не понимая, как он работает.

Ну, на тебе готовый:
PHP FAQ: Как разбить вывод из mysql постранично (http://phpfaq.ru/paginator)
Только я думаю, что оно тебе все равно не поможет.
Скрипт надо писать, понимая, что такое база данных. а у тебя с этим проблемы.
Название: Помогите плиз с циклами
Отправлено: Green Kakadu от 01 Ноября 2004, 16:30:04
Цитировать
SkyNeT:
Точно, но ведь я как то должен учиться...

можно книжку для разнообразия почитать.
Название: Помогите плиз с циклами
Отправлено: SkyNeT от 01 Ноября 2004, 21:34:06
нет, я с тобой полностью согласен, просто я наверное не так выразился и я понимаю, и призираю тех кто дерет чужие скрипты или не учится сам... теперь буду просто правельно выражаться, ОК!