Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Webprogrammeren & scripting

Plaatjes post script (Javascript)

Anoniem
marientje
12 antwoorden
  • Ik heb een simpel soort forum geinstalleerd, wat achteraf geen smileys bleek te hebben, en smileys zijn nogal gewild onder de posters.
    Ik had dus bedacht een soort javascript te maken waarin elke function een smiley is, en wanneer de poster op een smiley klikt, de function in de post komt, zodat daar de smiley komt.

    Het probleem is, hoe kan het ook anders, dat ik dat script niet zo gauw weet te maken, al hoewel mijn instinct me zegt dat het niet zo moeilijk kan zijn….

    Kan iemand me helpen met zo'n scriptje?

    Alvast bedankt!
  • deze functie verwerkt de smileys:
    [code:1:2d5daa5f64]function emoticon(text) {
    var txtarea = document.form.Input;
    txtarea.value += ' ' + text + ' ';
    txtarea.focus();
    }[/code:1:2d5daa5f64]
    form en Input moet je veranderen in de naam van je formulier resp. de naam van het invoerveld

    /edit: sorry, hier iets vergeten, ZEER belangrijk!
    de smileys zet je dan ergens neer op zon manier
    [code:1:2d5daa5f64]<img src="smiley.gif" border="0" onClick="javascript:emoticon(':/')">[/code:1:2d5daa5f64]
    of zo:
    [code:1:2d5daa5f64]
    <a href="javascript:emoticon(':/')"><img src="smiley.gif" border="0"></a>[/code:1:2d5daa5f64]

    De post wordt dan opgeslagen met tekentjes als :& en :/ erin (ik kan geen echte neerzetten, want die worden geparsed) , en moet je dan bij het tonen wijzigen in <img="bla" etc.> met een php-functie (str_replace) of hoe je dat ook wilt doen.


    Ik hoop dat ik een beejte duideljik ben (nogal moe), anders laat je t maar weten. je kan ook gewoon de source van dit fourm bekijken, daar staat t ook allemaal in.
  • Jee het werkt. Als ik nu op een smiley klik dan komt er dus bijvoorbeeld :) of :( in de post. Maar het probleem is nu, dat hij die :) of :( in een plaatje moet veranderen… Hoe moet ik dat doen?? Van dat str_replace snap ik niet echt veel…

    Alvast bedankt!
  • [code:1:3e03b09f5d]
    $bodytag = str_replace ("%body%", "black", "<body text=%body%>");
    [/code:1:3e03b09f5d]

    $bodytag zal dus zijn: [code:1:3e03b09f5d]
    <body text=black>
    [/code:1:3e03b09f5d]

    Dit is toch niet zo moeilijk, toepassen op de variablen van je gastenboek en klaar.
  • oke ik ga het nu proberen. Meer replies zeer welkom: alsjeblieft een beetje verstaanbare taal, ik snap er niets van :)
  • Maar ik snap het nog steeds niet. Intussen heb ik wel een idee gekregen. Is er niet een javascript wat, stel dat ik het smiley :), sm1() noem, en dat hij dan function sm1() herkent, dat hij dat dan replaced voor de smiley die ik in het script configureer?

    Snappen jullie wat ik bedoel?
  • [quote:18fc220465="carlobernardini"]
    Snappen jullie wat ik bedoel?[/quote:18fc220465]

    eh, nee

    maar met PHP is t heel makkelijk. Gewoon een functie aanroepen met vervang("tekst")

    en dan
    [code:1:18fc220465]function vervang(&$input) {
    return = str_replace(':/', '<img border=0 src="smiley.gif">', $input);
    }
    [/code:1:18fc220465]

    of, om meerdere te vervangen:
    [code:1:18fc220465]function vervang(&$input) {
    $input = str_replace(':/', '<img border=0 src="smiley.gif">', $input);
    $input = str_replace(':&', '<img border=0 src="smiley2.gif">', $input);
    return $input;
    }
    [/code:1:18fc220465]

    Denk wel aan de volgorde waatrin je de smileys vervangt. Wanneer je twee smileys hebt ':/' en ':/#' dan moet je eerst de tweede vervanging plaatsvinden, en dan pas de eerste, anders zal-ie nooit aan de tweede toekomen. (ofzo…)
  • Ooooo, dat is dus al een javascript… Je moet dus gewoon

    [code:1:36ecbe5e08]
    <script>
    function vervang(&$input) {
    $input = str_replace(':/', '<img border=0 src="smiley.gif">', $input);
    $input = str_replace(':&', '<img border=0 src="smiley2.gif">', $input);
    return $input;
    }
    </script>
    [/code:1:36ecbe5e08]

    in de head van de template plakken?

    Ik ga het meteen ff uitproberen. Bedankt
  • Euh… Het werkt nog niet :(

    Ik heb nu dit in vrijwel iedere pagina geplaatst:

    [code:1:8fb140f5a7]
    <script language="javascript">
    function vervang(&$input) {
    $input = str_replace(':)', '<img border=0 src="sm/sm2.gif">', $input);
    $input = str_replace(':D', '<img border=0 src="sm/sm1.gif">', $input);
    $input = str_replace(':(', '<img border=0 src="sm/sm3.gif">', $input);
    $input = str_replace(':S', '<img border=0 src="sm/sm4.gif">', $input);
    $input = str_replace('B)', '<img border=0 src="sm/sm5.gif">', $input);
    $input = str_replace(';)', '<img border=0 src="sm/sm6.gif">', $input);
    $input = str_replace(':-|', '<img border=0 src="sm/sm7.gif">', $input);
    return $input;
    }
    </script>[/code:1:8fb140f5a7]
  • nee, dat was PHP. Ik weet niet of t ook met Javascript kan, t zal er dan erg op lijken.
  • [quote:965dc00257="carlobernardini"]Euh… Het werkt nog niet :(

    Ik heb nu dit in vrijwel iedere pagina geplaatst:

    [code:1:965dc00257]
    <script language="javascript">
    function vervang(&$input) {
    $input = str_replace(':)', '<img border=0 src="sm/sm2.gif">', $input);
    $input = str_replace(':D', '<img border=0 src="sm/sm1.gif">', $input);
    $input = str_replace(':(', '<img border=0 src="sm/sm3.gif">', $input);
    $input = str_replace(':S', '<img border=0 src="sm/sm4.gif">', $input);
    $input = str_replace('B)', '<img border=0 src="sm/sm5.gif">', $input);
    $input = str_replace(';)', '<img border=0 src="sm/sm6.gif">', $input);
    $input = str_replace(':-|', '<img border=0 src="sm/sm7.gif">', $input);
    return $input;
    }
    </script>[/code:1:965dc00257][/quote:965dc00257]
    Dit is ook geen javascript, maar een php functie.
    [quote:965dc00257="marientje"]maar met PHP is t heel makkelijk. Gewoon een functie aanroepen met vervang("tekst") [/quote:965dc00257]
  • Ja maar waar moet ik dat dan echt plaatsen??

    Ik laat jullie maar het hele template.php script van het board zien, dan kunnen jullie het er meteen voor me invoegen :)

    [code:1:ce187e8fa2]
    <script type="text/javascript">
    function emoticon(text) {
    var txtarea = document.bericht.comment_text;
    txtarea.value += ' ' + text + ' ';
    txtarea.focus();
    }
    </script>
    <script type="text/javascript">

    function insertThis(textEl,opentag,closetag) {
    var strSelection = document.selection.createRange().text
    if (strSelection == "") {
    alert("You need to select some text to format.");
    return false;
    }
    else document.selection.createRange().text = opentag + strSelection + closetag
    return;
    }

    </script>


    <link href="css/styles.css" rel="stylesheet" type="text/css">

    <!– YOUR COMMENTS HTML –>

    <? if ( $comments ) { ?>

    <form name="delete_form_all" style="margin: 0px; padding: 0px;" method="post">
    <input type="hidden" name="function" value="delete">
    <input type="hidden" name="post_id" value="all">
    </form>

    <p align="center"><hr noshade>
    </p>

    <a name="comments"></a>

    <? if ( $comment_pages > 1 ) { ?>

    <!– COMMENT PAGES SELECTION BAR –>

    <p align="center">

    <small>
    <? if ( $comment_page > 1) echo('<a href="'.$comment_url.'comment_page='.($comment_page-1).'">Previous</a>'); else echo("Previous");?>
    &nbsp;&nbsp;
    </small>

    <?
    for ( $i=1; $i<=$comment_pages; $i++ ) {
    if ( $i != $comment_page )
    echo('<a href="'.$comment_url.'comment_page='.$i.'">'.$i.'</a>&nbsp;');
    else
    echo("$i&nbsp");
    }
    ?>

    <small>
    &nbsp;&nbsp;
    <? if ( $comment_page < $comment_pages) echo('<a href="'.$comment_url.'comment_page='.($comment_page+1).'">Next</a>'); else echo("Next");?>
    </small>

    </p>

    <? } ?>

    <!– COMMENTS LIST –>

    <table width="100%" cellspacing="0" cellpadding="1" border="0" bgcolor="#93B7DB">
    <tr><td>
    <table width="100%" bgcolor="#FFFFFF">
    <tr>
    <td align="center" valign="middle" bgcolor="#FFCC00">
    <font class="storyHead" style="font-size: 11px; font-family:Arial, Helvetica, sans-serif; color:#666666; font-weight:bold; "><b><a href="#down"><img src="gfx/down.gif" width="18" height="18" border="0" align="left"></a>Berichten </b></font>
    </td>
    </tr>
    <tr><td bgcolor="#FFFFFF">

    <? foreach ( $comments_out as $key=>$post ) { ?>

    <span class="storyBody">
    <!– Visitor <?=$key+1?>'s comments –>

    </span>
    <table width="100%" cellpadding="2" cellspacing="2">
    <tr><td>

    <p style="margin-bottom: 3px; font-size: 10.5pt">
    <span class="storyBody"><b>
    <?=$post['name']?>
    </b>
    <br>
    <?=date("l dS of F Y",$post['time'])?>
    </span></p>

    <table width="100%" align="center" cellpadding="2" cellspacing="2" bgcolor="#ffffff"><tr><td style="font-size: 10pt">
    <span class="storyBody">
    <?=$post['comment']?>

    <? if ( $comment_mod ) {?>

    <!– Moderator's options –>

    </span>
    <div align="right">

    <form name="delete_form_<?=$key?>" style="margin: 0px; padding: 0px;" method="post">
    <span class="storyBody">
    <input type="hidden" name="function" value="delete">
    <input type="hidden" name="post_id" value="<?=$post['key']?>">
    </span>
    </form>

    <form name="edit_form_<?=$key?>" style="margin: 0px; padding: 0px;" method="post">
    <span class="storyBody">
    <input type="hidden" name="function" value="edit">
    <input type="hidden" name="post_id" value="<?=$post['key']?>">
    </span>
    </form>

    <form name="ban_form_<?=$key?>" style="margin: 0px; padding: 0px;" method="post">
    <span class="storyBody">
    <input type="hidden" name="function" value="ban">
    <input type="hidden" name="post_id" value="<?=$post['key']?>">
    </span>
    </form>

    <span class="storyBody"><a style="cursor:hand" onclick="document.edit_form_<?=$key?>.submit();"><img alt="Edit post" border="0" src="<?=$comment_urlloc?>/gfx/edit.gif"></a>
    <a style="cursor:hand" onclick="document.delete_form_<?=$key?>.submit();"><img alt="Delete post" border="0" src="<?=$comment_urlloc?>/gfx/delete.gif"></a>
    <a style="cursor:hand" onclick="document.delete_form_all.submit();"><img alt="Delete all posts!" border="0" src="<?=$comment_urlloc?>/gfx/delete_all.gif"></a>
    <? if ( $post['ip'] ) { ?>
    <a style="cursor:hand" onclick="document.ban_form_<?=$key?>.submit();"><img alt="Ban this user!" border="0" src="<?=$comment_urlloc?>/gfx/ban.gif"></a>
    <small>(
    <?=$post['ip']?>
    )</small>
    <? } ?>

    </span></div>
    <span class="storyBody">
    <? } // end of mod options ?>
    </span></td></tr></table>

    </td></tr></table>
    <? } // end of loop ?>
    </td>
    </tr>
    </table>

    </td></tr>
    </table>

    <? } // end comments ?>

    <? if ( $add_comments ) {?>

    <!– COMMENT CAPTURE FORM –>

    <p align="center"><hr noshade>
    </p>

    <table width="100%" cellspacing="0" cellpadding="1" border="0" bgcolor="#93B7DB">
    <tr><td>

    <table width="100%" bgcolor="#FFFFFF">
    <tr>
    <td align="center" valign="middle" bgcolor="#FFCC00" class="storyHead">
    <font class="storyBody"><b>
    <a href="#up"><img src="gfx/up.gif" width="18" height="18" border="0" align="left"></a>
    <?
    switch ( $comment_function ) {
    case "edit" : echo("Gebruiker's post veranderen"); break;
    default : echo("Type jouw bericht in"); break;
    }
    ?>
    </b></font>
    </td>
    </tr>

    <tr><td>
    <form method="post" name="bericht">
    <input type="hidden" name="function" value="save">
    <input type="hidden" name="submit_comments[post_id]" value="<?=$comment_postid?>">

    <div class="storyBody" style="margin: 2px">
    <a name="add_comment"></a>
    <table><tr>
    <td>Naam</td>
    <td>
    <input type="text" name="submit_comments[name]" value="<?=$comment_oldname?>" size="28">
    </td>
    </tr></table>
    <table style="margin-top: 4px; margin-bottom: 0px;" border="0" cellpadding="0" cellspacing="0">
    <tr>
    <td> Jouw post

    <div style="margin-top: 4px">
    <textarea id="comment_text" style="width: 480px" name="submit_comments[comment]" rows="5" columns="20"><?=$comment_oldcomment?>
    </textarea>
    </div>
    <? $bodytag = str_replace ("%path%", "sm/sm2.gif", "<img src='%path%'>"); ?>
    <br>
    <a href="javascript:emoticon(':)')"><img src="sm/sm2.gif" border="0"></a> <a href="javascript:emoticon(':D')"><img src="sm/sm1.gif" border="0"></a> <a href="javascript:emoticon(':(')"><img src="sm/sm3.gif" border="0"></a> <a href="javascript:emoticon(':S')"><img src="sm/sm4.gif" border="0"></a> <a href="javascript:emoticon('B)')"><img src="sm/sm5.gif" border="0"></a> <a href="javascript:emoticon(';)')"><img src="sm/sm6.gif" border="0"></a> <a href="javascript:emoticon(':-|')"><img src="sm/sm7.gif" border="0"></a>
    <? if ( $comment_markup ) { ?>
    <div style="margin-top: 4px;" align="right">

    </div>
    <? } ?>

    </td>
    </tr>
    <tr>
    <td valign="top">

    <table width="100%"><tr><td>
    <input type="image" alt="Add comment" src="<?=$comment_urlloc?>/gfx/addcomment.gif">
    </td><td align="right" valign="top">
    <img alt="Bold text" style="cursor:hand" onClick="insertThis(getElementById('comment_text'),'[B]','[/B]')" src="<?=$comment_urlloc?>/gfx/bold.gif">
    <img alt="Italic text" style="cursor:hand" onClick="insertThis(getElementById('comment_text'),'[I]','[/I]')" src="<?=$comment_urlloc?>/gfx/italic.gif">
    <img alt="Underlined text" style="cursor:hand" onClick="insertThis(getElementById('comment_text'),'[U]','[/U]')" src="<?=$comment_urlloc?>/gfx/underline.gif">
    <img alt="Large text" style="cursor:hand" onClick="insertThis(getElementById('comment_text'),'[BIG]','[/BIG]')" src="<?=$comment_urlloc?>/gfx/big.gif">
    <img alt="Small text" style="cursor:hand" onClick="insertThis(getElementById('comment_text'),'[SMALL]','[/SMALL]')" src="<?=$comment_urlloc?>/gfx/small.gif">
    </td></tr></table>

    </td>
    </tr>
    </table>
    </div>

    </form>

    </td></tr>
    </table>
    </td></tr>
    </table>

    <? } ?>

    <!– END OF LOGOSCOMMENT –>

    <? $oldhands = true; ?><div id="down"></div>
    [/code:1:ce187e8fa2]

    //Sorry als het een beetje lang is :D

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.