Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> ereg_replace ???
kabukiman
post 8.06.2002, 10:42:13
Post #1





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 17.03.2002
Skąd: zamość

Ostrzeżenie: (0%)
-----


Nadszedł czas na nauczenie się czegoś bardziej skompikowanego biggrin.gif Powiedzmy, że mam księgę gości i chcę, aby przy wyświetlaniu buźki (znaczki smile.gif winksmiley.jpg itp.) zamieniały się na odpowiednie gify. Czy powinienem użyć do tego funkcji ereg_replace, gdyż nie bardzo działa.

Wpis zawarty jest w zmiennej $tresc, próbowałem tak:

echo ereg_replace (":P","<img src="jezyk.gif">", $tresc");

i nie zamienia.

Co robię źle ?
Go to the top of the page
+Quote Post
castor
post 8.06.2002, 10:47:05
Post #2





Grupa: Zarejestrowani
Postów: 456
Pomógł: 0
Dołączył: --

Ostrzeżenie: (0%)
-----


Cytat
Czy powinienem użyć do tego funkcji ereg_replace, gdyż nie bardzo działa.

zdecydowanie NIE...
...uzyj str_replace.. anie eregi bo nie uzywasz tu zadnego wyrazenia regularnego ..wiec str_replace bedzie szybsze i nie obciazy tak parsera smile.gif
Cytat
Wpis zawarty jest w zmiennej $tresc, próbowałem tak:
echo ereg_replace (":P","<img src="jezyk.gif">", $tresc");

i nie zamienia.
Co robię źle ?

na koncu zaraz po $tresc masz " a nie powinno go tam byc:)

zrob tak:
Kod
echo str_replace(": )","<img src="jezyk.gif">",$tresc);


--------------------
pozdrawiam
CASTOR
Go to the top of the page
+Quote Post
kabukiman
post 8.06.2002, 11:19:41
Post #3





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 17.03.2002
Skąd: zamość

Ostrzeżenie: (0%)
-----


Kurczę, aż tak szybkiej odpowiedzi się nie spodziewałem tongue.gif

A teraz jak zrobić dużo podmian w jednej linijce, tzn


Kod
echo str_replace(": )","<img src="smile.gif">",$tresc);


i w tym samym momencie

Kod
echo str_replace(":(","<img src="sad.gif">",$tresc);


btw. czy to nie spowoduje drastycznego spadku szybkości działania skryptu?
Go to the top of the page
+Quote Post
castor
post 8.06.2002, 11:40:01
Post #4





Grupa: Zarejestrowani
Postów: 456
Pomógł: 0
Dołączył: --

Ostrzeżenie: (0%)
-----


nawet tego nie poczujesz smile.gif
Kod
function wymienSmiles($text){

   $smiles[0]=": (";

   $smiles[1]=": )";

   $smiles[2]=": D";



   $linki[0]='<img src="smiles.gif">';

   $linki[1]='<img src="smiles.gif">';

   $linki[2]='<img src="smiles.gif">';



    for($i=0;$i<count($smiles);$i++;){

       $text=str_replace($smiles[$i],$linki[$i],$text);

    }

     returne $text;

}

a teraz:
Kod
echo wymienSmiles($text);


oczywiscie tablice z linkami i smilesami musisz se uzupelnic :wink:


--------------------
pozdrawiam
CASTOR
Go to the top of the page
+Quote Post
kabukiman
post 8.06.2002, 12:25:00
Post #5





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 17.03.2002
Skąd: zamość

Ostrzeżenie: (0%)
-----


taaaaa...

dzięki, działa, działa!!!

tylko musiałem jeden parse error usunąć...

ale jestem niewymownie wdzięczny, męczyłem się z tym od kilku dni.
Go to the top of the page
+Quote Post
castor
post 8.06.2002, 12:33:18
Post #6





Grupa: Zarejestrowani
Postów: 456
Pomógł: 0
Dołączył: --

Ostrzeżenie: (0%)
-----


no tak return a nie returne :wink:


--------------------
pozdrawiam
CASTOR
Go to the top of the page
+Quote Post
kryr
post 11.06.2002, 17:12:35
Post #7





Grupa: Zarejestrowani
Postów: 268
Pomógł: 0
Dołączył: --
Skąd: kielce

Ostrzeżenie: (0%)
-----


[quote="castor"]nawet tego nie poczujesz smile.gif
Kod
function wymienSmiles($text){

   $smiles[0]=": (";

   $smiles[1]=": )";

   $smiles[2]=": D";



   $linki[0]='<img src="smiles.gif">';

   $linki[1]='<img src="smiles.gif">';

   $linki[2]='<img src="smiles.gif">';



    for($i=0;$i<count($smiles);$i++;){

       $text=str_replace($smiles[$i],$linki[$i],$text);

    }

     returne $text;

}

[quote]
a nie lepiej uzyc tablicy ascocjacyjnej? smile.gif
Go to the top of the page
+Quote Post
castor
post 11.06.2002, 18:20:57
Post #8





Grupa: Zarejestrowani
Postów: 456
Pomógł: 0
Dołączył: --

Ostrzeżenie: (0%)
-----


Cytat
a nie lepiej uzyc tablicy ascocjacyjnej? smile.gif


kazdy robi jak lubi :wink:

zreszta nie powinno sie uzywac specjalnych znakow jak:;,. itd w polach okreslajacych indexy :wink:


--------------------
pozdrawiam
CASTOR
Go to the top of the page
+Quote Post
GeoS
post 12.06.2002, 08:16:42
Post #9





Grupa: Zarejestrowani
Postów: 602
Pomógł: 0
Dołączył: --
Skąd: W - WA -> GRO

Ostrzeżenie: (0%)
-----


No wlasnie - tablice. Ja polecam do tego celu bardzo przyjemna funkcje strtr() smile.gif


--------------------
Zanim zadasz pytanie, zawsze wczesniej zajrzyj do manuala ( pl.php.net/manual/pl/ ).
Szukasz skryptow - www.hotscripts.com
Go to the top of the page
+Quote Post
castor
post 12.06.2002, 11:36:51
Post #10





Grupa: Zarejestrowani
Postów: 456
Pomógł: 0
Dołączył: --

Ostrzeżenie: (0%)
-----


a ty myslisz ze wtle to w czym sa te dane przechowywane?

napisz to z strtr() i zobaczymy jakie to przejrzyste bedzie :wink:

zreszta ta fuknkcja nadaje sie do wymiany pojedynczych znakow a jesli chcesz wymieniac jakies CiagiZnakow to tez musisz jako parametr podac tablica z parami (asociacyina) :wink:


--------------------
pozdrawiam
CASTOR
Go to the top of the page
+Quote Post
GeoS
post 13.06.2002, 08:01:10
Post #11





Grupa: Zarejestrowani
Postów: 602
Pomógł: 0
Dołączył: --
Skąd: W - WA -> GRO

Ostrzeżenie: (0%)
-----


Castor - co sie tak od razu rzucasz :?: Troche luzu.

Zgadza sie, ze twoj kod jest az do bulu czytelny, tylko cechuje sie duza (zbyteczna :!: ) objetoscia :!: To nie moj problem, ze ktos sie bierze za php i nie jest sobie w stanie w czytelny sposob zapisac takiej tablicy.

Moje rozwiazanie jest szybsze z tego wzgledu, ze nie odpalam petli do tworzenia i zamieniania tresci, tylko ta tablice mam od razu.

PS Chyba nie stanowi problemu (i nie zmniejsza czytelnosci) zapis tablicy, np. w taki sposob:
Kod
$sign = array("+"=>'',

"%22"=>'',

"%23"=>'',

"%24"=>'',

...);

I w czym problem :?:


--------------------
Zanim zadasz pytanie, zawsze wczesniej zajrzyj do manuala ( pl.php.net/manual/pl/ ).
Szukasz skryptow - www.hotscripts.com
Go to the top of the page
+Quote Post
castor
post 13.06.2002, 11:31:40
Post #12





Grupa: Zarejestrowani
Postów: 456
Pomógł: 0
Dołączył: --

Ostrzeżenie: (0%)
-----


Cytat
Castor - co sie tak od razu rzucasz :?: Troche luzu.

8)

Cytat
Zgadza sie, ze twoj kod jest az do bulu czytelny, tylko cechuje sie duza (zbyteczna :!: ) objetoscia :!: To nie moj problem, ze ktos sie bierze za php i nie jest sobie w stanie w czytelny sposob zapisac takiej tablicy.

:?:
Cytat
Moje rozwiazanie jest szybsze z tego wzgledu, ze nie odpalam petli do tworzenia i zamieniania tresci, tylko ta tablice mam od razu.


Ooo tak... a co z nia zrobisz jesli moge zaopytac?...
podasz jako argument do strtr() ...tak?..
...to moze wyjasnij mi jak strtr() przeleci HashMape bez petli questionmark.gifquestionmark.gif

"czego ty nie robisz nie znaczy ze nie jest robione"

Cytat
PS Chyba nie stanowi problemu (i nie zmniejsza czytelnosci) zapis tablicy, np. w taki sposob:
Kod
$sign = array("+"=>'',

"%22"=>'',

"%23"=>'',

"%24"=>'',

...);


I w czym problem :?:
´
ty mi powiedz :wink:


--------------------
pozdrawiam
CASTOR
Go to the top of the page
+Quote Post
DYRA
post 26.10.2002, 21:42:16
Post #13





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 24.03.2002
Skąd: Sosnowiec

Ostrzeżenie: (0%)
-----


hi
sorki za "odswierzenie" tematu, ale niemoge sobie poradzic sad.gif
jak do tego kodu dodac zamiane znakow na obrazki ( $tekst = str_replace(":)","<img SRC=smile.gif",$ekst); )
kurde nieumiem sobie z tym poradzic
Cytat
<?
 $kiedy=date("d.m.Y");

if((!$wpis)&&(!$who)) {
 echo "<p>Prosze wpisać dane snitch.gif</p>";
 exit();
}

if(!$wpis) {
 echo "<p>Wpisz wiadomosc !! tongue.gif</p>";
 exit();
}

if(!$who) {
 echo "<p>Podpisz sie pod tym co piszesz snitch.gif</p>";
 exit();
}
if($wpis!="") {
   $plik="kg/ksiega.txt";
    if(file_exists($plik))  
   {
    $wpis="<p style="color:#A9A9A9;font-size:10pt; font-family:verdana, tahoma,helvetica;"><small><i>$kiedy</i></small><br>&nbsp;$wpis<br><a HREF="mailto:$mail"><b>/$who</b></a> <small>($REMOTE_ADDR)</small><br><A HREF="$www"><u>$www</u></A></p>";
    $fid=fopen($plik,"r+");
    $wpis=$wpis. fread($fid,filesize($plik));
    rewind($fid);
    fputs($fid,$wpis);
    fclose($fid);
   }
   else  
   {
    $fid=fopen($plik,"w");
    $wpis="<p style="color:#A9A9A9;font-size:10pt; font-family:verdana, tahoma,helvetica;"><small><i>$kiedy</i></small><br>&nbsp;$wpis<br><a HREF="mailto:$mail"><b>/$who</b></a> <small>($REMOTE_ADDR)</small><br><A HREF="$www"><u>$www</u></A></p>";
    fputs($fid,$wpis);
    fclose($fid);
    }
 echo "<p style="font-size: 10pt; color:#A9A9A9;">Thx za wpis snitch.gif";
 echo "<p><a href="main.php">Back to main page.</a>";
}
?>

jest to prosta ksiega gosic smile.gif
z gory thx
pozdro 4 all


--------------------
dopiero sie ucze :)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.07.2025 - 20:54