LINUX.ORG.RU

Как открывать в окошке html-файлы из каталога?.. (один за другим)

 iframes,


0

1

Господа, я создал скриптом в каталоге штук 200 примерно файлов, но не знаю php, чтобы можно было открывать их на сайте — в iframe, один за другим (нажимая на стрелки вперед/назад). Это календарь такой, примитивный (но больше и не требуется).

Я понимаю, что задача тривиальная, но сам ее решить сейчас не могу (есть уважительная причина, не обманываю). Подскажите, пожалуйста, как будет выглядеть код? Файлы нужно открывать с самого_большого_номера.htm — и до 1.htm

Спасибо большое!


Ответ на: комментарий от Eddy_Em

Я знаю, но дьявол кроется в деталях) Надо ведь содержимое «ls -1tR» в массив сначала передать (а я в php 0)..

SmAdm
() автор топика

создал скриптом в каталоге штук 200 примерно файлов
Это календарь такой

Ты все делаешь неправильно.

mopsene ★★★
()
Ответ на: комментарий от VirRaa

Да, самый первый месяц (еще прошлый век) 1.htm — и по нарастающей... Отображать нужно в обратном порядке.

SmAdm
() автор топика
Ответ на: комментарий от SmAdm

И не нужно, разберись с гуглом. AJAX на jQuery гуглится секунд за 15, код на php - минут 10. Покажи какой-нибудь из этих файлов.

//А вообще можешь завтра ко мне обратиться в джабберах, помогу.

mopsene ★★★
()
Ответ на: комментарий от SmAdm

Ну тебе известен номер конечного файла? Известен. Вот и вычитай из его номера по единице.

Что именно тебе не понятно?

VirRaa ★★★
()
Ответ на: комментарий от VirRaa

Что именно тебе не понятно?

Мне непонятно, почему ты его не отговариваешь от этой затеи. HTML-код генерировать надо на лету в php, а не хранить в 200 файлах.

mopsene ★★★
()
Ответ на: комментарий от mopsene

Мне непонятно, почему ты его не отговариваешь от этой затеи.

Он же ясно дал понять, что ему плевать на то, как правильно. И попросил помочь ему сделать через жопу =)

VirRaa ★★★
()
Ответ на: комментарий от VirRaa

Мне не плевать, разумеется! Если бы знал эти технологии, то написал бы, без вопросов, сам. А знаю только bash, — поэтому и пытаюсь не забираться в дебри. Спасибо всем, в любом случае. Пойду спрашивать буржуев, они любят дедовские методы)

SmAdm
() автор топика
Ответ на: комментарий от SmAdm

Я же тебе говорю - покажи пример файла, если там ничего извращенного, то помогу, максимум 15 минут это все делать.

mopsene ★★★
()
Ответ на: комментарий от mopsene

К примеру, файл 214.htm, самый свежий,

Март 2012 Пн Вт Ср Чт Пт Сб Вс 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 29 30 31

-- в iframe отображается примерно так (но часть чисел с гиперссылками).

Внизу, соответственно, стрелки впёред-назад.

Если в каталоге есть файлы с меньшими номерами, чем текущий, ссылка «назад» срабатывает. Тот же принцип для стрелки «вперёд».

Нужен кусочек php-кода и javascript.

SmAdm
() автор топика
Ответ на: комментарий от SmAdm

Март 2012

Пн Вт Ср Чт Пт Сб Вс

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 29 30 31

SmAdm
() автор топика
Ответ на: комментарий от mopsene

Мне непонятно, почему ты его не отговариваешь от этой затеи. HTML-код генерировать надо на лету в php, а не хранить в 200 файлах.

Есть причина, почему я «упорствую в ереси». Напишите в pastor.cat@list.ru публично не хочу обсуждать)

SmAdm
() автор топика
Ответ на: комментарий от Eddy_Em

Мне не весь календарь нужен, а работа в диапазоне дат. Причем к части этих дат прицеплены гиперссылки. И стиль нужно свой задавать, а не «выбрать из тысячи готовых»..

SmAdm
() автор топика
Ответ на: комментарий от SmAdm

И в чем проблема? Такой календарик на JS можно за вечер написать. CSS'ом задать тему оформления.

Eddy_Em ☆☆☆☆☆
()
<iframe id="myiframe" src="200.html"></iframe>

<a href="#" onclick="document.getElementById('myiframe').src=document.getElementById('myiframe').src.replace(/\d+.html/, function(attr) { return attr.replace(/\d+/, function(val) { return (parseInt(val) == 1) ? 1 : parseInt(val)-1; }); });return false">backward</a>

<a href="#" onclick="document.getElementById('myiframe').src=document.getElementById('myiframe').src.replace(/\d+.html/, function(attr) { return attr.replace(/\d+/, function(val) { return (parseInt(val) == 200) ? 200 : parseInt(val)+1; }); });return false">forward</a>
boneshaker
()
Ответ на: комментарий от boneshaker

Спасибо огромное!!! Я за это время собрал из буржуйских примеров это, — у вас, конечно, намного элегантнее!

<iframe id=«pictures» src=«3.htm» style=«height:400px;width:800px»></iframe>

<br>

<script language=javascript>
function process(v){
var value = parseInt(document.getElementById('v').value);
value+=v;
if (value < 1) {
value=1;
}
if (value > 3) {
value=3;
}
valueh=value+".htm"
document.getElementById('v').value = valueh;
document.getElementById('pictures').src=valueh
}
</script>

<input type=button value='-' onclick='javascript:process(-1)'>
<input type=test size=20 id='v' name='v' value='3.htm'>
<input type=button value='+' onclick='javascript:process(1)'>

Ещё раз большое спасибо!

SmAdm
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.