Ta strona używa ciasteczek (cookies), dzięki którym nasz serwis może działać lepiej. Dowiedz się więcej OK, rozumiem

[PHP/HTML] Poprawki w kodzie

Zaczynasz dopiero swoją przygodę z HTML'em? A może mimo swojego doświadczenia natknąłeś się na jakiś problem? Tutaj na pewno znajdziesz pomoc.

[PHP/HTML] Poprawki w kodzie

Post 15.09.2008, 17:29:25

Witam,
mój problem polega na tym, że chce przejść pod etykietę, która znajduje się na innej stronie. Normalnie nie ma z tym problemu, ale ja jak zwykle mam:D, dlatego, że używam PHP do "includowania" elementów strony.
1. Kod HTML, gdzie znajdują się etykiety - tak w skrócie:
Kod: Zaznacz cały
(...)
<a name="#$"></a>
TEKST 1
<a name="#n"></a>
TESKT 2
(..)


2. Odwołanie się do tej etykiety - fragment z listy:
Kod: Zaznacz cały
     <ol style="list-style-type: circle;" id="wykaz_funkcji">
      <li><a href="?strona=manual/wykaz_funkcji#$" title="$"><b>$</b> - opis 1</a></li>
      <li><a href="?strona=manual/wykaz_funkcji#n" title="n"><b>n</b> - opis 2</a></li>
(...)


I kod php - prawie cały:
Kod: Zaznacz cały
<?php
//tablica jakie mogą być strony
 $dozwolone=array('jakas_strona',(...),'manual/wykaz_funkcji');

// próbowałem też dodać tam coś takiego:
// ,'manual/wykaz_funkcji#n'

//sprawdzenie czy zmienna $strona istnieje
// jak tak do zmienna $pokaz = zmiennej $strona
// jak nie to $pokaz = ''
 if (isset($_GET['strona'])) $pokaz=$_GET['strona']; else $pokaz='';
// jezeli w tablicy nie ma tego co jest w $pokaz wtedy brana jest 1 strona z tablicy
 if (!in_array($pokaz,$dozwolone)) $pokaz=$dozwolone[0];
 
//include strone.html
 if (file_exists($pokaz.'.html')) include($pokaz.'.html');
// jak nie inslude strone.php
 else if (file_exists($pokaz.'.php')) include($pokaz.'.php');
// a jak nie to wyswietl brak.html
 else include('brak.html');
?>



Moim skromnym zdaniem błąd polega na tym, że strona próbuje includować np.
manual/wykaz_funkcji#$.html - co prawda chodzi, ale tylko "na samej górze" strony.

Prosiłbym o podanie sposobu jak przerobić kod PHP tak abym mógł osiągnąć zamierzony efekt. Przy czym nie chciałbym zmieniać pierwszych linijek kodu z tablicą, gdyż tych podstron troche mam:D

Pozdrawiam i z góry dziękuje za sugestie.
kamil4u
hunter
hunter

Posty: 1556
Dołączył(a): 28.12.2007
Lokalizacja: Wrocław / Świdnica

Post 15.09.2008, 18:04:45

kotwica:
Kod: Zaznacz cały
<p id="kotwica">


link do kotwicy:
Kod: Zaznacz cały
<a href="#kotwica">przejdz do kotwicy</a>


czyli:
Kod: Zaznacz cały
manual/wykaz_funkcji.html#$
Krzysztof Safjanowski – dostawca rozwiązań IT
Avatar użytkownikabrand
Krzysztof Safjanowski

...
...

Posty: 4404
Dołączył(a): 27.01.2006
Lokalizacja: Poznań

Post 15.09.2008, 18:08:17

No tyle to wiem - tyle, że ja stosuje <a name="#kotwica"></a>, ale to nie błąd. Nie mam pomysłu natomiast jak przerobić kod php, żebym mógł uzyskać taki efekt:
Kod: Zaznacz cały
manual/wykaz_funkcji.html#$
, bo w tej chwili mam taki:
Kod: Zaznacz cały
manual/wykaz_funkcji#$.html


--edit--
Jak pisałem mam przejść pod koticę, która jest na innej stronie - załóżmy,że jestem na index.html, a chcę być na manual/wykaz_funkcji.html#$
kamil4u
hunter
hunter

Posty: 1556
Dołączył(a): 28.12.2007
Lokalizacja: Wrocław / Świdnica

Post 15.09.2008, 18:18:22

index.php
Kod: Zaznacz cały
<a href="index.php?strona=manual/wykaz_funkcji#kotwica">klik me</a><?php

var_dump($_GET);

if($_GET['strona'] == 'manual/wykaz_funkcji'){
   include 'file.php';
}
?>
file.php
Kod: Zaznacz cały
<div style="margin-top: 2400px;"></div>
<a id="kotwica">czesc</a>
Avatar użytkownikaKrzysiek Łabuś
Krzysiek Łabuś

retarded
retarded

Posty: 14361
Dołączył(a): 01.02.2004
Lokalizacja: Muszyna

Post 15.09.2008, 18:25:35

Rzeczywiście - działa:) zamieniłem tylko <a name="#kotwica"> na <a id="kotwica"> Tylko nie rozumiem dlaczego tak się dzieje. Ja najczęściej korzystam z kursu, który pisze żeby stosować moją błędną wersję.( http://www.kurshtml.boo.pl/html/do_etyk ... lacze.html ) Więc dlaczego tak działa, a tak nie?

Pozdrawiam i bardzo dziękuje wam obojgu.
kamil4u
hunter
hunter

Posty: 1556
Dołączył(a): 28.12.2007
Lokalizacja: Wrocław / Świdnica

Post 15.09.2008, 18:44:42

bo to stary kurs… pewnie probujesz stosowac xhtml, ale nie wiesz, ze name zostal zastapiony przez id.

name zostal tylko przy polach formularzy.
Krzysztof Safjanowski – dostawca rozwiązań IT
Avatar użytkownikabrand
Krzysztof Safjanowski

...
...

Posty: 4404
Dołączył(a): 27.01.2006
Lokalizacja: Poznań

Post 15.09.2008, 18:49:35

Dzięki za wyjaśnienia.

pewnie probujesz stosowac xhtml

Nie - stosuje zwykły, stary HTML i jak na razie nic mi więcej nie potrzeba :D

ze name zostal zastapiony przez id

Z reguły używam id, ale pierwszy raz stosowałem etykiety - patrze do kursy name jak wół :P

No nic, najważniejsze, że działa.
Wielkie dzięki

Pozdrawiam
Kamil4u
kamil4u
hunter
hunter

Posty: 1556
Dołączył(a): 28.12.2007
Lokalizacja: Wrocław / Świdnica


Powrót do Początkujący webmaster


 


  • Podobne wątki
    Odpowiedzi
    Wyświetlone
    Ostatni post

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 6 gości

Hosting, Domeny, SSL
iCash

Subskrypcja

Mamy 49632 zarejestrowanych użytkowników.
Najnowszy użytkownik: KashaCzq


Nasi użytkownicy napisali:

  • 933822 wiadomości
  • w 245890 tematach

Najnowsze wpisy na blogu

Najnowsze artykuły

Najaktywniejsi (ostatnie 30 dni)