Hei!
minulla on pudotusvalikko jossa on ohjelmistossani olevat linkit eri sivuille.
<ul> <li><a href="osoite1.php"></a></li> <li><a href="osoite2.php"></a></li> <li><a href="kansio1/osoite3.php"></a></li> <li><a href="kansio2/osoite4.php"></a></li> </ul>
linkitän tämän valikon require_once(); komennolla jokaiselle sivulle.
Kun linkitän valikon kansioon 1 tai 2, miten saisin valikon helpoiten ymmärtämään siirtymisen kansioon.
Tässä tilanteessahan osoitteen <li><a href="kansio1/osoite3.php"></a></li>
eteen pitäisi tulla ../kansio1/osoite3.php
Meneekö hankalaksi, jos kirjoitat jokaisen osoitteen http://osoite.fi/kansio/asiakirja.php tyylillä.
Ylläpidettävyyden kannalta kyllä!
Tietenkään jos ei järkevämpää mahdollisuutta pysty helposti toteuttamaan on se fiksumpaa kuin luoda jokaiseen kansioon oma menunsa.
Se se vasta olisikin hankala ylläpitää.
Voit viitata domainin juureen /-merkillä.
<a href="/kansio1/osoite3.php"></a>
Jos tuo -tossu-:n vinkki ei toimi, kannattaa katsoa olisiko base-tagista apua.
Tossun vinkki on sinällään hyvä, mutta ei aja asiaa tässä tarkoituksessa.
Millä tavalla se ei aja asiaa? Minusta se nimenomaan ajaa asian: toiminta on vastaava kuin http-alkuisilla osoitteilla mutta kirjoitus vain yhden /-merkin pidempi kuin nykyisessä (toimimattomassa) versiossasi.
Onhan toki mahdollista, että ne eivät ole suoraan päähakemistossa, vaan pitäisi kirjoittaa esim. /~manninen/Kotskabortaali/versio7/kansio2/
Sitä varten on se base-tagi.
Toinen mahdollisuus on tehdä funktio, joka selvittää SCRIPT_NAME-arvon perusteella nykyisen polun ja lisää automaattisesti oikean määrän ../-palasia polkuihin.
Metabolix kirjoitti:
Sitä varten on se base-tagi.
Base-tagi on aika järeä ase, koska se asettaa _kaikkien_ sivulla olevien suhteellisten URLien kantaosoitteen. Sillä on monikin saanut aikaan sotkua, ennen kuin asia on valjennut. :-)
Metabolix kirjoitti:
Sitä varten on se base-tagi.
Toinen mahdollisuus on tehdä funktio, joka selvittää SCRIPT_NAME-arvon perusteella nykyisen polun ja lisää automaattisesti oikean määrän ../-palasia polkuihin.
Ei ajanut asiaa, koska en ollut kuullut aikaisemmin base-tagista. Nyt olen ja mielipiteeni on sen myötä muuttunut. Tämä on juuri sitä mitä haen.
Yucca kirjoitti:
Base-tagi on aika järeä ase
On siinä toki ongelmansa, mutta toisaalta kyllähän moni toteuttaa sivunsa myös muodossa index.php?sivu=monen/hakemiston/polku, jolloin tilanne on vähintään yhtä hankala.
Metabolix kirjoitti:
Yucca kirjoitti:
Base-tagi on aika järeä ase
On siinä toki ongelmansa, mutta toisaalta kyllähän moni toteuttaa sivunsa myös muodossa index.php?sivu=monen/hakemiston/polku, jolloin tilanne on vähintään yhtä hankala.
Olennainen ero on se, että base-tagi vaikuttaa kaikkiin suhteellisiin URLeihin, myös esimerkiksi img-, link- ja embed-elementeissä oleviin. Lisäksi kun HTML-koodia luetaan, siitä heti näkee, millainen URL on missäkin kohdassa, mutta katsottaessa koodinpalaa siitä ei näe, että base-tagi vaikuttaa siihen.
Yucca kirjoitti:
Olennainen ero
Mikä ero? Minusta kaikki luettelemasi asiat pätevät myös kuvaamaani PHP-kikkailuun.
Aihe on jo aika vanha, joten et voi enää vastata siihen.