smileys en beveiliging van lengte woorden (PHP-newbie)

Plaats reactie
Spirit Wolf
Starter
Starter
Berichten: 8
Lid geworden op: 09 mei 2003, 20:48
Contacteer:

Hei,

ben dus pas bij skynet user base. Lijkt me een degelijke site om allerhande informatie te vinden.

Voor mijn eerste php uitdaging aan te gaan heb ik een guestbook zitten maken (allerhande tutorials zitten zoeken, en de beste beetjes eruit zitten halen). Na 2 à 3 dagen prullen werkt nu eindelijk alles. Behalve misschien dat die server vantijd niet goed wil werken. De carriage-return heb ik nu in mijn guestbook gekregen, maar ik zou er nog graag 2 dingen inzien, misschien dat iemand mij kan helpen.

1. Ik wil het onmogelijk maken dat mensen woorden kunnen maken die langer zijn dan 50 letters lang. Dit om mijn opmaak van de guestbook niet overhoop te helpen, want dan ziet het er nogal raar uit. Ik wil zoiets dat die na elke spatie kijkt hoeveel letters er staan en als er meer dan 50 letters staan, dat die er dan een spatie tussenplaatst.

2. Zou er graag ook smiley's in krijgen. Hoe moet ik te werk gaan?? Hoe steekt dit in elkaar???

Ik programmeer graag en maak graag alles zelf, dus zou het fijn vinden als jullie me niet zouden verwijzen naar installatieprogramma's en zo. Gewoon hoe het moet en hoe ik het best kan aanpakken. 't Is de bedoeling dat ik er wat uit leer.

Thnx
Bye
Grtz
Spirit Wolf
pleas visit www.kathleen.be.tf for my girlfriend
Gebruikersavatar
Pi R²
Elite Poster
Elite Poster
Berichten: 811
Lid geworden op: 03 jan 2003, 17:15
Locatie: Sint-Niklaas
Contacteer:

smileys ben ik toevallig ook juist bezig te integreren op mijne gastenboek.

Eerst moet ge met een javascriptje tekens als :- ) en :- ( in het tekstvak laten verschijnen. Ge zet gewoon een aantal smileykes waarop de mensen kunnen klikken, en als ze erop klikken treed er een javascriptje in werking waardoor er een smiley-code bij komt. Zo een scriptje vind je overal (haal het desnoods van deze site).

Dat laat je zo opslagen in je mysql database.

In de pagina waar de berichten opgevraagd worden, zet je er volgende code in:

Code: Selecteer alles

$db_bericht = het bericht dat uit de database komt ;

$db_bericht = preg_replace(":-)","<img src='smiley.gif>'", $db_bericht);

echo $bericht ;


waar :- ) staat, zet je de code die een bepaalde smiley vertegenwoordigd, "smiley.gif" vervang je door de smiley die bij dat teken hoort, en $db_bericht is de variabele waarin gesleutelt moet worden.

Per smiley moet je zo een regel invoegen. Eigenlijk wil deze regel zeggen : vervang "iets" door "iets anders" in een string "$x"
Lang Leve Mijn Eigen! Het geheim voor een lang leven: niet stoppen met ademen
Gebruikersavatar
Pi R²
Elite Poster
Elite Poster
Berichten: 811
Lid geworden op: 03 jan 2003, 17:15
Locatie: Sint-Niklaas
Contacteer:

Maar ik heb wel een eigenaardigheid tegen gekomen bij het goed zetten van mijn smileys:

ik gebruikt dus hetvolgende:

Code: Selecteer alles

preg_replace($te_veranderen, $nieuwe_tekst, $bericht);

// te_veranderen en nieuwe_tekst zijn arrays met de tekens voor smileys
//en de imagetags

$te_veranderen = array( ":-)",":-p", ":knipoog:")


maar ik heb gemerkt dat als ge tekstjes tussen 2 keer dezelfde tekens zet, dus bv. begint met : en eindigt met :, vb. ":knipoog:" , er met die dubbele punten geen rekening wordt gehouden. Als ik er dan nog een ander teken voorzet en er dus van maak wat hieronder staat, werkt het wel. Iemand een verklaring?

Code: Selecteer alles

$te_veranderen = array( ":-)",":-p", "#:knipoog:#")
Lang Leve Mijn Eigen! Het geheim voor een lang leven: niet stoppen met ademen
Spirit Wolf
Starter
Starter
Berichten: 8
Lid geworden op: 09 mei 2003, 20:48
Contacteer:

thnx, voor de uitleg.

dit kan toch ook nog voor berichten die al in de guestbook zaten hoop ik? Het is toch alleen bij het uithalen van de gegevens dat de vervanging gebeurd hoop ik.

anyway, waar zijn er eigenlijk mooie smileys te vinden???

bye
Grtz
Spirit Wolf
pleas visit www.kathleen.be.tf for my girlfriend
The Oddity
Elite Poster
Elite Poster
Berichten: 5008
Lid geworden op: 15 sep 2002, 17:58
Locatie: Belgium, Ghent
Contacteer:

Spirit Wolf schreef:anyway, waar zijn er eigenlijk mooie smileys te vinden???


Ge zou google maybe nen keer kunnen proberen:
smileys ingeven en searchen :p
http://www.google.com/search?sourceid=n ... &q=smileys
I love it when a plan comes together!
Gebruikersavatar
Pi R²
Elite Poster
Elite Poster
Berichten: 811
Lid geworden op: 03 jan 2003, 17:15
Locatie: Sint-Niklaas
Contacteer:

op www.smilies.nl vindt ge een paar hondert smilies op categorie gerangschikt.

Ja, smileys worden dus in de database als gewone :- ) tekens opgeslagen, pas bij het uitlezen worden die dan weergegeven als img-tags.
Lang Leve Mijn Eigen! Het geheim voor een lang leven: niet stoppen met ademen
Spirit Wolf
Starter
Starter
Berichten: 8
Lid geworden op: 09 mei 2003, 20:48
Contacteer:

hei,

dus met andere woorden ook, ik kan zelf kiezen wat ik wil dat de code van de smiley is??? Want ik zou het graag hebben dat ik het kan behouden als mensen :-) intypen dan het ook :-) blijft en niet in een smiley verandert. bijv. dat de smiley zijn code iets gaat zijn van <:-)> of iets in die trend

thnx
bye
Grtz
Spirit Wolf
pleas visit www.kathleen.be.tf for my girlfriend
Gebruikersavatar
Pi R²
Elite Poster
Elite Poster
Berichten: 811
Lid geworden op: 03 jan 2003, 17:15
Locatie: Sint-Niklaas
Contacteer:

persoonlijk vin ik dat niet erg dat het veranderd, maar als ge dat wilt doen, dan zorgt ge ervoor dat ge als ge op de smiley drukt bv. ::-) ziet in plaats van :- ) (of gelijk welk ander teken dat de mensen meestal niet zelf zullen intypen).

En dan zegt da dat het moet zijn bij het opvragen:

Code: Selecteer alles


$bericht = preg_replace("::-)","<img src='smily.gif'",$bericht) ;

// ::-) zal vervangen worden, een gewone smiley als :-) zal blijven staan.


Grtzzz
Lang Leve Mijn Eigen! Het geheim voor een lang leven: niet stoppen met ademen
Spirit Wolf
Starter
Starter
Berichten: 8
Lid geworden op: 09 mei 2003, 20:48
Contacteer:

hei,

heb een javascriptje gevonden om door middel van op een emoticon te klikken dat deze in de tekst komt. Niet echt een probleem dat ik nu heb, maar het oogt niet mooi. Als ik er namelijk op ene klik, stoppen alle animaties. Weet iemand misschien hoe dit komt???

oh ja, heb nog iets gevonden om de tekst in smileys te veranderen wat kleiner te houden om te programmeren, kijk hier maar eens op :
http://www.devarticles.com/art/1/161/2
misschien kan het iemand helpen

bye
Grtz
Spirit Wolf
pleas visit www.kathleen.be.tf for my girlfriend
Gebruikersavatar
Erik
Elite Poster
Elite Poster
Berichten: 1321
Lid geworden op: 15 sep 2002, 02:46
Uitgedeelde bedankjes: 2 keer
Bedankt: 18 keer

hallo,

PiR2 je gebruikt de verkeerde php functie enfin theorethish dan

php makers raden str_replace(); aan


http://www.php.net/manual/nl/function.str-replace.php
Registered Linux user #286313
Spirit Wolf
Starter
Starter
Berichten: 8
Lid geworden op: 09 mei 2003, 20:48
Contacteer:

emoticon probleem opgelost. bleef alleen stilstaan als ik het op mijn computer testte, nu ik het online heb gezet werkt het wel.

Mogen altijd eens gaan testen op de site :-). Url staat hieronder ergens.

bye

Edited by The Oddity
Ik heb je posts samengevoegd. Spirit Wolf, om niet meer te vergeten in te loggen, kan je gebruik maken van de auto-login functie. Dan moet je wel een cookie accepteren.
Grtz
Spirit Wolf
pleas visit www.kathleen.be.tf for my girlfriend
Gebruikersavatar
Pi R²
Elite Poster
Elite Poster
Berichten: 811
Lid geworden op: 03 jan 2003, 17:15
Locatie: Sint-Niklaas
Contacteer:

preg_replace lijkt sneller te gaan. Het komt op hetzelfde naar, en str_replace is hoofdlettergevoelig, preg_replace niet.
Lang Leve Mijn Eigen! Het geheim voor een lang leven: niet stoppen met ademen
Gebruikersavatar
Erik
Elite Poster
Elite Poster
Berichten: 1321
Lid geworden op: 15 sep 2002, 02:46
Uitgedeelde bedankjes: 2 keer
Bedankt: 18 keer

php is gebasseerd op c alle op c gebasseerde talen talen zijn CaSe SenSiTiVe

nou ja zolang het werkt is het goed he ;)
Registered Linux user #286313
Plaats reactie

Terug naar “Development”