Jak napisze enter to zmienia się na <br>


(Sebekzosw) #1

Proszę kod dla ułatwienia:

'viewpage.php?page_id=2

<?php


echo "

".$settings['sitename']."

Treść:

"; ?>[/code] [b]'viewpage.php?page_id=1[/b]
[code]<?php $data = date("d-m-Y"); $czas = date("H:i:s"); $ip = $_SERVER['REMOTE_ADDR']; extract($_REQUEST); $napis="News został wysłany"; $dataloc="news.txt"; $zobacz="$napis"; $read=fopen($dataloc, "r"); $fileread = fread($read, filesize($dataloc)); fclose($read); fwrite (fopen("news.txt", "r+"), "\n||$czas||$data||$ip||".$userdata['user_name']."||$koment $fileread"); fclose(fopen("news.txt", "a+")); echo ("$zobacz"); ?>
Ten kody przystosowałem do najnowszego PHP-Fusion. Chciałbym, że jak napisze na stronie viewpage.php?page_id=2 treść i użyje enter, np.:

Treść 1


Treść 2

itd.

i kliknę Dodaj to zapisze mi się tekst tak:

||godzina||data||ip||nick||Treść 1

Treść 2
itd.

albo inaczej, żeby tekst był w 1 linijce a zamiast enteru znak który pokazuje zejście do niższej linijki. Mógłby mi ktoś napisać, jak to zmienić, żeby było tak jak ja chce. To działa na 100% na PHP-Fusion więc proponuje na nim przetestować. P.S.: Mam tu kod skryptu do wyświetlania zawartości z pliku news.txt w którym znajdują się wpisy:

<?

if($pos==""){$pos="0";}

else{$pos=$pos+$next;}



if($ilepoz==""){$ilepoz=$max_news;}

else{$ilepoz=$ilepoz+$next;}


$plk = file("news.txt");

for ($index=$pos; $index < $ilepoz; $index++)

{ $g = split("\|", chop($plk[$index]));

$split = explode("||", $plk[$index]);

$count++;


//wyświetlamy elemeny tablicy jeżeli nie są puste

if(($split[0]!="") && ($split[1]!="")){

echo "

$split[0]||$split[1]||$split[2]||$split[3]$split[4]

"; }

}




?>[/code]

Ale w PHP-Fusion nie chce się wyświetlić zawartość tego pliki, dlaczego?


(Airborn) #2

o ile dobrze zrozumiałem to musisz zamienić znaki nowej linii /n na znaki

możesz do tego użyć funkcji nl2br


(Sebekzosw) #3

Wszystko spoko, ale jak zrobić, że zamiast /n zapisze mi się

Jak wprowadzić tą funkcje nl2br do tego kodu?

Mógłbyś mi pomóc?

Z góry dzięki.


(Airborn) #4
$koment = nl2br($koment);

dodaj to gdzieś w pliku

przed


(Sebekzosw) #5

Działa to, ale jak zapisze coś to wygląda to tak:

||07:58:11||11-02-2007||83.13.106.146||sebekzosw||Alexandria




milo mi

a chciałbym, żeby wyglądało tak:

||07:58:11||11-02-2007||83.13.106.146||sebekzosw||Alexandria

milo mi

Da się to naprawić?


(Fiołek) #6

Nie powinno no ale jak tak jest to spróbuj tego:

$koment=str_replace(array('\n', '\n\r', '\r'), '', $koment);

Powinno pomóc.

Umieść to po nl2br a przed fwrite.


(Sebekzosw) #7
||18:22:23||12-02-2007||83.13.106.146||sebekzosw||Alex




s


s


s




s

Tak się to zapisuje :confused: Może jest zły kod :confused:

<?php





$data = date("d-m-Y");

$czas = date("H:i:s");

$ip = $_SERVER['REMOTE_ADDR'];

$komen = nl2br($koment);

$kome=str_replace(array('\n', '\n\r', '\r'), '', $komen);


extract($_REQUEST); 

$napis="News został wysłany";

$dataloc="news.txt";



$zobacz="$napis";


$read=fopen($dataloc, "r");

$fileread = fread($read, filesize($dataloc));

fclose($read);



fwrite (fopen("news.txt", "r+"), "\n||$czas||$data||$ip||".$userdata['user_name']."||$kome $fileread");


fclose(fopen("news.txt", "a+"));




echo ("

$zobacz"); ?>[/code]

Sprawdźcie, proszę...


(Fiołek) #8

A to po co?

U mnie to działa poprawnie.