Zmiana tylko śrdkowej ramki strony?? POMOCY :(
-
- Posty: 6
- Rejestracja: 29 paź 2005, 00:29:53
- Płeć:
- User Agent:
Zmiana tylko śrdkowej ramki strony?? POMOCY :(
Witam Mam pytanko...
Mam stworzony szablon HTML i teraz chcial bym aby przy klinknieciu na hiperłącze np zmieniał się tylko srodek strony, czyli żeby reszta strony sięnie zmieniała z wyjątkiem środkowej ramki bo przeciez nie będe robił do kazdego hiperłacza całej podsrtony bo to sie chyba mija z celem! Proszę o pomoc! jak cos takiego zrobic? zaznaczam tylko ze szablon już mam stworzony;)
POZDRAWIAM
Mam stworzony szablon HTML i teraz chcial bym aby przy klinknieciu na hiperłącze np zmieniał się tylko srodek strony, czyli żeby reszta strony sięnie zmieniała z wyjątkiem środkowej ramki bo przeciez nie będe robił do kazdego hiperłacza całej podsrtony bo to sie chyba mija z celem! Proszę o pomoc! jak cos takiego zrobic? zaznaczam tylko ze szablon już mam stworzony;)
POZDRAWIAM
- fuma
- Przyjaciel CBA
- Posty: 11168
- Rejestracja: 01 sie 2005, 14:57:56
- Lokalizacja: z jajka niespodzianki :P
- Płeć:
- User Agent:
do ramki środkowej dodajesz :
a do hiperłączy
Gotowe
Kod: Zaznacz cały
name="ramka"
Kod: Zaznacz cały
target="ramka"
-
- Posty: 6
- Rejestracja: 29 paź 2005, 00:29:53
- Płeć:
- User Agent:
Ale jakoś nie działa ten sposób :/
... nie wiem dlaczego ale nie dziala :| moze istnieje coś innego... ??
- linksworld
- Posty: 370
- Rejestracja: 09 paź 2005, 14:02:14
- Płeć:
- User Agent:
- Kontakt:
Jeśli nie zna się podstaw HTML-a, to jak Ty się chcesz zabawiać ramkami
Przyszłe forum, na które wszystkich Was zapraszam.
da się. Za pomocą javascript:
<div id="start"><h1>strona główna</h1></div>
<div id="strona_1"><h1>druga strona</h1></div>
<div id="inna_strona"><h1>trzecia strona</h1></div>
<!-- i tak dalej... -->
<script language="javascript">
<!--
function url(x) {
document.getElementById('start').style.display='none';
document.getElementById('strona_1').style.display='none';
document.getElementById('inna_strona').style.display='none';
//i tak dalej... a potem:
document.getElementById(x).style.display='block';
}
//uruchomienie strony głównej:
url('start');
//-->
</script>
no i potem odnośniki wyglądają tak:
<a href="javascript:url('start')">główna</a>
<a href="javascript:url('strona_1')">druga</a>
<a href="javascript:url('inna_strona')">trzecia</a>
może to być o tyle efektywne, że podstrony będą się dużo szybciej ładować no i będą bez dodatkowych reklam google. Ale to jest raczej bez sensu, lepiej zrób to w PHP.
<div id="start"><h1>strona główna</h1></div>
<div id="strona_1"><h1>druga strona</h1></div>
<div id="inna_strona"><h1>trzecia strona</h1></div>
<!-- i tak dalej... -->
<script language="javascript">
<!--
function url(x) {
document.getElementById('start').style.display='none';
document.getElementById('strona_1').style.display='none';
document.getElementById('inna_strona').style.display='none';
//i tak dalej... a potem:
document.getElementById(x).style.display='block';
}
//uruchomienie strony głównej:
url('start');
//-->
</script>
no i potem odnośniki wyglądają tak:
<a href="javascript:url('start')">główna</a>
<a href="javascript:url('strona_1')">druga</a>
<a href="javascript:url('inna_strona')">trzecia</a>
może to być o tyle efektywne, że podstrony będą się dużo szybciej ładować no i będą bez dodatkowych reklam google. Ale to jest raczej bez sensu, lepiej zrób to w PHP.
Czy ja wiem zrobienie tego w php nie jest wcale takie trudne.
Robisz plik index.php
Potem swoją stronę (jej kod HTML) dzielisz np:w notatniku na 3 części:
gora-to to co jest nad opisem który będzie się zmieniał
opis-to to co się zmienia
dol-to to co jest pod opisem
Zapisujesz je jako:
gora.inc
opisy to kolejno
- page1.inc
- page2.inc
- page3.inc
- i tak dalej ale jak chcesz więcej to przy
dodajesz kolejne ,,pagex=>pagex.inc,"
przy ostatnim nie ma przecinka
No i potem masz takie adresy
www.strona.cba.pl - automatycznie otworzy się strona ,,sklejona" z gora.inc, page1.inc, dol.inc
A inne to po prostu www.strona.cba.pl/index.php?view=page2
www.strona.cba.pl/index.php?view=page3
www.strona.cba.pl/index.php?view=pagex
I możesz się do nich odwoływać w zwykłych linkach HTML
Nie wiem czy to coś rozjaśniło ale się starałem
Robisz plik index.php
Kod: Zaznacz cały
<?php
$view = $_GET['view'];
$allowed_values = array(
"page1" => "page1.inc",
"page2" => "page2.inc",
"page3" => "page3.inc"
);
if($allowed_values[$view]!=''){
include("gora.inc");
include(
"$allowed_values[$view]");
include("dol.inc");
}
else{
include("gora.inc");
include("opis.inc");
include("dol.inc");
}
?>
gora-to to co jest nad opisem który będzie się zmieniał
opis-to to co się zmienia
dol-to to co jest pod opisem
Zapisujesz je jako:
gora.inc
opisy to kolejno
- page1.inc
- page2.inc
- page3.inc
- i tak dalej ale jak chcesz więcej to przy
Kod: Zaznacz cały
$allowed_values = array(
"page1" => "page1.inc",
"page2" => "page2.inc",
"page3" => "page3.inc"
);
przy ostatnim nie ma przecinka
No i potem masz takie adresy
www.strona.cba.pl - automatycznie otworzy się strona ,,sklejona" z gora.inc, page1.inc, dol.inc
A inne to po prostu www.strona.cba.pl/index.php?view=page2
www.strona.cba.pl/index.php?view=page3
www.strona.cba.pl/index.php?view=pagex
I możesz się do nich odwoływać w zwykłych linkach HTML
Nie wiem czy to coś rozjaśniło ale się starałem
No i co? Konwersja bazy wyjadła mi polskie znaki z podpisu. Kto¿ bÂdzie musiaà za to odpowied¿Ã...
może ja dam lepszy przykład :
piszesz normalną stronę (normalnie w HTMLu) index.php w której zawierasz ramy całej strony, a tam gdzie ma się zmieniać treść wpisujesz odpowiedni kod PHP. Przykładowa strona index.php :
no i teraz to co jest pomiędzy <?php i ?> będzie zastępowane przez treść kolejnych podstron. Każda podstrona jest w folderze "folder" wraz ze stroną start.php która jest stroną startową. Podstrony piszesz już bez tego "wstępu" czyli już bez znaczników <html> i tych innych co się pisze na początku. Piszesz je w HTMLu tak jak byś chciał dopisać treść strony w miejsce kodu PHP w pliku index.php.
W tym przypadku powinieneś do folderu "folder" wrzucić pliki start.php, strona1.php i strona2.php
piszesz normalną stronę (normalnie w HTMLu) index.php w której zawierasz ramy całej strony, a tam gdzie ma się zmieniać treść wpisujesz odpowiedni kod PHP. Przykładowa strona index.php :
Kod: Zaznacz cały
<html>
<table>
<tr>
<td valign="top">
<h3>menu</h3>
<a href="?link=start">strona główna</a><br>
<a href="?link=strona1">strona1</a><br>
<a href="?link=strona2">strona2</a><br>
</td>
<td valign="top">
<?php
if($_GET['link']!='') { include('http://twojastrona.cba.pl/folder/'.$_GET['link'].'.php'); } else
{ include('folder/start.php'); }
?>
</td>
</tr>
</table>
</html>
W tym przypadku powinieneś do folderu "folder" wrzucić pliki start.php, strona1.php i strona2.php
gacek NIE POWINNO SIÊDAWAÆTAKICH SKRYPTÓW!
A co jeżli podam taki adres?
http://twojastrona.cba.pl/folder/index. ... /wazne.xxx
Jeżeli autor strony daje taki skrypt to ktoś może wpisać do ?link= dowolną ścieżkę, co spowoduje wyświetlenie pliku którego nie przewidywał autor skryptu.
Nawet plików serwera co może ułatwić późniejsze włamanie. Szczególnie na serwerach windowsowskich.
Dlatego ja podałem przykład z tablicą...
A co jeżli podam taki adres?
http://twojastrona.cba.pl/folder/index. ... /wazne.xxx
Jeżeli autor strony daje taki skrypt to ktoś może wpisać do ?link= dowolną ścieżkę, co spowoduje wyświetlenie pliku którego nie przewidywał autor skryptu.
Nawet plików serwera co może ułatwić późniejsze włamanie. Szczególnie na serwerach windowsowskich.
Dlatego ja podałem przykład z tablicą...
No i co? Konwersja bazy wyjadła mi polskie znaki z podpisu. Kto¿ bÂdzie musiaà za to odpowied¿Ã...
no fakt, sory
No ale po pierwsze skąd ktoś ma wiedzieć w ilu folderach znajdują się podstrony. Po drugie, jaka jest nazwa tego tajnego pliku i czy ma on rozszerzenie .php. Po trzecie tajne pliki nie powinne być przechowywane w folderze w którym są inne pliki. A po czwarte ten skrypt można łatwo zmodyfikować żeby temu zapobiec. Na przykład zamiast:
można zrobić tak:
i już po krzyku. Wszystkie ewentualne niebezpieczne znaki takie jak / % są zamieniane na jakieś literki (a,b). No i haker ma problem
ale jeżeli cię dobrze zrozumiałem, to odpowiedź brzmi TAK
No ale po pierwsze skąd ktoś ma wiedzieć w ilu folderach znajdują się podstrony. Po drugie, jaka jest nazwa tego tajnego pliku i czy ma on rozszerzenie .php. Po trzecie tajne pliki nie powinne być przechowywane w folderze w którym są inne pliki. A po czwarte ten skrypt można łatwo zmodyfikować żeby temu zapobiec. Na przykład zamiast:
Kod: Zaznacz cały
<?php
if($_GET['link']!='') { include('http://twojastrona.cba.pl/folder/'.$_GET['link'].'.php'); } else
{ include('folder/start.php') }
?>
Kod: Zaznacz cały
<?php
$x=$_GET['link'];
$x=strtr($x,"/%","ab");
if($x!='') { include('http://twojastrona.cba.pl/folder/'.$x.'.php'); } else
{ include('folder/start.php'); }
?>
a możesz się wyrazić jaśniej bo niewiem o co ci chodzi i używaj polskich literHitcH pisze:tzn tak: strona1 i2 .php to bada odnosninki które otwieraja sie w miejscu tekstu ze strony glownej?
ale jeżeli cię dobrze zrozumiałem, to odpowiedź brzmi TAK