Ajattelin laittaa sivulleni tuolta koodivinkeistä tuollaisen PHPllä tehdyn kävijälaskurin, mutta ei oikein luonnistu. Sivut on muuten HTML-pohjaiset. Riiteleekö nämä kaverukset keskenään? Laskuri ei vain rullaa.
Tuo laskuri:
https://www.ohjelmointiputka.net/koodivinkit/
Ei just nyt oo kristallipalloa käsien ulottuvilla. Anna osote, niin tarvii arvailla paljo vähemmän.
Niin tietysti. Tuossapa on:
http://monarchsoftware.hyperphp.com/
Yrität etusivulla PHP:llä liittää tuon kävijälaskurin sille sivulle, mikä ei onnistu kun se etusivu ei mee PHP-tulkin läpi (nimi on index.html eikä index.php).
Niin sitä minä vähän tässä kysyinkin että voidaanko PHPtä linkittää HTML:ään samalla tavalla kuin javascriptiä. Oliskohan viisaampaa sitten tehdä se kokonaan javascriptillä...?
JavaScript suoritettaan käyttäjän päässä, PHP serverillä. Yleensä. Ei olisi viisaampaa. Nimeä index.html -> index.php.
tsuriga kirjoitti:
Nimeä index.html -> index.php.
Toimiiko HTML osuus sitten?
Toimii. PHP ei välitä muusta kuin <?php ... ?> sisällä olevasta.
Nimesin index.html:än index.php:ksi mutta nyt en voi avata sivustoa kiintolevyltä. Ihan puhtaalla logiikalla päättelisin että tarvitseisin itsekin php-tulkin koneelleni jos haluan testata sivustoa ennen sen nettiin lataamista. Menee minun päälle vähän monimutkaiseksi.
Toisin kuin PHP javascriptistä sentäs ymmärrän jotain. Jossitellaanpa: jos teen laskurin javascriptillä ja käyttäjän selain ei tue javascriptiä, latautuuko loput sivusta ollenkaan? Periaatteessa kun useimmat selaimet taitaa nykyään tukea sitä niin ei haittaa vaikka pari kävijää jää kirjaamatta.
PHP tosiaan tarvitsee palvelinohjelmiston PHP -tuella toimiakseen, joten joko sinun on asennettava tällainen paketti omalle koneellesi tai testata netissä. Ei se jälkimmäinen niin hankala vaihtoehto ole.
Jos selain ei tue javascriptiä, se skippaa vain javascriptin osuuden, ja näyttää loput. Mutta tosiaan, kuten mainitsit, käyttäjä, jolta puuttuu javascript -tuki alkaa olla harvinaisuus (joskin jotkut ottavat sen itse pois käytöstä).
Oot kyllä pr0 jos saat JavaScriptillä jolla ei ole pääsyä palvelimelle laskettua sivun kävijät.
Matso kirjoitti:
Oot kyllä pr0 jos saat JavaScriptillä jolla ei ole pääsyä palvelimelle laskettua sivun kävijät.
Meinaatko että javascriptillä ei ole asiaa palvelimelle laitettuihin tiedostoihin?
GimPeltzi kirjoitti:
PHP tosiaan tarvitsee palvelinohjelmiston PHP -tuella toimiakseen, joten joko sinun on asennettava tällainen paketti omalle koneellesi tai testata netissä. Ei se jälkimmäinen niin hankala vaihtoehto ole.
Eikä se eka.
Janezki kirjoitti:
Meinaatko että javascriptillä ei ole asiaa palvelimelle laitettuihin tiedostoihin?
Ei kirjotusasiaa.
Kuten sanottu, PHP suoritetaan palvelimella. Tämä tarkoittaa että kun joku lähettää pyynnön esim. index.php palvelimellesi niin palvelimesi(olettaen että PHP on asennettu ja käytössä) käy index.php sivun läpi etsien sieltä <?php ?> tagit (muitakin taisi olla mutta tämä lienee yleisin) ja suorittaa löydetyt PHP koodit.
Sivu joka latautuu kävijälle on kuitenkin ihan (X)HTML:ää jonka selain sitten jäsentelee ja näyttää.
Esimerkki varmaan selventää:
<html> <head> <title>PHP-Hello World!</title> </head> <body> <?php echo " <h1>Hello World</h1>"; //echo==tulosta ?> </body> </html>
Ylläoleva on siis muuten ihan perus HTML:ää mutta välissä oleva <?php ?> tagi koodeineen suoritetaan palvelimella eikä näy lähdekoodissa selailijalla.
Lähdekoodi selailijalle näyttäisi jotakuinkin tältä:
<html> <head> <title>PHP-Hello World!</title> </head> <body> <h1>Hello World</h1> </body> </html>
PHP ei siis vaadi mitään PHP-tukea selaajalta, ainoastaan palvelimella tulee olla PHP asennettuna ja käytössä. PHP tiedostot tulee nimetä .php päätteiseksi jotta palvelin tietää toimia asianmukaisesti PHP-sivun kanssa. Muitakin päätteitä näkyy käytössä ja käsittääkseni päätteen voi itse määrätäkkin, pitää vain säätää palvelimen asetukset tukemaan omaa päätettä.
Javascript suoritetaan sitten selaajan puolella. Tämän vuoksi on aikallailla mahdotonta tehdä pelkästään javascriptiä käyttäen kävijälaskuria sivuillesi.
Ainoastaan yksittäisen selaajan käyntejä voi laskea asettamalla keksi ja kasvattamalla arvoa keksissä jokaisella latauskerralla.
En enää päässyt muokkaamaan edellistä viestiä, siksi uusi.
Tämä menee nyt hieman offtopicin puolelle mutta itse arvostan kun saan kritiikkiä/vinkkejä joten sanompa muutaman sanasen.
Vilkaisin sivujasi ja muutaman asian voisin sanoa:
-Banneri/navimenu on kyllä komia, osaisinpa itekki. Hankalaa siinä tosin on se että navigointi vaikuttaisi tapahtuvan pelkästään imagemapin kautta joten voi tulla ongelmia tekstipohjaisten selainten kanssa. Suosittelen miettimään joko uutta ratkaisua tai kehittämään vaihtoehtoisin tavan liikkua sivustolla.
-Tekstit eivät ainakaan etusivulla näy ollenkaan firefox 2.0.0.4 versiolla. Explorer 6 ja opera 9.10 näyttävät tekstin.
-Vilkaisin tyylitiedostoa ja siitä senverran että ulkoisessa css-tiedostossa ei tulisi olla html-tageja joten olisi syytä ottaa "<style type="text/css"> <!-- --> </style>" pois.
Siinä jotain näin pikaisesti vilkaistuna.
http://www.w3schools.com sivulta löytyy paljon nettisivu-ohjelmointia käsitteleviä tutoriaaleja. Sieltä löytyy löytyy myös validaattoreja (X)HTML:n ja CSS:n oikeellisuuden tarkistamiseksi ( http://w3schools.com/site/site_validate.asp ).
ps. Onko muuten kenelläkään mitään tietoa miten hakukoneet toimivat imagemappien kanssa?
Jäynis kirjoitti:
ps. Onko muuten kenelläkään mitään tietoa miten hakukoneet toimivat imagemappien kanssa?
Ainakaan Google ei käsittääkseni ymmärrä niitä. Suosittelevat Webmastereiden sivullaan, ettei niitä käytettäisi ainakaan tärkeissä paikoissa, kuten valikoissa.
Jäynis kirjoitti:
Vilkaisin sivujasi ja muutaman asian voisin sanoa:
-Banneri/navimenu on kyllä komia, osaisinpa itekki. Hankalaa siinä tosin on se että navigointi vaikuttaisi tapahtuvan pelkästään imagemapin kautta joten voi tulla ongelmia tekstipohjaisten selainten kanssa. Suosittelen miettimään joko uutta ratkaisua tai kehittämään vaihtoehtoisin tavan liikkua sivustolla.
-Tekstit eivät ainakaan etusivulla näy ollenkaan firefox 2.0.0.4 versiolla. Explorer 6 ja opera 9.10 näyttävät tekstin.
-Vilkaisin tyylitiedostoa ja siitä senverran että ulkoisessa css-tiedostossa ei tulisi olla html-tageja joten olisi syytä ottaa "<style type="text/css"> <!-- --> </style>" pois.
Noh, kiitos kattavasta palautteesta, vaikka ei siinä paljoa hyvää sanottavaa löytynytkään. No en minä mitään kruunua toki odottanutkaan kun ihka ensimmäiset sivut kuitenkin.
Joo css:n suunnittelin HTML koodin pohjalta jonka myöhemmin siirsin eri tiedostoon, elikkä se korjaukseen.
Bannerin kans mulla oli tarkoitus käyttää alt-tekstejä (jos niistä nyt mitään hyötyä on tekstipohjaisille sielaimille). Ilmeisesti kuvan koon ennalta-asettaminen ainakin korjaisi tilannetta, jos kuva ei näy. Vaihtoehtona olisi helppo vaan kirjoittaa tekstinä nuo päälinkit bannerin alle.
Fontit kun on kaikki css-tiedostossa määritelty niin voi olla että firefox sekosi tuon html-tagin takia. Jos viitsit niin testaa joskus uudelleen firefoxilla. Päivitän css-tiedoston nyt heti.
Suurimman osan olen opiskellut täältä http://www.htmlcodetutorial.com/
Taidan lopultakin taipua hankkimaan sen php-tulkin koneelle. Niin paljon hyötyä näyttää olevan php:n käyttämisestä. Itse kävijälaskuri ratkesi jo sillä että imutin tuollaisen surkean ilmaisversion, joka ei näköjään toimi aina.
Jäynis kirjoitti:
Onko muuten kenelläkään mitään tietoa miten hakukoneet toimivat imagemappien kanssa?
Imagemappien alueille saa käsittääkseni alt-määreet ("alternative text", kuten kuvissakin) joita mm. tekstipohjaiset selaimet käyttävät, luulisi hakukoneiden olevan sopivan viisaita noiden lukemiseen. Kuitenkin ne ovat usein suht hankalia, varmuuden vuoksi kannattaa välttää.
Janezki kirjoitti:
Suurimman osan olen opiskellut täältä http://www.htmlcodetutorial.com/
Kannattaa perehtyä (myös) xHTML:ään, sillä se tulee syrjäyttämään perinteisen HTML:n ennen pitkää. Tosin ero näiden välillä ei ole mikään suuri, ja sen omaksuu nopeasti. Suurimmat ja tärkeimmät erot ovat, että
-Kaikki elementit on suljettava
-Kaikki elementit on kirjoitettava pienellä
-Kaikki elementit on suljettava järjestyksessä sisemmästä ulompaan.
GimPeltzi kirjoitti:
Kannattaa perehtyä (myös) xHTML:ään, sillä se tulee syrjäyttämään perinteisen HTML:n ennen pitkää.
Näinhän sitä sopii toivoa, mutta tuskinpa vain tulee koskaan syrjäyttämään kokonaan :) Aina löytyy porukkaa (tai WYSIWYG-editoreita), jotka tekevät sivuja vasemmalla kädellä ja html-tauhka on mitä on.
Tulipa muuten tuosta bannerista sen verran mieleen että voiko html-koodia linkittää toisesta tiedostosta? En käyttänyt kerran frameja niin tuon bannerikoodin pitää nyt kopioida aina kuuteen tiedostoon jos siihen tekee muutoksia. Olisi kätevää jos se olisi vain yhdessä paikassa.
<?php include "bannerikoodi.htm";?>
Jospa vaikka tutustuisit hieman PHP-opassarjaan, siellä nimittäin neuvotaan tällainen niksi:
<?php include("yla.htm"); ?> <h1>Moninpelit</h1> <p>Omiin suosikkipeleihini kuuluvat pokeri ja skat, joista löytyykin paljon tietoa näiltä sivuilta...</p> <?php include("ala.htm"); ?>
Tämä käsitellään opassarjan neljännen osan alussa.
Onkos tuo muuten järkevä tapa liittää html-tiedostoja?
Itse tykkään enemmänkin file_get_contents -funktiosta, jolla siis voi tulostaa tuon tiedoston sisällön.
Include taas toimisi paremminkin php-tiedostojen liittämiseen. Tällöinkin tiedostossa olisi hyvä olla jokin tarkistus, ettei sitä ajeta suoraan.
Lebe80 kirjoitti:
Onkos tuo muuten järkevä tapa liittää html-tiedostoja?
Parempi varmaan on käyttää vaikka readfile-funktiota, tai vaikka file_get_contents-funktiota. Include tosiaan suorittaa myös tiedoston sisältämät skriptit, joiden pitäminen .htm tiedostoissa on tosiaan vähän epämääräistä.
Sain lopussakin asennettua apachen ja php-tuen. Nytten toimii kotikoneelta käsin mutta vielä tuosta include-komennosta, onko se paha juttu jos includetetun tiedoston sisältämät skriptit ajetaan? Sitten sellainen vielä että eikö kaikki tiedostot kannattaisi olla .php-loppuisia jotta niihin tarpeen tullen saa lisättyä php-koodia?
Janezki kirjoitti:
Onko se paha juttu jos includetetun tiedoston sisältämät skriptit ajetaan?
Ei, jos tiedät, mitä tiedosto sisältää. On, jos esimerkiksi sivuston käyttäjät voivat kirjoitella tiedostoon. Kuitenkin jos siellä ei kuulu mitään ajettavaa olla, tietenkin readfile on parempi vaihtoehto, ja vastaavasti hyviin tapoihin kuuluisi ehkä nimetä ajettavat tiedostot php-päätteisiksi.
Janezki kirjoitti:
Sitten sellainen vielä että eikö kaikki tiedostot kannattaisi olla .php-loppuisia jotta niihin tarpeen tullen saa lisättyä php-koodia?
Mitkä "kaikki"? Järkevissä rajoissa tietenkin, ja yleensä voi jo ennalta hyvin tietää, mitkä tiedostot tulevat PHP:tä tarvitsemaan. Harvemmin kuitenkaan kuvat tai äänet (ts. ei yleensä kannata valmista kuvaa väkisin PHP:ksi muuttaa), sen sijaan kaikki sivut voivat hyvinkin olla, helpottuupa samalla tuo ylä- ja alaosan lisäys.
Kun tässä vielä luonnollisuuden rajoissa liikutaan niin en uskonut että minun olisi pitänyt tarkentaa käsitettä "kaikki tiedostot" koskemaan vain html- ja htm-tiedostoja.
Älä nyt, olen nähnyt sivun, jossa ihan vakavissaan neuvottiin liittämään java-appletin alkuun PHP:llä kirjautumistarkistus. :)
Nyt kun tämä tästä näyttäisi kehittyvän johonkin suuntaan niin haluaisin kiittää teitä putkalaisia jälleen avustanne ja kärsivällisyydestänne. On hienoa että ohjelmoijaraukoille on olemassa joku paikka jonne mennä itkemään kun asiat ei mene kuin pitäisi ;P
Aihe on jo aika vanha, joten et voi enää vastata siihen.