Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Rivinvaihto php:n luomaan tekstitiedosttoon

karvinen [22.07.2005 13:54:50]

#

Alla oleva koodi tallentaa ip osoitteet textitiedostoon, mikä luodaan päivämäärän mukaan.

Ip osoitteet tulevat peräkkäin ja olisi tarkotus saada jokainen omalle rivilleen.

Johonkin väliin siis pitäisi saada \n ?

Kokeilin seuraavaa:
fwrite($avaus, \n, $ip);
Mutta ei toiminut noin...

$ip = $_SERVER['REMOTE_ADDR'];
$tiedosto = date("d_m_y");
$avaus = fopen("ip/$tiedosto.txt","a");
fwrite($avaus, $ip);
fclose($avaus);

kayttaja-2791 [22.07.2005 13:59:12]

#

No vaihtoehtoja on useita. Voit liittää rivinvaihdon osaksi IP:tä:

$ip = $_SERVER['REMOTE_ADDR']."\n";

Tai voit vain kirjoittaa ip:n ja perään rivinvaihdon:

fwrite($avaus, $ip."\n");

Kuten huomaat pisteellä voi liittää stringejä toisiinsa helposti. Voit toki myös kirjoittaa rivinvaihdon uudella fwritella, mutta edellä mainitut keinot ovat mielestäni parempia.

Edit:
Kenoviivat olivat väärinpäin...

karvinen [22.07.2005 14:05:56]

#

Noilla tulee ip osoitteiden väliin vaan tuo /n merkki.

Palvelin on siis win+apache+php jos tolla vaikutusta.

192.168.0.2/n192.168.0.2/n192.168.0.2

EDIT: näyttikin tuo windows vaativan...

$ip = $_SERVER['REMOTE_ADDR']."\r\n";

kayttaja-2791 [22.07.2005 14:10:36]

#

Ok, siis korvaa Unixin rivinvaihto "\n" Windowsin rivinvaihdolla "\r\n". Tosin hyvä editori osaa kyllä näyttää Unixinkin rivinvaihdot Windowsissa.

Lisää aiheesta:
http://wiki.mureakuha.com/wiki/Rivinvaihtomerkit_eri_järjestelmissä

karvinen [22.07.2005 14:27:33]

#

Kiitokset taas.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta