Olen saanut kyhättyä tällaisen koodin hieman muokkaamalla muualta netistä löytämiäni koodeja:
-------------------------------------------------
Tarkoituksena on siis listata pelit pelisivustolleni. Minulla on kysymys: Haluaisin, että kun osoitteeseen kirjoittaa tiedoston nimen perään esim. " ?luokka=ajo ", skripti näyttäisi tekstitiedostosta (pelit_db.txt) vain rivit, joissa luokka-kohdassa on "ajo". Tässä esimerkki:
pelin nimi|ajo
Tiedän, että siihen voi käyttää ".$_GET['luokka']." -koodia, mutta en tiedä, että miten koodi karsisi kaikki muut rivit pois, paitsi ne, joilla on tuo oikea luokka. Olen aivan php-aloittelija, joten toivoisin mahdollisimman selvää vastausta.
Olen todella kiitollinen kaikille jotka vastaavat tähän viestiin!
-------------------------------------------------
Tarkoituksena on siis listata pelit pelisivustolleni. Minulla on kysymys: Haluaisin, että kun osoitteeseen kirjoittaa tiedoston nimen perään esim. " ?luokka=ajo ", skripti näyttäisi tekstitiedostosta (pelit_db.txt) vain rivit, joissa luokka-kohdassa on "ajo". Tässä esimerkki:
pelin nimi|ajo
Tiedän, että siihen voi käyttää ".$_GET['luokka']." -koodia, mutta en tiedä, että miten koodi karsisi kaikki muut rivit pois, paitsi ne, joilla on tuo oikea luokka. Olen aivan php-aloittelija, joten toivoisin mahdollisimman selvää vastausta.
Olen todella kiitollinen kaikille jotka vastaavat tähän viestiin!
Vastaukset 5
Vanhimmat
pistät ton pelin tulostuksen iffin sisälle. Jotain tähän tyyliin vaikka:
if($_GET['luokka'] == $luokka)
{
// tähän tulostus silleen miten haluat
}
else
{
//tulostetaan peli
echo "";
echo "";
echo "";
echo "";
echo "";
echo "$nimi";
echo "$luokka";
echo "";
echo "";
}
En pysty testailemaan tässä tuota koodia, mut vähän pitää sentään muutaa... Kokeiles näin.
Eli jos tuota luokkaa ei ole annettu getissä, tulostuu kaikki. Jos luokka-get on annettu, tulostuu vain ne luokat, mitkä pitääkin.
if($_GET['luokka'] == "" || $_GET['luokka'] == $luokka)
{
//tulostetaan peli
echo "";
echo "";
echo "";
echo "";
echo "";
echo "$nimi";
echo "$luokka";
echo "";
echo "";
}
Ei toimi tuo. Näyttää vain pelit_db.txt -tiedoston viimeisen rivin pelin. Peli näkyy kuitenkin omassa luokassaan. Mikähän on vikana Onko tämä koodi nyt laitettu ihan oikein?
---------------------------------------
Nyt pääsin kotiin ja testasin tuon. Eli tuohon $luokka-stringiin tulee näköjään välilyönti aina loppuun, joten se pitää ottaa pois, jotta tuo if-lause toimii. Trim-funktio poistaa välilyönnit.
Korvaa:
$luokka = $tiedot[1];
näin:
$luokka = trim($tiedot[1]);
Kiitos todella paljon avusta! Nyt voin alkaa rakentamaan koko sivuston kasaan.