Font si culoare scris in scripturile Lavalair

In acest articol voi detalia o metoda pentru a implementa fonturi si culori pentru scrierea de PM-uri, alerte si alte tipuri de texte postate pe site.

Aceasta metoda functioneaza si pe versiuni WML, si pe versiuni HTML, iar pentru o functionare corecta e necesar sa fie prezente Bcodurile BB clasice din Lavalair.

Mentionez faptul ca fonturile si culorile in ordinea setata au fost copiate de pe site-ul http://fantezia.com.

Pentru inceput in formularul de unde se transmite textul (posta.php?action=sendpm), se pot pune liniile de cod:
//Inceput cod:
echo'<select name="font">
<option value="0">normal</option>
<option value="1">inclinat</option>
<option value="2">ingrosat</option>
<option value="3">subliniat</option>
</select>
<select name="culoare">
<option value="0">normal</option>
<option value="1">Blue</option>
<option value="2">BlueViolet</option>
<option value="3">Chartreuse</option>
<option value="4">CornflowerBlue</option>
<option value="5">Crimson</option>
<option value="6">DarkGoldenRod</option>
<option value="7">DarkOrange</option>
<option value="8">DeepPink</option>
<option value="9">DodgerBlue</option>
<option value="10">ForestGreen</option>
<option value="11">Fuchsia</option>
<option value="12">MediumVioletRed</option>
<option value="13">OliveDrab</option>
<option value="14">OrangeRed</option>
<option value="15">Orchid</option>
<option value="16">Red</option>
<option value="17">RoyalBlue</option>
<option value="18">YellowGreen</option>
</select>
';
//Sfarsit cod.

In caz ca versiunea e WML, se pun si liniile urmatoare alaturi de cele asemanatoare cu ele, mai precis in interiorul tagului <go>:

//Inceput cod:
echo'<postfield name="font" value="$(font)" />
<postfield name="culoare" value="$(culoare)" />
';
//Sfarsit cod.

Apoi in actiunea din care se face inserarea PM-ului in baza de date (postaproc.php?action=sendpm), se pune setul de linii ce urmeaza:

//Inceput cod:
//Se declara variabila fontului:
$font=$_POST['font'];
//Se declara fonturile intr-un array, prima casuta e goala, avand cheia 0 asociata:
$fonturi=array('','i','b','u');
//Se declara deschiderea fontului:
$font1='';
//Se declara inchiderea fontului:
$font2='';
//Verifica daca este ales vre-un font mai mare de 0 si completeaza variabilele setate:
if($font>0)
{
//Se declara deschiderea fontului:
$font1='['.$fonturi[$font].']';
//Se declara inchiderea fontului:
$font2='[/'.$fonturi[$font].']';
}
//Se declara variabila culorii postate:
$culoare=$_POST['culoare'];
//Se declara culorile intr-un array, prima casuta e goala, avand cheia 0 asociata:
$culori=array('','#0000FF','#8A2BE2','#7FFF00','#6495ED','#DC143C','#B8860B','#FF8C00','#FF1493','#1E90FF','#228B22','#FF00FF','#C71585','#6B8E23','#FF4500','#DA70D6','#FF0000','#4169E1','#9ACD32');
//Se declara deschiderea culorii:
$culoare1='';
//Se declara inchiderea culorii:
$culoare2='';
//Verifica daca este aleasa vre-o culoare mai mare de 0 si completeaza variabilele setate:
if($culoare>0)
{
//Se declara deschiderea culorii:
$culoare1='[font='.$culori[$culoare].']';
//Se declara inchiderea culorii:
$culoare2='[/font]';
}
//Se defineste variabila $pmtext impreuna cu fontul si culoarea in cazul in care sunt setate:
$pmtext=$font1.$culoare1.$pmtext.$culoare2.$font2;
//Sfarsit cod.

Pentru alte pagini unde se vrea implementata aceasta metoda, se inlocuieste variabila $pmtext cu variabila prezenta in formularul acelei actiuni.

PS. In cazul in care culorile nu functioneaza, se adauga in functia getbbcode linia:
$text=preg_replace('/\[font\=(.*?)\](.*?)\[\/font\]/is','<font style="color:$1">$2</font>',$text);

PS2. In actiuni in care este afisata doar o portiune din text (EX: posta.php?action=main), pentru a elimina codurile BB produse de aceasta facilitate, se inlocuieste linea cu functia substr, functie care extrage primele (de obicei 15) caractere din PM astfel:
Linia:
$pmdet=substr($pmtext,0,15);
Cu linia:
$pmdet=substr(str_replace(array('[b]','[u]','[i]','[/b]','[/u]','[/i]'),array('','','','','',''),preg_replace('/\[font\=(.*?)\](.*?)\[\/font\]/is','$2',$pmtext)),0,15);

4 gânduri despre „Font si culoare scris in scripturile Lavalair


    1. E posibil să nu-l fi implementat corect, sau să fie anumite interferențe cu CSS-ul. Nu mă pot pronunța la așa ceva, deoarece sunt nevăzător. Poți să verifici dacă apare în sursa paginii, și dacă apare, atunci nu ține de script, ci de CSS.


  1. Am si eu o problema
    Am facut un chat lavalair pe hi2.ro
    Baichat.hi2.ro….am dat asa un nume pentru teste sa vad cum functioneaza
    In primul rand daca ma inregistrez nu am probleme
    In al doilea rand priblema este ur.atoarea..
    Nu ma pot conecta cu nici un cont facut sau existent nici cu cel de admin
    Imi da mesajul acest nume() nu exista sau a foat sters.te rog incearca mai tarziu cu mai mare atentie..
    Cum rezolv?de unde este problema?
    Mentionez ca pe telefoane imi da eroare 404..nu lam inregistrat google..
    http://baiwap.hi2.ro

Lasă un răspuns