Terve.
Olen vähän aloittelija vielä php:n kanssa. Lähinnä olen käyttänyt netistä löydettyjä koodinpätkiä ja muokannut niitä iselleni sopiviksi.
Päätin nyt ensi kertaa tehdä omat sivuni (kokonaan) php:llä. Pääasiassa tämä on onnistunut hyvin, mutta eräs pieni ongelma vaivaa minua.
Sivustoni on siis tottakai index.php, johon sitten ladataan eri osat include-komennolla. Ongelmana on kuitenkin se, että kun vien hiiren linkkien päälle, niiden väri ei muutu.
Tähän asti olen käyttänyt seuraavaa koodinpätkään tämän tekemiseen:
<style> A:hover { COLOR: #B5B5B5 } </style>
Nyt tuo koodi toimii vain indexessä itsessään oleviin linkkeihin, mutta ei muilta ladattuihin. Tosin Firefoxilla muista tiedostoista ladatut kuvat, joissa on linkki, muuttavat reunojen väriä vietäessä hiiri niiden päälle.
Toivottavasti joku osaa ja viitsii auttaa.
EDIT: Tahtoisin myös tietää, miten tällä tavalla tehtyyn sivuun saa tehtyä linkkejä. Esim index.php lataa heti keskelle sivua etusivu.php:n. Mutta miten linkit sitten tulisi tehdä niin, että uudelle sivulle latautuvat samat tekstit, mutta etusivu.php:n tilalle tuleekin haluttu sivu.
Ehdotan hieman toista tapaa sivuston toteutukseen. Sivut kannattaa minusta tehdä niin, että jokainen erilainen sivu on omassa tiedostossaan ja ainoastaan sivun muuttumaton ylä- ja alaosa yhdistetään PHP:n avulla.
Tästä on esimerkki PHP-oppaassa:
https://www.ohjelmointiputka.net/oppaat/opas.
Silloin voit kirjoittaa linkit ja kaiken muunkin ihan tavalliseen tapaan. Jos sivun alussa on asianmukaiset CSS-määritykset, linkkien väri myös muuttuu täysin samalla tavalla kuin ilman PHP:tä tehdyissä sivuissa.
En kyllä täysin ymmärtänyt ongelmaasi, sillä linkkien pitäisi yhtä hyvin toimia myös omalla tavallasi. Kuitenkin suosittelen erillisiä tiedostoja jo pelkästään sivujen osoitteiden vuoksi. Näyttää aika hassulta, jos sivujen osoitteet ovat muotoa index.php?sivu=linkit, index.php?sivu=keskustelu jne., vaikka ne voisivat olla siististi linkit.php ja keskustelu.php.
Jos ongelma ei meinaa ratketa, katso selaimen kautta sivun lähdekoodia. Sieltä paljastuu takuulla virhe.
Itse asiassa index.php sisältää sivuston taulukot, joihin tekstit ladataan. Keskellä olevaan taulukkoon ladataan siis etusivu.php. Oikealle taas oikea.php, vasemmalle vasen.php jne.
Toki voisin tehdä muille sivuille saman koodin kuin index.php:lle, mutta etusivun sijaan siihen ladataankin vaikka linkit.php. Mutta silloin taulukoiden muutokset tulisi tehdä jokaiseen sivuun erikseen.
En kyllä muutenkaan täysin ymmärtänyt vihjettäsi :S
Mielestäni asia on selostettu antamassani linkissä aika selkeästi.
Sinulla taitaa olla yksi ylimääräinen tiedosto, nimittäin index.php. Etusivun voisi tehdä suoraan näin (etusivu.php):
<?php include("vasen.php"); ?> <h1>Etusivu</h1> <p>Tämä teksti näkyy etusivulla.</p> <?php include("oikea.php"); ?>
Nyt keskellä olevan taulukon yläosa on tiedostossa vasen.php ja alaosa tiedostossa oikea.php. HTML-koodia voi siis jakaa mielin määrin eri PHP-tiedostoihin.
Tämä menetelmä on käytössä myös Ohjelmointiputkassa:
https://www.ohjelmointiputka.net/yla.php
https://www.ohjelmointiputka.net/ala.php
Hmm, no nyt taisin ymmärtää pointtisi.
Ongelmana on vain, etteivät style-komennot vieläkään tunnu toimivan (voin pistää lähdekoodin e-mailin, jos haluat tutkiskella sitä).
Voit lähettää tiedoston sähköpostilla antti.laaksonen@mbnet.fi.
Lähetä myös alkuperäinen sivu, jossa tyylit toimivat.
Tai ehkä olisi parempi, jos laittaisit sivut näkyville Internetiin. Silloin kaikki ei olisi minun varassani.
Taulukot? Ei kai vaan taulukkotaittoa? Hyi. http://www.aimedia.fi/stupid_tables/
Tiedän ettei noita tueta, mutta enpäs muullakaan nyt osaa. Saapi kelvata.
Antti: Laittelen sivun tulemaan jonkin ajan kuluttua.
Tällä kertaa vika oli siinä, että linkin ympärillä oli font-tagi, jonka väri oli määrätty mustaksi. Tämä esti kokonaan linkin värin muuttumisen.
Ohjelmoinnissa virhettä etsii usein aluksi aivan väärästä paikasta.
Aihe on jo aika vanha, joten et voi enää vastata siihen.