Kun minä käytän tällä hetkellä kotisivuillani lähes kaikkissa (pelit, ohjelmat, flashit ym...) tätä scriptiä:
https://www.ohjelmointiputka.net/koodivinkit/
Niin, kun sivuja alkaa olemaan niissä aika paljon niin se venyttää sivupohjaa aika ikävästi, joten mitenkä tuohon onnistuisi liimata jonkinlainen sivutus. (vaikka 10 linkkiä per sivu)?
Olen koittanut tutkia noita ohjelmointiputkassa jo olevia sivutus-ohjeita, mutta en tajua enkä keksi. Jonkinlainen koodinpätkä olisi mukava saada :)
Ainahan niitä koodeja on kiva valmiina saada, mutta teeppäs poika itse, niin opitkin jotain, ja tiedät mitä kohtaa pitää muuttaa saadaksesi tietynlaista toiminnallisuutta.
oon itse kanssa pohtinut tota sivutus juttua. Mutta en tajuu miten se voi toimia, kun se siirtyy toisella sivulle, niin sehän on "toinen" sivu, pitääkö sitä varten olla toinen tiedosto sitten, eikai. hmm.. Täytyy sitten tutkia jotain viekkua.
Ohjelmointiputka on ihan muuttunut mureakuhan kaltaiseksi. Ennen neuvottiin newbieitä ihan kädestä pitäen ja annettiin koodiesimerkkejä. Ohjelmointiputkaan oli ennen paljon mukavampi tulla ja kysyä apua kuin nykyään, koska nykyään ihmiset käyttäytyvät ohjelmointiputkassa ihan samalla tavalla kuin mureakuhassa. Eivät auta ketään ja käskevät vain harjoittelemaan itsekseen.
Tuo johtuu yksinkertaisesti siitä, että ketään ei välttämättä kiinnosta tehdä juuri sinulle uutta skriptiä. Jos yrität itse, ja se ei onnistu, ja kysyt neuvoa johonkin kohtaan, varmasti joku neuvoo.
Lisäksi tällainen asenne on pitkän päälle vain hyödyksi sinulle, jos aiot oppia tekemään jotain itse.
Heikki kirjoitti:
Tuo johtuu yksinkertaisesti siitä, että ketään ei välttämättä kiinnosta tehdä juuri sinulle uutta skriptiä. Jos yrität itse, ja se ei onnistu, ja kysyt neuvoa johonkin kohtaan, varmasti joku neuvoo.
Lisäksi tällainen asenne on pitkän päälle vain hyödyksi sinulle, jos aiot oppia tekemään jotain itse.
Hyvin olen oppinut Quickbasicia ja Visual Basiciakin ohjelmoimaan vaikka olen saanut koodiesimerkkejä.
Ja sitten itse aiheeseen... olen yrittänyt Antti Laaksosen kirjoittamaan sivutus-koodia yhdistää tuohon linkkilistaan, mutta jostain syystä siinä ei näy kuitenkaan kuin noin 5 eri sivua ja samat ovat joka sivulla (se scripti teki 10 muuta sivua siis...). En tajua enkä osaa, mutta tuo rumentaa sivupohjaani, kun se on todella pitkä lista.
Pitäisi varmaan tehdä helpoiten niin, että laittaa käsin ne sivut ja aina vaikka joku 15 sivua kerrallaan ja sitten uusi sivu, mutta siitä tulee paljon työtä.
Jos osaat hyvin Basic-kieliä, keksit taatusti myös ihan omin päin, kuinka sivutuksen voi toteuttaa. Toista samanlaista koodivinkkiä en sentään rupea kirjoittamaan, koska siitä tuskin tulisi paljonkaan alkuperäistä parempi. On kyllä minusta liioittelua väittää, että täällä tai Mureakuhassa ei muka autettaisi ketään.
Harvalla on aikaa ja jaksamista tehdä sulle räätälöityjä koodeja. Jos et rupee itse opiskelemaan niin olet koko loppu ikäs muitten armoilla. Ja eihän siitä tulis yhtään mitään.
Tämähän on se Antin koodivinkki vähän muunneltuna ja lisä kommenteilla.
Toivottavasti tämä nyt auttaa tietäsi ymmärryksen maailmaan.
<?php // yhdellä sivulla olevien viestien määrä(visetejä per sivu) $vps = 10; // luetaan osoitteen mukana tullut sivunumero if (isset($_GET['sivu'])) { $sivu = $_GET['sivu']; } $sivu = intval($sivu); // luetaan viestit tiedostosta taulukkoon käänteisessä järjestyksessä $viestit = array_reverse(file("linkit.dat")); //ELI TUOSSA PITÄIS OLLA SEN TIEDOSTON NIMI JOSSA SULLA ON KAIKKI NE LINKIT KIRJOTELTUNA. JOS HALUAT UUSIMMAN LINKIN ALAS NIIN POISTA TUO array_reverse. // selvitetään viestien määrä $maara = count($viestit); // luodaan sivunumerolista, jos sivuja on useampia if ($maara > $vps) { echo "<p>"; for ($i = 0; $i < $maara / $vps; $i++) { // tulostetaan pystyviivat sivunumeroiden väliin if ($i <> 0) { echo " | "; } // jos tämä sivu näytetään, tulostetaan sivun numero lihavoituna if ($sivu == $i) { echo "<b>".($i + 1)."</b>"; // muussa tapauksessa luodaan linkki toiselle sivulle } else { echo "<a href=\"{$_SERVER['PHP_SELF']}?sivu={$i}\">".($i + 1)."</a>"; } } echo "</p>"; } // tulostetaan sivulla olevat viestit oikeasta kohdasta alkaen //TÄMÄ FOR-LAUSE ON SIVUTUKSEN PERUSTA. KUN SULLA ON NE LINKIT ENSIKIS LUETTU TAULUKKOON NIIN TÄMÄ JAKAA NE PERIAATTEESSA OSIIN. $i ON RIVI JOLTA ALOTETAAN LUKEMISTA JA SITÄ JATKETAAN NIIN KAUAN ETTÄ SIVULLE ON TULLUT $vps VIETIÄ. for ($i = $sivu * $vps; $i < $sivu * $vps + $vps; $i++) { // varmistetaan, että viimeisellä sivulle ei tule ylimääräistä if ($i < $maara) { // tulostetaan viestin tiedot yksinkertaisesti muotoiltuna $tiedot = explode(">", $viestit[$i]); $alue=$tiedot[0]; $nimi=$tiedot[1]; $osote=$tiedot[2]; $kuvaus=$tiedot[3]; //TÄHÄN SITTEN KAIKKI ROSKA JONKA HALUAT SIVUTKUSEEN MUKAAN. ESIM. echo "<a href=\"".$osote."\">".$nimi."</a> ".$kuvaus."<br>"; //ELI TUOLLAISIA SIVU KIRJOTTELEE TÄSSÄ TAPAUKSESSA 10KPL SIVULLE. } } ?>
Ylipäätänsä kannattaa tutustua taulukoiden ja for lauseen käyttöön. ne on tässä sivutuksessa pääasemassa.
https://www.ohjelmointiputka.net/oppaat/opas.php?tunnus=phpj2
https://www.ohjelmointiputka.net/oppaat/opas.php?tunnus=phpj3
niin ja kannattaa vaikka imuroida php opas php.net:istä, sieltä löydät kaikki php:ssä käytetyt funktiot. Kannattaa ottaa vaikka tavaks, että aina kun näet koodivinkissä uuden funktion tsekkaat sen oppaasta. Ehkä et heti opi sen funktion käyttöä mutta ainakin mieleen jää mitä kaikkea php:llä voi tehdä.
Kiitos. Tuo auttoi kummasti. Itse kirjoitin vastaavan jo aikaisemminkin, mutta en saanut sitä toimimaan ja se oli vain pelkkä kahden koodin yhteenliittäminen ilman, että se toimisi... kuin koittaisi yhdistää lehmän ja voikukan :P
EDIT:
Mitenkä mä oikein saan nuo tekstit pienemmiksi, kun minulla oli ennen käytössä sivun alussa määrittelyt:
<style type="text/css"> body { font-family:;font-size:9px; } table { font-size:9px; } </style>
ja melkein lopussa
echo "</table>\n";
niin nyt tuo ei toimikkaan, kun minä tungen sen sivuilleni ja käytän tuota koodia, jossa on tuo sivutus mukana vaan ne sivun oikeassa reunassa olevat boxit siirtyvät sivulla alas heti sinne tekstin perään vaikka niiden kuuluisi olla tekstien oikealla puolella.
juhaz kirjoitti:
Mitenkä mä oikein saan nuo tekstit pienemmiksi
Poistamalla itse sivulta kaikki fonttimäärittelyt ja säätämällä selaimen asetuksista mieleisesi fontin.
Ihan oikeasti, älkää yrittäkö pakottaa jotain mikrofonttia veppisivuille, se on ilkeää, aivan kuin sanoisi kävijälle "Haista #¤&%! Sinähän et tätä tekstiä lue!"
Katsopa sivun lähdekoodia ja tutki siitä mikä mättää, siinä näet pelkkää html koodia niin on helpompaa ehkä. Luultavasti oot vaan tehny jonku pikku virheen.
Aihe on jo aika vanha, joten et voi enää vastata siihen.