Księga Pytań

20.03.2006 - 0:12 - tester

moja droga do zamieszczenia emotikonek jest już opisana dokładnie niżej. Przy Twojej pomocy wszystko działa, ale ... chyba nie tak do końca: jak długo dodaje się emotikonki do wpisu, to wszystko działa, natomiast w KOMENTARZU do danego wpisu widoczne są wyłącznie emotikonki nie zawierające < czy też > . 
Czyli np. :) jest widoczne i zamienia się na grafikę, natomiast np. <lol> nie ...
Czy masz jakąś radę ? 


20.03.2006 - 11:28 - admin

Moją podstawową radą było to, żeby uprościć zamianę tych emotikonek. Podałem jedną linię, którą należy wprowadzić do vain.php zamiast tych kilku, które Ty wprowadziłeś. No i warto być może w razie czego zamieniać zarówno < jak i &...


20.03.2006 - 11:29 - admin

Cytuję:

A tych wszystkich linii być nie musi!

$zmi3=str_replace(":>", "<IMG SRC='../images/emotikony/ostr.gif' border=0>", $zmi3);

Dodane na samym końcu (linia po linii - każda linia to jeden emotikon) przed znakiem zamknięcia ?> wystarczy.


20.03.2006 - 12:21 - tester

Ja już dawno zmieniłem jak zalecałeś, mam linia po linii bez żadnych ekstrasów (jedynie dodany parametr title obok border), a teraz dodałem na wszelki wypadek drugą linię, czyli jest teraz raz z > i raz z &... (patrz niżej):
$zmi3=str_replace(":&gt;", "<IMG SRC='../images/emotikony/ostr.gif' border=0 title=':&gt;'>", $zmi3);
$zmi3=str_replace(":>", "<IMG SRC='../images/emotikony/ostr.gif' border=0 title=':>'>", $zmi3);

Ale niestety przy dodawaniu komentarza do istniejącego już wpisu emotikony zdefiniowane przy pomocy < > nie zamieniają się, a "proste", typu :), :P itd. zamieniają się ...
Czy to nie ma związku np. z zabezpieczeniami, że wpisy przechodzą przez zabezpieczenie, żeby ktoś nie wykonał za pośr. wpisu jakiegoś kodu, natomiast komentarze idą "inną drogą" ? 


20.03.2006 - 14:09 - tester

zrobiłem nast. doświadczenie przy dodawaniu komentarza do istniejącego już wpisu:

po krótkim tekście wstawiłem
:&gt; (GIF ukazał się !)
oraz
:> (NIE ma GIF'a ...)


20.03.2006 - 15:14 - admin

Wpisy i komentarze idą podobną drogą.

Ale zróbmy test:

<emotek1> <emotek2> <emotek3> <emotek> :P (to ostatnie nie powinno się zaemotkować)


20.03.2006 - 15:33 - admin

Ok, jest pewna nieścisłość w kodzie. Może to poprawię. Na razie sposób zamiany:

$zmi3=str_replace(chr(232)."piesek".chr(233), "<img src='emot/kotek.gif'>", $zmi3);

Czyli zrobić podwójne zamiany (raz dla lt gt a raz dla pary chr(232) i chr(233)).

Potem dokładnie to sprawdzę. Teraz, niestety, mam inne sprawy na głowie. Ale chodzi. :)


20.03.2006 - 15:39 - tester

zrobiłem test (kopiując ostatnią linijkę, choć wiem, że nia mam takich emotek jak np. <eemotek1> itd.
ALE:
:P zamieniło się na GIF'a ! 


20.03.2006 - 15:39 - admin

Wydaje się wręcz, że to jakaś pozostałość po starym kodzie. :) Tak bywa gdy się skrypt rozrasta. Poprawka będzie zapewne w nowej wersji skryptu.


20.03.2006 - 15:40 - tester

widocznie coś zmieniłeś, bo ja teraz widzę TWOJE gify ! :)


20.03.2006 - 15:42 - admin

$zmi3=str_replace(chr(232)."piesek".chr(233), "<img src='emot/kotek.gif'>", $zmi3);

Chodzi o to, żeby chr(232) dać zamiast "<" a chr(233) dać zamiast ">". Ponieważ chr() to funkcja php, nie umieszczasz jej w nawiasach, tylko dodajesz w przedstawiony sposób. Innymi słowy - powyższy przykład zamieni <piesek> na img src "emot/kotek.gif".


20.03.2006 - 15:43 - admin

Więc jeszcze raz - ja cały czas testuję i zmieniam. :) Żeby zaradzić Twojemu problemowi emotikonowemu. :) Oprócz zamiany lt i gt dodajesz takie same zamiany dla powyższych. Albo... czekasz na nową wersję skryptu. :)


20.03.2006 - 16:01 - tester

nie znam się zupełnie na php (no może już nie tak niezupełnie, bo dzięki księdze gości staram się coś nauczyć :). Dlatego poeksperymentuję. Przecież w nowej wersji skryptu chyba też ... nie będzie emotikonek ? 


20.03.2006 - 17:10 - tester

sprawdziłem na przykładzie, że działa wszystko wtedy, gdy w pliku vain.php na każdy emotikon mamy 2 linijki, jedną dla wpisów głównych, drugą dla dodawania komentarzy do istniejących już wpisów:

do gł. wpisów:
$zmi3=str_replace("&lt;serce&gt;", "<IMG SRC='../images/emotikony/serce.gif' border=0 title='<serce>'>", $zmi3);
dla komentarzy do gł. wpisów:
$zmi3=str_replace(chr(232)."serce".chr(233), "<IMG SRC='../images/emotikony/serce.gif' border=0 title='<serce>'>", $zmi3);


20.03.2006 - 17:54 - admin

Tak, w przypadku znaczków < i >.

W nowej wersji skryptu nie będzie wprawdzie emotikonów, ale zostanie poprawiona ta mała niedogodność. :)


20.03.2006 - 18:13 - tester

mnie ta mała niedogodność nie przeszkadza, najważniejsze, że DZIAŁA ! 
Serdeczne dzięki za pomoc ... (zwłaszcza, że udzieloną w tak nielubianym temacie jak emotikony w postaci grafik :)))).


20.03.2006 - 21:09 - admin

Cóż - rozwalają one tekst. Tekst jest ładny jak jest ładnie ułożony a emotikony go rozwalają.


20.03.2006 - 21:38 - admin

Teraz mały teścik

<a href="ala ma kota">ala ma kotka</a>
test... 2 
a to <emotek1>
to jest <emotek2> drugi jakiś
<emotek>


20.03.2006 - 21:42 - admin

W zasadzie działa... Nowa wersja będzie za 10 minut do zassania. Już nie trzeba operować na tych dziwnych wartościach (nawet nie zadziała).


21.03.2006 - 14:51 - tester

po aktualizacji nowej wersji kgengine wystarczy już tylko jedna linia / emotikon, ta opisana przeze mnie w komentarzu z 20.03.2006 - 17:10 (patrz wyżej), prawda ? 
Druga linia (ta z funkcją chr() już nie jest potrzebna)

Jeszcze raz dzięki


21.03.2006 - 22:38 - admin

Prawda. :) Wystarczy jedna linia - po to została zrobiona ta poprawka. :)

.:: powrót do forum ::.


 


Archiwum: [wyjście z archiwum] [3] [2] [1]

wpisow: 43, komentarzy: 153, odwiedzin: 156, dzisiaj: 13, wczoraj: 7

..:: admin login ::..

puchary, puchary sportowe, puchary okolicznociowe, medale, statuetki, trofeastroje sportowe, stroje pikarskieTumiki Rumia, auto-serwis, KAZ, mechanika pojazdowa, naprawa samochodwHeros, szkolenia, centrum szkoleniowe, kursy masau