Minulla on koodi
<?php foreach(file('bannatut.txt') as $ip) { if (trim($ip) == $_SERVER['REMOTE_ADDR']) exit('Sinulla on porttikielto'); } ?>
ja haluaisin tuohon 'Sinulla on porttikielto' kohtaan laittaa include käskyn. Jos sen kirjoittaa ' ja ' merkkien sisään, se printtaa koodin sivulle, jos niitä ei laita, ei tapahdu mitään.
Miten saan siihen include käskyn?
Mikset vain ohjaa bannattuja uudelle sivulle?
EDIT: Tai sitten echo readfile("sinut_on_bannattu.html");
Mutta siinä sinut_on_bannattu.html-tiedostossa ei vissiin voi käyttää PHP-koodia.
Voisihan sen tehdä sillälaillakin :)
Kiitos
Rocceri kirjoitti:
Minulla on koodi...
Miten saan siihen include käskyn?
Näin:
<?php foreach(file('bannatut.txt') as $ip) { if (trim($ip) == $_SERVER['REMOTE_ADDR']) include('tiedosto.php'); exit(); } ?>
Joo, tää on paljon parempiiii ;)
Grez kirjoitti:
Rocceri kirjoitti:
Minulla on koodi...
Miten saan siihen include käskyn?Näin:
<?php foreach(file('bannatut.txt') as $ip) { if (trim($ip) == $_SERVER['REMOTE_ADDR']) include('tiedosto.php'); exit(); } ?>
Taitaa tuosta uupua aaltosulkeita. Kas näin
Toimii ilman aaltosulkuja niin kauan kun koodia suoritetaan vain yks rivi ehdon jälkeen http://www.w3schools.com/php/php_if_else.asp .
TeNDoLLA kirjoitti:
Toimii ilman aaltosulkuja niin kauan kun koodia suoritetaan vain yks rivi ehdon jälkeen http://www.w3schools.com/php/php_if_else.asp.
Mutta siinä on kaksi, include(); ja exit(); ?
Eli ymmärtääkseni se menee niin, että se eka rivi sen ehdon jälkeen suoritetaan jos ehto täyttyi ja sen jälkeen tulevat rivit aina jokatapauksessa siitä huolimatta, vaikka ehto ei olisikaan täyttynyt. Joten tuo kyllä toimii, mutta jos halutaan suorittaa useempi rivi ehdon täyttyessä niin tarvitaan aaltosulut. Eli tässä tapauksessa tuo exit(); suoritetaan siis aina täytty ehto tai ei. Eli hieman huonosti ilmaisin tuon, että "koodia suoritetaan vain yks rivi", koodiahan kyllä suoritetaan eteenpäin, mutta se että riippuuko se ehdosta vai ei on eri asia.
Tässähän alunperin haettiin sitä exittiä silloin, kun ehto täyttyy — siispä: ei toimi (halutulla tavalla).
Niin siis tosiaan tarkoitukseni oli laittaa versio, missä olisi ne aaltosulut. Nyt vaan editoin koodia lainaus-ikkunassa ja tunkasin sen yhden rivin sinne väliin katsomatta tarkemmin -> pieleen meni.
Eli Kinnalan vastaus on se mitä tarkoitin.
Joo, en kyllä itekkään huomannut ennen Kinnalan kommenttia. Testailin aluksi vaan tyhjällä sivulla, niin tuo Grezin toimi mahtavasti, mutta sitten kun sivuilleni oikein laitoin, niin hävis sisältö.
Aihe on jo aika vanha, joten et voi enää vastata siihen.