Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Textarea lukuikkunaan

Sivun loppuun

novari [23.05.2010 14:06:54]

#

Olen tehnyt kotisivuilleni ns. vieraskirjan jossa on sellainen ominaisuus että jokainen käyttäjä voi vastata viestiin.
Nyt haluaisin että olemassa olevat viestit näkyvät vastauksen kirjoittamisen aikana mutta minulta tuo ei näytä onnistuvan. Täytyisi saada avattua textarea lukuikkunan yläosaan ilman että se peittäisi kaikkea viestinlukuikkunaa.
Viestinluvun aikana tuota kirjoitusikkunaa ei tarvitsisi näkyä vaan ainoastaan kirjoittamisen aikana.
Miten tuo olisi järkevintä toteuttaa? Olen selannut nettiä ja senverran tajusin että se voisi onnistua iframe tai div:llä, olenko oikeilla jäljillä?
Kummallakaan en leikkinyt joten pieni koodipätkä josta ilmenee periaate olisi kiva saada, kiitos!

Metabolix [23.05.2010 14:17:53]

#

Olet aivan väärillä jäljillä, ei ole kyse mistään noin mutkikkaasta.

Tee ensin koodi, joka tulostaa viestit. Tee sitten koodi, joka tulostaa vastauslomakkeen. Laita lopuksi nämä koodit peräkkäin.

novari [24.05.2010 11:59:50]

#

Kiitos neuvosta, sain heti tehtyä tuon ominaisuuden kun ajatukset menivät oikeille raiteille. Eikä ollut vaikea toteuttaa.

Smileyt taitaa olla aika vaikea saada tuohon kirjoitusohjelmaan koska jostain olin lukevinani että textarea ei tue kuvia. Onko tuo totta?

villev [24.05.2010 14:14:26]

#

Hymiöt voi toteuttaa sillä tavoin, että käyttäjä kirjoittaa textareaan hymiön tekstinä (esim. ":D") ja sitten korvaat sen tekstin tulostusvaiheessa <img>-tagilla.

Lebe80 [24.05.2010 14:17:31]

#

Voithan laittaa siihen myös wysiwyg-editorin, jolloin saat kuvien lisäilyn lisäksi myös vaikkapa tekstin muotoilun:

http://tinymce.moxiecode.com/examples/full.php

novari [26.05.2010 13:57:26]

#

Minulla on ongelmia saada hymiö muutettua kuvaksi, näin :) > smiley.gif. Saan kuvat tulemaan textarean yläpuolelle ja kun pallukkaa painaa niin vastaava koodi tulee kursorin paikkaan textareaan.
Miten tuo vaihto oikeaoppisesti suoritetaan jotta vaihto onnistuu kun $teksti tulostetaan ohjelmassa?
Tällainen on vaihtokoodi joka on Antin esimerkki mutta ei toimi minulla:

<?php
$ka = "<img src=\"";
$kl = ".gif\">";
$ennen=array(":)",":(",":P",":O",":D",";)","8)",":<",":-(","3:D","??",":/",":|",";D");
$jalkeen=array("{$ka}smiley{$kl}","{$ka}sad{$kl}","{$ka}tongue{$kl}","{$ka}shocked{$kl}","{$ka}laugh{$kl}",
"{$ka}wink{$kl}","{$ka}cool{$kl}","{$ka}angry{$kl}","{$ka}cry{$kl}","{$ka}evil{$kl}","{$ka}up{$kl}","{$ka}down{$kl}",
"{$ka}emb{$kl}","{$ka}light{$kl}");
$teksti = str_replace($ennen,$jalkeen,$teksti);
?>

Tulostaa vain <img src="smiley.gif"> tekstin seassa.
Kuvat on samassa tiedostossa kuin itse ohjelma joten polkua ei varmaankaan tarvi antaa. Olen tosin yrittänyt url:n kanssa mutta huonolla menestyksellä.
Vai tarviiko tulostusvaiheessa ottaa jotain huomioon? Tulostan viestit echo:lla aivan kuin Antin esimerkissä.

Teuro [26.05.2010 14:55:04]

#

Ethän käytä mitään htmlspecialchars funktiota, joka muuntaa esimerkiksi < merkin tulostettavaan muotoon.

novari [26.05.2010 15:04:06]

#

No tietenkin siellä oli sellainen! Tämä kirjoitusohjelma oli ennen ihan teksti muotoinen mutta aloin lisäilemään tähän muita ominaissuksia niin tuo unohtui.
Kiitti sinulle oikein paljon!

Metabolix [26.05.2010 16:12:43]

#

Tietenkin sellainen myös pitää olla siellä, mutta tee hymiöiden korvaus vasta htmlspecialcharsin jälkeen. (Muista, että "<" onkin tässä vaiheessa "&lt;".)

novari [27.05.2010 10:51:09]

#

Toimii edelleen tuon Metabolix:n vinkin jälkeen, erittäin paljon kiitoksia!


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta