Malko kofti vapros...
23 отговора
15 прегледа
Malko kofti vapros...
Значи става въпрос за следното:
Имам index.htm, който е с рамки. Как да направя линк от външна страница, при който да се зарежда index-a, но в рамка "xxx" вместо дефинираната в index страница xxx.htm да се зарежда yyy.htm?
Оф, хич не знам възможно ли е, но се надявам някой дето разбира повече от мен да знае!!!
10x :)
j1.dir.bg - Вашият портал за звукозапис и музика!
Имам index.htm, който е с рамки. Как да направя линк от външна страница, при който да се зарежда index-a, но в рамка "xxx" вместо дефинираната в index страница xxx.htm да се зарежда yyy.htm?
Оф, хич не знам възможно ли е, но се надявам някой дето разбира повече от мен да знае!!!
10x :)
j1.dir.bg - Вашият портал за звукозапис и музика!
Re: Malko kofti vapros...
meznam be nali be6e pro4el vsi4ki HTML referance-i
ami vij ne razbiram mnogo ama sporedd men nai-hubavo si napravi edin drug file index1.htm i si napravi link kym nego ot vyn6nata stranica
kato index1.htm ti e s famoznata stranica yyy.htm
achko
ami vij ne razbiram mnogo ama sporedd men nai-hubavo si napravi edin drug file index1.htm i si napravi link kym nego ot vyn6nata stranica
kato index1.htm ti e s famoznata stranica yyy.htm
achko
Re: Ami ako imam 10 kategorii...
...koito da iskam da vikam s van6ni linkove - 10 index-a li predlaga6 da sloza?
Tarsq prinzipno re6enie v koda, ako ima takova.
Osven tova kato sam pro4el vaprosnite ne6ta ne zna4i 4e sam gi nazubril, a i te ne sa dokrai iz4erpatelni, a prosto obqsneniq na ezika HTML i tagovete, sekziite i t.n. v nego...
Vse pak mersi za mnenieto :)
j1.dir.bg - Вашият портал за звукозапис и музика!
Tarsq prinzipno re6enie v koda, ako ima takova.
Osven tova kato sam pro4el vaprosnite ne6ta ne zna4i 4e sam gi nazubril, a i te ne sa dokrai iz4erpatelni, a prosto obqsneniq na ezika HTML i tagovete, sekziite i t.n. v nego...
Vse pak mersi za mnenieto :)
j1.dir.bg - Вашият портал за звукозапис и музика!
Re: Ami ako imam 10 kategorii...
ako shte i 100 da sa kategoriite, 100 index-a triabwa da naprawish. Syshtoto neshto mi triabwashe i na men i taka i ne razbrah kak da stane. Ako niakoj dade razumno reshenie, evala mu kazwam. Do togawa - 100x100 
Je rиgne! Ich ordne an! Regolo!Boooo
Je rиgne! Ich ordne an! Regolo!Boooo
Евала на програмистите бих казал аз...
Защото може да се направи със CGI скрипт, който буквално да генерира новите страници или в случая определените html-та, които трябва да се видят, но по въпроса към брат ми- той е този, който отбира добре от CGI, аз само мога да Ви кажа, че е възможно!
Е ще изчакаме да видим, какво ще кажат другите спецове:))))
Имало едно време динозаври! Живяли, па умряли! Защо?- защото не са си правили crash-tests
Е ще изчакаме да видим, какво ще кажат другите спецове:))))
Имало едно време динозаври! Живяли, па умряли! Защо?- защото не са си правили crash-tests
Я поуточни това-онова. Току-виж
точно аз може да се сетя.
Та под "линк от външна страница" какво точно имаш предвид:
Буквално прочетено - в някаква си страница има линк към index.htm и в определена зависимист от тази външна страница да зареждаш различен .htm файл в рамка ххх.
Ако е така никаф проблем не е да се направи със CGI. Само че тогава ще трябва файла ти да не е .htm, а какъвто е указан да се обработва от съответния CGI parser. Или пък той да ти обработва също и всички .htm файлове, но това е кофти решение.
Не знам дали би могло да стане с JavaScript - не съм навътре с него. Ако има начин в index.htm с JavaScript да се разбере подробност за това откъде е дошла заявката за index.htm-то ти - също може да стане лесно.
Та под "линк от външна страница" какво точно имаш предвид:
Буквално прочетено - в някаква си страница има линк към index.htm и в определена зависимист от тази външна страница да зареждаш различен .htm файл в рамка ххх.
Ако е така никаф проблем не е да се направи със CGI. Само че тогава ще трябва файла ти да не е .htm, а какъвто е указан да се обработва от съответния CGI parser. Или пък той да ти обработва също и всички .htm файлове, но това е кофти решение.
Не знам дали би могло да стане с JavaScript - не съм навътре с него. Ако има начин в index.htm с JavaScript да се разбере подробност за това откъде е дошла заявката за index.htm-то ти - също може да стане лесно.
Добавка, че не ща да редактирам
ако ще го правиш със някакъв вид CGI ще трябва да си хостнеш въпросния index.XXXXX на уеб сървър с такова ЦГИ.
пак Добавка, че не ща да редактирам
при всички възможни начини ще трябва по някакъв начин (с таблица или функция) да намираш съответствие между откъдето_е_дошла_заявката и кой_файл_да_заредиш.
Re: пак Добавка, че не ща да редактирам
С JS и JAVA определено няма да стане, гарантирам ти!!! Със CGI да, но имаш ли идея как точно?!
Имало едно време динозаври! Живяли, па умряли! Защо?- защото не са си правили crash-tests
Имало едно време динозаври! Живяли, па умряли! Защо?- защото не са си правили crash-tests
Eто така:
[линк], index.php e.
Дано да няма проблем точно сега, че все пак е free услугата за хостване там.
Дано да няма проблем точно сега, че все пак е free услугата за хостване там.
Re: Probvai tova:
ne vijdam prichina da ne stava i s java script!
dokolkoto razbrah, iskash ot razlichi linkove da se zarejda indexa ti s razlichni framove.
da kajem che edinia frame e "glaven", a drugia - "navigacia", togava razlichnite linkove kam tvoia index biha bili - <A HREF="index.htm?1">link1</A>, <A HREF="index.htm?2">link2</A> i taka natatak... kato pri link 1 v "glaven" se zarejda edna stranica, a pri link2 -druga.
za da stane tova, v index.htm triabva da napishesh script, koito bi mogal da izglejda taka:
1. pravish masiv za razlichnite stranici, koito triabva da se zarejdat vav frame "glaven":
<!-- okazvash koi i kade sa stranicite koito shte se zarejdat spored razlichnite vrazki-->
stranicaKoia = new Array()
stranicaKoia[0]="";
stranicaKoia[1]="p1.html";
stranicaKoia[2]="p2.html";
stranicaKoia[3]="p3.html";
2.
<!-- tova e osnovnata ideia na scripta, koito triabva da napishesh - izpolzvaneto na location.search-->
var stranicaId = document.location.search.substr(1);
3. pravish funkcia, koaito da izvikva stranicata, spored tova, otkade e vrazkata
function update ()
{
if (stranicaId != "") {parent.glaven.location = stranicaKoia[stranicaId] }
a ako ne e vanshna da zarejda default (toest da se zarejda originalnia index.htm)
else {parent.glaven.location = "default.html"}
}
4. sazdavash dinamichno sadarjanieto na index.htm - naprimer:
document.writeln('<frameset cols="100,*" onLoad="update();">')
document.writeln('<frame name="navigacia" src="tova si e vinagi.html" >')
document.writeln('<frame name="glaven" src=" '+stranicaKoia[stranicaId]+' " ></frameset><noframes></noframes>')
vsichko tova go slagash v heada na indexa i si gotov:
<script LANGUAGE="JavaScript">
stranicaKoia = new Array()
stranicaKoia[0]="";
stranicaKoia[1]="page1.html";
stranicaKoia[2]="page2.html";
stranicaKoia[3]="page3.html";
var stranicaId = document.location.search.substr(1);
function update ()
{
if (stranicaId != "") {parent.glaven.location = stranicaKoia[stranicaId] }
else {parent.glaven.location = "default.html"}
}
document.writeln('<frameset cols="100,*" onLoad="update();">')
document.writeln('<frame name="navigacia" src="tova si e vinagi.html" >')
document.writeln('<frame name="glaven" src=" '+stranicaKoia[stranicaId]+' " ></frameset><noframes></noframes>')
</script>
NB! tova e adski grub script, no daje i v takav vid bi triabvalo da raboti. poigraj si s nego - niakoi neshta mogat da se optimizirat i mahnat. Uspeh.
p.s ne shitam che vaprosa ti e "kofti" - po-skoro e dosta interesen - na fona na mnogoto gluposti, koito naposledak se pishat v toia forum
dokolkoto razbrah, iskash ot razlichi linkove da se zarejda indexa ti s razlichni framove.
da kajem che edinia frame e "glaven", a drugia - "navigacia", togava razlichnite linkove kam tvoia index biha bili - <A HREF="index.htm?1">link1</A>, <A HREF="index.htm?2">link2</A> i taka natatak... kato pri link 1 v "glaven" se zarejda edna stranica, a pri link2 -druga.
za da stane tova, v index.htm triabva da napishesh script, koito bi mogal da izglejda taka:
1. pravish masiv za razlichnite stranici, koito triabva da se zarejdat vav frame "glaven":
<!-- okazvash koi i kade sa stranicite koito shte se zarejdat spored razlichnite vrazki-->
stranicaKoia = new Array()
stranicaKoia[0]="";
stranicaKoia[1]="p1.html";
stranicaKoia[2]="p2.html";
stranicaKoia[3]="p3.html";
2.
<!-- tova e osnovnata ideia na scripta, koito triabva da napishesh - izpolzvaneto na location.search-->
var stranicaId = document.location.search.substr(1);
3. pravish funkcia, koaito da izvikva stranicata, spored tova, otkade e vrazkata
function update ()
{
if (stranicaId != "") {parent.glaven.location = stranicaKoia[stranicaId] }
a ako ne e vanshna da zarejda default (toest da se zarejda originalnia index.htm)
else {parent.glaven.location = "default.html"}
}
4. sazdavash dinamichno sadarjanieto na index.htm - naprimer:
document.writeln('<frameset cols="100,*" onLoad="update();">')
document.writeln('<frame name="navigacia" src="tova si e vinagi.html" >')
document.writeln('<frame name="glaven" src=" '+stranicaKoia[stranicaId]+' " ></frameset><noframes></noframes>')
vsichko tova go slagash v heada na indexa i si gotov:
<script LANGUAGE="JavaScript">
stranicaKoia = new Array()
stranicaKoia[0]="";
stranicaKoia[1]="page1.html";
stranicaKoia[2]="page2.html";
stranicaKoia[3]="page3.html";
var stranicaId = document.location.search.substr(1);
function update ()
{
if (stranicaId != "") {parent.glaven.location = stranicaKoia[stranicaId] }
else {parent.glaven.location = "default.html"}
}
document.writeln('<frameset cols="100,*" onLoad="update();">')
document.writeln('<frame name="navigacia" src="tova si e vinagi.html" >')
document.writeln('<frame name="glaven" src=" '+stranicaKoia[stranicaId]+' " ></frameset><noframes></noframes>')
</script>
NB! tova e adski grub script, no daje i v takav vid bi triabvalo da raboti. poigraj si s nego - niakoi neshta mogat da se optimizirat i mahnat. Uspeh.
p.s ne shitam che vaprosa ti e "kofti" - po-skoro e dosta interesen - na fona na mnogoto gluposti, koito naposledak se pishat v toia forum
Предполагам защото
"интересен" е синоним на "кофти" :)
Доколкото аз разбрах въпроса, обръщението към страницата му става от някаква_си_дееба_и_страница, която може дори да не е негова. И това зависи какъв файл ще се пръкне във фрейма. А май няма начин с Java[Script] да се получи достъп до това инфо.
Доколкото аз разбрах въпроса, обръщението към страницата му става от някаква_си_дееба_и_страница, която може дори да не е негова. И това зависи какъв файл ще се пръкне във фрейма. А май няма начин с Java[Script] да се получи достъп до това инфо.
Re: Предполагам защото
Напротив - има начин отново само с JavaScript.
Значи предполага се, че някой стартира направо page2.html, а тя трябва да задейства идеята на Bravo (м/у другото точно това е начина на направиш динамично изграждаща се индексова страница - да извадиш от адресбара нещо, което ти трябва и да го набуташ с document.write. Със средствата на JS разбира се - с PHP или CGI е безумно лесно :)))
В началото на page2.html се добавя малко код:
if (document.all || document.layers){
sNewLoc="index.htm?2";
if (parent.location.href == location.href)
{
agent=navigator.userAgent;
if ((agent.indexOf("MSIE 3.0;") != -1) || (agent.indexOf("MSIE 3.01;") !=
-1) && (agent.indexOf("Mac") == -1))
{
brow = location.href;
window.explorer.navigate((brow.substring(0,
brow.lastIndexOf("/") + 1) + sNewLoc),2);
}
else //ie3.02+, Netscape (всички версии)
{
parent.location.replace(sNewLoc);
}
}
}
И вече няма значение каква ще е заявката
- index.htm?2 или page2.html ...
Е - вярно е, че този скрипт трябва да го има във всички страници, които задължително трябва да се отварят в рамка (с промяна само на един знак - този в sNewLoc), но две добри има само в бриджа :)))
А въпроса си беше направо супер от всякъде :)
Значи предполага се, че някой стартира направо page2.html, а тя трябва да задейства идеята на Bravo (м/у другото точно това е начина на направиш динамично изграждаща се индексова страница - да извадиш от адресбара нещо, което ти трябва и да го набуташ с document.write. Със средствата на JS разбира се - с PHP или CGI е безумно лесно :)))
В началото на page2.html се добавя малко код:
if (document.all || document.layers){
sNewLoc="index.htm?2";
if (parent.location.href == location.href)
{
agent=navigator.userAgent;
if ((agent.indexOf("MSIE 3.0;") != -1) || (agent.indexOf("MSIE 3.01;") !=
-1) && (agent.indexOf("Mac") == -1))
{
brow = location.href;
window.explorer.navigate((brow.substring(0,
brow.lastIndexOf("/") + 1) + sNewLoc),2);
}
else //ie3.02+, Netscape (всички версии)
{
parent.location.replace(sNewLoc);
}
}
}
И вече няма значение каква ще е заявката
- index.htm?2 или page2.html ...
Е - вярно е, че този скрипт трябва да го има във всички страници, които задължително трябва да се отварят в рамка (с промяна само на един знак - този в sNewLoc), но две добри има само в бриджа :)))
А въпроса си беше направо супер от всякъде :)
Ама че съм!
забравих да сложа линк към сорсовете:
[линк]
[линк]
И май пак не схващам идеята: ако външната страница няма нищо общо със сайта на Kalin_M, а има само най-прост линк, без нищо друго - как тогава с JavaScript ще получиш информация:
1. Коя е тази страница (извикващата)?
2. IP адресите й?
Ако е индексирана "локално", т.е. с кликвания от друг фрейм на същата страница - ясно.
[линк]
[линк]
И май пак не схващам идеята: ако външната страница няма нищо общо със сайта на Kalin_M, а има само най-прост линк, без нищо друго - как тогава с JavaScript ще получиш информация:
1. Коя е тази страница (извикващата)?
2. IP адресите й?
Ако е индексирана "локално", т.е. с кликвания от друг фрейм на същата страница - ясно.
10x no ne savsem...
Благодаря на всички и специално на Bravo и LeoS за мненията и съветите!
Не съм имал време да пробвам скрипта, но вярвам, че ще тръгне. Проблема идва от това, че не дообясних докрай за какво става въпрос, а именно (ползвам наименованията на Bravo) - поради необходимост на дизайна самият фрейм "glaven" зарежда страница с фреймове и в нейният фрейм "main" трябва да се зареждат p1.htm, p2.htm, p3.htm,...
Ето ви сега добър въпрос - може ли това да се направи с javascript и ако може - как?
Благодаря ако все пак намерите време и желание да драснете някакво решение!
Все пак е хубаво във форум Web Дизайн и HTML понякога да си пешем за Web Дизайн и HTML...
:)
10x 4 all
j1.dir.bg - Вашият портал за звукозапис и музика!
Не съм имал време да пробвам скрипта, но вярвам, че ще тръгне. Проблема идва от това, че не дообясних докрай за какво става въпрос, а именно (ползвам наименованията на Bravo) - поради необходимост на дизайна самият фрейм "glaven" зарежда страница с фреймове и в нейният фрейм "main" трябва да се зареждат p1.htm, p2.htm, p3.htm,...
Ето ви сега добър въпрос - може ли това да се направи с javascript и ако може - как?
Благодаря ако все пак намерите време и желание да драснете някакво решение!
Все пак е хубаво във форум Web Дизайн и HTML понякога да си пешем за Web Дизайн и HTML...
:)
10x 4 all
j1.dir.bg - Вашият портал за звукозапис и музика!
Re: 10x no ne savsem...
В началото въобще не можех да рабера какво точно искаш, но поседното уточнение което даде, а то е :
Ако е точно това, защо не си направиш фреймове и в "main" , където да си викаш p1.htm, p2.htm, p3.htm.
I wore the clothes you wanted
I took your name
If there is some confusion, who's to blame?
В отговор на:"glaven" зарежда страница с фреймове и в нейният фрейм "main" трябва да се зареждат p1.htm, p2.htm, p3.htm,...
Ако е точно това, защо не си направиш фреймове и в "main" , където да си викаш p1.htm, p2.htm, p3.htm.
I wore the clothes you wanted
I took your name
If there is some confusion, who's to blame?
Re: Ама че съм!
Значи е необходимо да си опресним първоначалния въпрос:
"Как да направя линк от външна страница"
т.е. той ще си го зададе и не го интересува кой е отсреща. Дали е мъж или жена и ако е жена, дали са й прави краката или е преплувала Ламанша на бъчва :)))
Така че заявките index.htm?X и pageX.html (със скриптовете в тях) може да се пуснат от където душата поиска, а не само от активната страница.
А за IP адреса (и не само) си има функции в JS.
подсказвам:
REMOTE_HOST, HTTP_USER_AGENT, REMOTE_ADDR, REMOTE_USER има и още ...
Така че никакъв проблем да прихванеш и IP адрес - ако ти потрябва де !-)
-----
В твоя сорс на РНР, ако използваш оператора urlencode($neshto_si); ще си спестиш сумати сметки :))
А от самите сметки аз пък нищо не разбрах - как ще му кажеш на файла (и то на точно определен файл) да скочи в предварително зададеното поле "main" ?
Това дето си го извел на финала определено няма да работи ...
"Как да направя линк от външна страница"
т.е. той ще си го зададе и не го интересува кой е отсреща. Дали е мъж или жена и ако е жена, дали са й прави краката или е преплувала Ламанша на бъчва :)))
Така че заявките index.htm?X и pageX.html (със скриптовете в тях) може да се пуснат от където душата поиска, а не само от активната страница.
А за IP адреса (и не само) си има функции в JS.
подсказвам:
REMOTE_HOST, HTTP_USER_AGENT, REMOTE_ADDR, REMOTE_USER има и още ...
Така че никакъв проблем да прихванеш и IP адрес - ако ти потрябва де !-)
-----
В твоя сорс на РНР, ако използваш оператора urlencode($neshto_si); ще си спестиш сумати сметки :))
А от самите сметки аз пък нищо не разбрах - как ще му кажеш на файла (и то на точно определен файл) да скочи в предварително зададеното поле "main" ?
Това дето си го извел на финала определено няма да работи ...
Re: 10x no ne savsem...
Моят отговор отново е - може.
Само че трябва да подходиш нетрадиционно към задачката. Т.е. традицията повелява да си вмъкнеш един index.htm в друг и в твоя случай е така. Аз ти предлагам index-a да си е само един, а самите страници p1.htm, p2.htm, p3.htm и т.н. да водят за ръчичка със себе си нещо в другото поле (предполагам някакво подменю).
Ако предположим, че става въпрос за J1 портала, то примера би изглеждал така:
Три полета - горно хор.меню (topmenu), ляво верт.меню (mymenu) и главно поле (main).
В страница p1.htm добавяш скрипта:
function MyMenu() {
parent.window.mymenu.location.href = 'menu1.html';
}
<body onload="MyMenu();>
и си готов !
Това ще те отърве от евентуални недоразумения с вмъкнатите една в друга рамки и задължителното посочване в href на различни мишени за файловете в mymenu & main (target=""). Винаги ще насочваш pX.htm в main, а те ще си имат грижата да си заредят подходящия файл в mymenu. Представи си какво ще се случи, ако трябва да промениш по някаква причина файла в mymenu, а основния pX.htm не се променя - ще сменяш линкове в навигацията (или ще пишеш нови index.htm), а с това, което ти предлагам си посочваш файла в скрипта на pX.htm и си свиркаш :)
Единствения недостатък, който виждам в момента е, че само при първоначално зареждане на index.htm полето mymenu ще презареди файла в него ...
Но нищо не ти пречи в index-a да посочиш един blank.html като за начало.
Дано съм бил ясен, че много приказки изприказвах, но мисля на глас в момента ...
**********
Ето че мислейки ми хрумна още нещо ...
С този скрипт можеш с една и съща страница да зареждаш и две различни менюта в mymenu. Примерно за горната й половина едно, а за долната друго.
Ще те оставя този път сам да се сетиш как, но ще ти подскажа:
вместо onload="" да се използва onclick=""
Само че трябва да подходиш нетрадиционно към задачката. Т.е. традицията повелява да си вмъкнеш един index.htm в друг и в твоя случай е така. Аз ти предлагам index-a да си е само един, а самите страници p1.htm, p2.htm, p3.htm и т.н. да водят за ръчичка със себе си нещо в другото поле (предполагам някакво подменю).
Ако предположим, че става въпрос за J1 портала, то примера би изглеждал така:
Три полета - горно хор.меню (topmenu), ляво верт.меню (mymenu) и главно поле (main).
В страница p1.htm добавяш скрипта:
function MyMenu() {
parent.window.mymenu.location.href = 'menu1.html';
}
<body onload="MyMenu();>
и си готов !
Това ще те отърве от евентуални недоразумения с вмъкнатите една в друга рамки и задължителното посочване в href на различни мишени за файловете в mymenu & main (target=""). Винаги ще насочваш pX.htm в main, а те ще си имат грижата да си заредят подходящия файл в mymenu. Представи си какво ще се случи, ако трябва да промениш по някаква причина файла в mymenu, а основния pX.htm не се променя - ще сменяш линкове в навигацията (или ще пишеш нови index.htm), а с това, което ти предлагам си посочваш файла в скрипта на pX.htm и си свиркаш :)
Единствения недостатък, който виждам в момента е, че само при първоначално зареждане на index.htm полето mymenu ще презареди файла в него ...
Но нищо не ти пречи в index-a да посочиш един blank.html като за начало.
Дано съм бил ясен, че много приказки изприказвах, но мисля на глас в момента ...
**********
Ето че мислейки ми хрумна още нещо ...
С този скрипт можеш с една и съща страница да зареждаш и две различни менюта в mymenu. Примерно за горната й половина едно, а за долната друго.
Ще те оставя този път сам да се сетиш как, но ще ти подскажа:
вместо onload="" да се използва onclick=""
Редактирано от LeoS на
E де, някъде по-горе споменах,
че не съм навътре с Javite и не знам. Щом може - супер.
За сорсовете - там си пише, че сметките са безмислени. Просто са си някакви сметки, от които се получава число от нула до девет, в зависимост от IP-то. от там се получава и име yyy0.html до yyy9.html. Това не е нещо трудно. И няма връзка с урленкодване. А че работи - работи. Как се е заредил файла yyy?.html според теб? Или не схващам какво не му е наред на това:
<frame src=<?php echo "\"$s_full_name\""; ?> name="xxx" scrolling="auto">
За сорсовете - там си пише, че сметките са безмислени. Просто са си някакви сметки, от които се получава число от нула до девет, в зависимост от IP-то. от там се получава и име yyy0.html до yyy9.html. Това не е нещо трудно. И няма връзка с урленкодване. А че работи - работи. Как се е заредил файла yyy?.html според теб? Или не схващам какво не му е наред на това:
<frame src=<?php echo "\"$s_full_name\""; ?> name="xxx" scrolling="auto">