Problem ze skryptem

0

Hej,

Na początek zaznaczam, że na razie niewiele miałem do czynienia z PHP, napisałem tylko jeden prosty skrypt do obsługi serwisu z cheatami do gier.

Napisałem sobie taki skrypcik, którego zadaniem jest wczytanie z podanego w adresie pliku (zmienna url) wszystkich linijek, zamiana określonych tekstów na obrazki i wypisanie całego pliku, już zmodyfikowanego:

<?
$url=escapeshellcmd($url);

$file=fopen($url,"r");

$x = 0;

while( !feof($file) ) { 
	$line[$x]=fgets($plik, 1000);
	$x++;
	$str = str_replace(":>","<IMG SRC="smilies/).gif" ALT="Smiley!">",$line);
	$str = str_replace(":-[","<IMG SRC="smilies/[.gif" ALT="Smiley!">",$str);
	$str = str_replace("]:->","<IMG SRC="smilies/]-).gif" ALT="Smiley!">",$str);
	$str = str_replace(":]","<IMG SRC="smilies/].gif" ALT="Smiley!">",$str);
	$str = str_replace("8-)","<IMG SRC="smilies/8).gif" ALT="Smiley!">",$str);
	echo $str;
}

fclose($file);
?>

A kiedy uruchamiam skrypt, dostaję tylko ArrayArrayArrayArray. Co ja robię źle?

Z góry dzięki,

Rookie One

0

$line[$x] - to jest właśnie ten array.

zdaje się, że zjadłeś [$x]:

$str = str_replace(":>","<IMG SRC="smilies/).gif" ALT="Smiley!">",$line[$x]);

a najprościej by było, jakbyś użył print_r i sam zobaczył, co ląduje w zmiennej $str.

[dopisane]
nie nie, to Ty zapomniałeś, bo to jest Twój skrypt.

0

Faktycznie, dość głupi błąd... [wstyd] Ale ty zapomniałeś jeszcze o jednym. :p Trzeba

$x++

przenieść po

$str = str_replace(":>","<IMG SRC="smilies/).gif" ALT="Smiley!">",$line[$x]);

bo inaczej będzie pobierał złą linię.

Dzięki! :-D

1 użytkowników online, w tym zalogowanych: 0, gości: 1