Forum Webscript.Ru

Программирование => PHP => Тема начата: Need от 10 Июля 2004, 16:04:10

Название: все объявления хранятся в файле,. Как разбить на страницы выведенный текст?
Отправлено: Need от 10 Июля 2004, 16:04:10
Ну люди добрые помогите…
Смотрите… все объявления хранятся в ОДНОМ файле, выводятся с помощью

$openfile=@file("may.php");
$strings=count($openfile);
$u = 0;
for($i = $strings; $i >= $u;$i--)
{
$detail = explode(";", $openfile[$i]);
if($detail[1]  == \'audiovideoaparatura\')
{
  echo $openfile[$i];
}
}
?>

Только вывести те объявления у которых $detail[2]==VIDEO
А как теперь выведенные строки разбить по страницам?????
Название: все объявления хранятся в файле,. Как разбить на страницы выведенный текст?
Отправлено: Меняздесьдавнонет от 10 Июля 2004, 17:51:21
УЖЕ выведенные никуда разбить нельзя!
каждая страница в постраничном выводе - это ОТДЕЛЬНЫЙ выхов скрипта

для начала надо не выводить сообщение сразу, а записать его в массив.
вместо
echo $openfile[$i];
написать
$show=$openfile[$i];

И уже массив $show выврдить постранично.
сам постраничный вывод делается легко. в скрипт передается номер записи, с какой выводить, она подставляется в первый оператор for, во втором к нему прибавляется количество записей на страницу - и вот нам выводится определенная страница.

Ну, и ниже надо вывести ссылки. с этим, я надеюсь, справишься?
Название: все объявления хранятся в файле,. Как разбить на страницы выведенный текст?
Отправлено: Need от 11 Июля 2004, 15:32:39
RomikChef
Супер.
Я делаю: вместо echo $openfile[$i];
$show[]=$openfile[$i];
Потом делаю новый масив:

$openfile=@file("may.php");
$strings=count($openfile);
$u = 0;
for($x = count($show); $x >= $u;$x--)
{
$detail = explode(";", $openfile[$x]);
echo $show[$x];
}
?>  
А потом деление по страницам... Все отлично, а как $show присвоить истинный номер строки?
Название: все объявления хранятся в файле,. Как разбить на страницы выведенный текст?
Отправлено: Need от 11 Июля 2004, 15:34:14
немного напутал в скрипте,... много лишнего... но суть понятна...:)
Название: все объявления хранятся в файле,. Как разбить на страницы выведенный текст?
Отправлено: Меняздесьдавнонет от 11 Июля 2004, 16:39:39
Цитировать
Need:
 а как $show присвоить истинный номер строки?

а зачем?
Цитировать
Need:
немного напутал в скрипте,...

"немного" - это очень мягко сказано
Название: все объявления хранятся в файле,. Как разбить на страницы выведенный текст?
Отправлено: Need от 11 Июля 2004, 17:06:25
RomikChef
Цитировать
"немного" - это очень мягко сказано

согласен
Цитировать
а зачем?

print "
$lais $aste$n $p
";}


открывается в новом окне и в файле \'s/opening.php Скрипт: если $id==$i (тоесть строке) то выводит.....сообщение содержания равной этой строчке...
Пример можно посмотреть на сайте : http://www.skelbimai.lt
Название: все объявления хранятся в файле,. Как разбить на страницы выведенный текст?
Отправлено: Меняздесьдавнонет от 11 Июля 2004, 17:56:36
если присваивать "истинный" номер, то потом будут проблемы с постраничным выводом.
лучше тогда уж добавлять этот номер к строке, обычным порядком.

выводить большие куски яваскрипта принтом - уродство.
Название: все объявления хранятся в файле,. Как разбить на страницы выведенный текст?
Отправлено: Need от 12 Июля 2004, 13:17:58
RomikChef
спасибо за помощь... Очень помог...
А как тогда лучше выводить?
И почему уродство?
Это же можно толкова сделать?
И еще.. у меня все удаляются строки тоже используется номер строки, fputs($f,$a[$i]);

$a=file( "papka/fail.php" );
$row = explode(";", $a[$i]);

$row[5] //присваивается число не равная всем другим...
Как можно переиграть и удалять строку где $row[5] равна числу посланному из формы ? В общем как удалить строку если знаем
$row[5] :)
Название: все объявления хранятся в файле,. Как разбить на страницы выведенный текст?
Отправлено: Меняздесьдавнонет от 12 Июля 2004, 13:47:51
Цитировать
Need:
А как тогда лучше выводить?
И почему уродство?
Это же можно толкова сделать?

пхп, вообще-то.. прозрачно встраивается в хтмл (то  есть - и яваскрипт тоже)
поэтому проще и правильнее, чтобы не путаться в кавычках, надо просто закрыть тег пхп, написать нужный яваскрипт, а затем открыть тег пхп и продолжить программу.
если где-то в яваскрипте нужно вывести переменную пхп - то точно так же - открыл тег пхп, вывел, закрыл.
Цитировать
Need:
И еще.. у меня все удаляются строки тоже используется номер строки

не понял.
какая связь между номером строки и explode?
Название: все объявления хранятся в файле,. Как разбить на страницы выведенный текст?
Отправлено: Меняздесьдавнонет от 12 Июля 2004, 13:50:42
?>


...цикл, как я понимаю... {
?>
 
   
 




\')\\">


   
Название: все объявления хранятся в файле,. Как разбить на страницы выведенный текст?
Отправлено: Need от 12 Июля 2004, 17:32:56
RomikChef
Неее... у меня есть форма, в ней указывается номер строки $i ..при нажатии на кнопку удолить форма посылается с номером..
fputs($f,$a[$i]);
и тут он удаляет эту строку с этим номером...
А так как строки у нас уже с дригим порядкам в $row[5] я записываю все эти строки письменно, и вместо строки посылается эта $row[5]...
Вопрос как переиграть чтобы удолить эти строку у которой $row[5]==$i...???
Что-то вроде этого... ;)
Название: все объявления хранятся в файле,. Как разбить на страницы выведенный текст?
Отправлено: Меняздесьдавнонет от 12 Июля 2004, 18:47:52
Цитировать
Need:
fputs($f,$a[$i]);

ты все время приводишь здесь этот код в связи с удалением.
не пояснишь ли ты, как они связаны?

Цитировать
Need:
Вопрос как переиграть чтобы удолить эти строку у которой $row[5]==$i...???

БЕРЕШЬ И УДАЛЯЕШЬ строку с номером, который передал из формы!!!
Это же номер строки в файле и есть! при чем здесь какой-то $i???
Тупить-то уже заканчивай.
Надоедает, как бы.