Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 15

Thema: Smilie und BB-Code Script (PHP/JS)

  1. #1
    Kaiser(in)
    Registriert seit
    29.03.2009
    Ort
    1011 1111 1011 WorldWideWeb
    Beiträge
    2.439
    Danke
    2
    Bekam 6 mal "Danke" in 6 Postings

    Standard Smilie und BB-Code Script (PHP/JS)

    So, noch ein PHP/JS Script von mir.
    UM dieses Script einzusetzen, müsst ihr in eure HTML einfach einen diesen Code einbinden(Die Textarea muss die id textbox haben):
    HTML-Code:
    #### in den Head: ####
    <style type="text/css">
    .smilie a {
        border: none;
        margin-top: 1px;
        margin-left: 1px;
    }
    .smilie a:hover {
        border: 1px solid #FF0000;
        margin-top: 0px;
        margin-left: 0px;
    }
    .smilieimg {
        width: 15px;
        height: 15px;
        background: #808080;
    }
    </style>
    #### und uner eure Textarea ####
    <div class='smilie'>
    <a>
     <img src="smilies/sm1.png" alt=":D" onclick=" var eins=document.getElementById('textbox').value; zwei=':D'; document.getElementById('textbox').value=eins+zwei; " class="smilieimg">
    </a>
    <a>
     <img src="smilies/sm2.png" alt=";)" onclick=" var eins=document.getElementById('textbox').value; zwei=';)'; document.getElementById('textbox').value=eins+zwei; " class="smilieimg">
    </a>
    <a>
     <img src="smilies/sm3.png" alt=":)" onclick=" var eins=document.getElementById('textbox').value; zwei=':)'; document.getElementById('textbox').value=eins+zwei; " class="smilieimg">
    </a>
    <a>
     <img src="smilies/sm4.png" alt=":|" onclick=" var eins=document.getElementById('textbox').value; zwei=':|'; document.getElementById('textbox').value=eins+zwei; " class="smilieimg">
    </a>
    <a>
     <img src="smilies/sm5.png" alt=":(" onclick=" var eins=document.getElementById('textbox').value; zwei=':('; document.getElementById('textbox').value=eins+zwei; " class="smilieimg">
    </a>
    <a>
     <img src="smilies/sm6.png" alt=":lol" onclick=" var eins=document.getElementById('textbox').value; zwei=':lol'; document.getElementById('textbox').value=eins+zwei; " class="smilieimg">
    </a>
    <a>
     <img src="smilies/sm7.png" alt=":?" onclick=" var eins=document.getElementById('textbox').value; zwei=':?'; document.getElementById('textbox').value=eins+zwei; " class="smilieimg">
    </a>
    <a>
     <img src="smilies/sm8.png" alt=":P" onclick=" var eins=document.getElementById('textbox').value; zwei=':P'; document.getElementById('textbox').value=eins+zwei; " class="smilieimg">
    </a>
    </div>
    <br>
    <div class="bbcode">
     <input type="button" value="Link" onclick="url=prompt('Ziel des Links:'); var eins=document.getElementById('textbox').value; zwei='[URL=http://'+url+']'+url+'[/URL]'; document.getElementById('textbox').value=eins+zwei;">
     <input type="button" value="fett" onclick="url=prompt('Fetter Text'); var eins=document.getElementById('textbox').value; zwei='[BOLD]'+url+'[/BOLD]'; document.getElementById('textbox').value=eins+zwei;">
     <input type="button" value="kursiv" onclick="url=prompt('Kursiver Text'); var eins=document.getElementById('textbox').value; zwei='[ITAL]'+url+'[/ITAL]'; document.getElementById('textbox').value=eins+zwei;">
    <input type="button" value="Bild" onclick="url=prompt('Link zum Bild:'); titel=prompt('Titel des Bildes:'); var eins=document.getElementById('textbox').value; zwei='[IMG='+url+']'+titel+'[/IMG]'; document.getElementById('textbox').value=eins+zwei;">
     <input type="button" value="zentiert" onclick="url=prompt('Zentrierter Text'); var eins=document.getElementById('textbox').value; zwei='[CENTER]'+url+'[/CENTER]'; document.getElementById('textbox').value=eins+zwei;">
    </div>
    und hier gehe ich mal in der PHP davon aus, dass die Textarea den namen text hat.
    PHP-Code:
    $comment1=$_POST["text"];
    htmlentities($comment1);
    $comment2=str_replace(":D""<img src='smlilies/sm1.png' border='0' alt=':'>"$comment1);
    $comment3=str_replace(";)""<img src='smlilies/sm2.png' border='0' alt=':'>"$comment2);
    $comment4=str_replace(":)""<img src='smlilies/sm3.png' border='0' alt=':'>"$comment3);
    $comment5=str_replace(":|""<img src='smlilies/sm4.png' border='0' alt=':'>"$comment4);
    $comment6=str_replace(":(""<img src='smlilies/sm5.png' border='0' alt=':'>"$comment5);
    $comment7=str_replace(":lol""<img src='smlilies/sm6.png' border='0' alt=':'>"$comment6);
    $comment8=str_replace(":?""<img src='smlilies/sm7.png' border='0' alt=':'>"$comment7);
    $comment9=str_replace(":P""<img src='smlilies/sm8.png' border='0' alt=':'>"$comment8);
    $comment10=str_replace("[URL=""<a href="$comment9);
    $comment11=str_replace("[/URL""</a>"$comment10);
    $comment12=str_replace("[BOLD""<b>"$comment11);
    $comment13=str_replace("[/BOLD""</b>"$comment12);
    $comment14=str_replace("[ITAL]""<i>"$comment13);
    $comment15=str_replace("[/ITAL""</i>"$comment14);
    $comment16=str_replace("[IMG=""<img src="$comment15);
    $comment17=str_replace("[/IMG""</img>"$comment16);
    $comment18=str_replace("[CENTER""<center><a>"$comment17);
    $comment19=str_replace("[/CENTER""</a></center>"$comment18);
    $comment20=tr_replace("]"">"$comment19); 
    und das ganze kann dann optional auchnoch in eine Datei geschreiben werden. Hängt dazu einfach den folgenden Code an den oberen in der PHP an.
    PHP-Code:
    $fp=fopen("kommentare.html""r+");
    fputs($fp"<div class='kommentar'><a>".$comment."</a></div>\n");
    fclose($fp); 
    Und natürlich kann man hier auchnoch den Charcounter einsetzen.
    Jedoch sollte in diesem fall auchnoch eine überprüfung der Länge des Textes erfolgen.
    das ganze, inclusive smilies, gibt es zum Runterladen .
    Mit eintrag in "comments.html":
    BBCode1.zip
    und ohne eintragen:
    BBCode2.zip
    Viel Spass!
    ICh bitte um Feedback!
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!
    Geändert von Tobse (30.08.2009 um 23:24 Uhr)
    Der, der weiß dass er nichts weiß, weiß mehr als der, der nicht weiß, dass er nichts weiß.
    Wer nach etwas fragt, geht grundsätzlich das Risiko ein, es auch zu bekommen!

  2. #2
    Samurai Avatar von Donkey
    Registriert seit
    12.08.2008
    Ort
    München
    Alter
    35
    Beiträge
    237
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Smilie und BB-Code Script (PHP/JS)

    Wofür stehen die <a> ?

    Code:
    str_replace("[CENTER", "<center><a>", $comment);
    str_replace("[/CENTER", "</a></center>", $comment);
    Code:
    fputs($fp, "<div class='kommentar'><a>".$comment."</a></div>\n");

  3. #3
    Bandit
    Gast

    Standard AW: Smilie und BB-Code Script (PHP/JS)

    Das funktioniert zu 100% nicht! Es wäre nicht schlecht, wenn man mal vorher testet, bevor man hier was reinschreibt.

    str_replace

    (PHP 4, PHP 5)
    str_replace — Ersetzt alle Vorkommen des Suchstrings durch einen anderen String

    Beschreibung

    mixed str_replace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] )
    Diese Funktion gibt einen String oder ein Array zurück, in dem alle Vorkommen von search innerhalb von subject durch den angegebenen replace -Wert ersetzt wurden.
    Wenn Sie keine ausgefallenen Ersetzungsregeln (wie Reguläre Ausdrücke) benötigen, sollten Sie immer diese Funktion anstelle von ereg_replace() oder preg_replace() verwenden.

    Parameter-Liste

    Sind search und replace Arrays, nimmt str_replace() je einen Wert beider Arrays und verwendet diese zum Suchen und Ersetzen in subject . Hat replace weniger Werte als search , so wird ein leerer String zum Ersetzen für den Rest der Werte verwendet. Ist search ein Array und replace ein String, dann wird dieser String für jeden Wert von search angewandt. Das Gegenteil ist nicht sinnvoll.
    Sind search und/oder replace Arrays, werden ihre Elemente vom ersten zum letzten hin verarbeitet.

    search
    replace
    subject Ist subject ein Array, erfolgt das Suchen und Ersetzen für jeder Wert von subject , und der Rückgabewert ist ebenfalls ein Array.
    count
    Hinweis: Sofern angegeben, enthält der Parameter die Anzahl der gefunden und ersetzten Textstellen.
    Rückgabewerte

    Diese Funktion gibt eine Zeichenkette oder ein Array mit ersetzten Werten zurück.
    Ich schlage mal vor: http://www.christian-seiler.de/projekte/php/bbcode/
    Geändert von bandit600 (30.08.2009 um 20:55 Uhr)

  4. #4
    Kaiser(in)
    Themenstarter

    Registriert seit
    29.03.2009
    Ort
    1011 1111 1011 WorldWideWeb
    Beiträge
    2.439
    Danke
    2
    Bekam 6 mal "Danke" in 6 Postings

    Standard AW: Smilie und BB-Code Script (PHP/JS)

    Sicher. Deshalb hats bei mir Lokal auch geklappt...
    Und ich habe str_replace() auch in anderen PHP´s eingesetzt (den Smilie-Teil) und er hat funktioniert.
    und @Donkey:
    Die <a>´s stehen da, weil der Nutzer wahrschieinlich kein HTML schriben wird und selbst wenn, wird es durch htmlentities() etfernt. Man könnte sie zwar weglassen, ürde keinen Unterschied machen, dann wäre aber der Text unter umständen nciht mer ansprechbar (CSS) und der Code wäre nicht Valide.
    Geändert von Tobse (30.08.2009 um 22:28 Uhr)
    Der, der weiß dass er nichts weiß, weiß mehr als der, der nicht weiß, dass er nichts weiß.
    Wer nach etwas fragt, geht grundsätzlich das Risiko ein, es auch zu bekommen!

  5. #5
    Bandit
    Gast

    Standard AW: Smilie und BB-Code Script (PHP/JS)

    Zitat Zitat von Tobse Beitrag anzeigen
    Deshalb hats bei mir Lokal auch geklappt..
    Nie und nimmer!!!

    str_replace liefert den geänderten String, den du aber nicht entgegennimmst!

  6. #6
    Kaiser(in)
    Themenstarter

    Registriert seit
    29.03.2009
    Ort
    1011 1111 1011 WorldWideWeb
    Beiträge
    2.439
    Danke
    2
    Bekam 6 mal "Danke" in 6 Postings

    Standard AW: Smilie und BB-Code Script (PHP/JS)

    bitte, dann änder ichs eben. Wir brauchen hier ja jetzt auch keinen Streit um str_replace machen, mit md5() gehts aber auch.
    Der, der weiß dass er nichts weiß, weiß mehr als der, der nicht weiß, dass er nichts weiß.
    Wer nach etwas fragt, geht grundsätzlich das Risiko ein, es auch zu bekommen!

  7. #7
    der/die Göttliche Avatar von jojo87
    Registriert seit
    23.03.2007
    Ort
    Leipzig
    Alter
    30
    Beiträge
    3.131
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Smilie und BB-Code Script (PHP/JS)

    hehe, das klingt irgendwie so, als ob dein lokaler webspace Werte als Referenzen an die Funktionen übergibt. Das wäre allerdings kurios. An sich muss bandit Recht haben! Schau dir hierzu mal die Ausgabe von phpinfo() an.

    Und hast du schonmal probiert, einen BB-Code 2 Mal im String vorkommen zu lassen?
    Zudem ist es ja wohl ziemliche Verschwendung, für ein einzelnes Smilie den String durch 20 mal durch str_replace zu jagen

  8. #8
    Kaiser(in)
    Themenstarter

    Registriert seit
    29.03.2009
    Ort
    1011 1111 1011 WorldWideWeb
    Beiträge
    2.439
    Danke
    2
    Bekam 6 mal "Danke" in 6 Postings

    Standard AW: Smilie und BB-Code Script (PHP/JS)

    Ich habe nicht gelesen, dass man str_rreplace() weitere austauschwerte geben kann.
    Der, der weiß dass er nichts weiß, weiß mehr als der, der nicht weiß, dass er nichts weiß.
    Wer nach etwas fragt, geht grundsätzlich das Risiko ein, es auch zu bekommen!

  9. #9
    Bandit
    Gast

    Standard AW: Smilie und BB-Code Script (PHP/JS)

    Auweia!! Und wenn man noch mehrere Codes einbauen will, ist man dann irgendwann bei $comment99

    $text = str_replace("dies", "das", $text);

    Ansonsten empfehle ich dir, das Script (siehe Link) anzusehen und allen anderen empfehle ich, das Script von Tobse nicht zu nutzen.

  10. #10
    Samurai Avatar von Donkey
    Registriert seit
    12.08.2008
    Ort
    München
    Alter
    35
    Beiträge
    237
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Smilie und BB-Code Script (PHP/JS)

    Hm... Was was Du da verlinkt hast kommt mir ein bissl kompleziert vor für ein paar smilies, bandit.
    Nichts für ungut

    Auf Selfhtml findet man auch ein Script zum einfügen von BBC in die Textarea.
    Wie das dann Ausgewertet wird bleibt jedem selbst überlassen.
    http://aktuell.de.selfhtml.org/artik...script/bbcode/

    Hier mal ne Testseite die ich damit gemacht hab.
    http://kendo-bunker.de/donkey/bbc/

    Die Smilies als BBC einfügen, Textformatierung als HTML.
    Da muss man das Form beim Absenden halt mit ner Whitelist überprüfen welcher HTML-Code eingegeben wurde.

    Das Ersetzen hab ich mal mit preg_replace gelösst.
    Nicht grad elegant und sieht ein bissl strange aus, aber auf die Schnelle is mir nichts Besseres eingefallen

    HTML-Code:
    <form action="index.php" name="nachricht" method="post">
        <p>
            Gib Deinen Text ein:<br />
            <textarea name="settext" rows="10" cols="60"></textarea><br />
              Klicke einen Smilie um ihn einzufügen:<br />
              <img src="icon_green_smile.gif" onClick="insert('[smile]', '')" />
              <img src="icon_green_wink.gif" onClick="insert('[wink]', '')" />
              <img src="icon_green_lol.gif" onClick="insert('[lol]', '')" />
              <img src="icon_green_cool.gif" onClick="insert('[cool]', '')" />
              <img src="icon_green_razz.gif" onClick="insert('[razz]', '')" /><br />
              <input type="button" value="Fettschrift" onClick="insert('<b>', '</b>')">
              <input type="button" value="Kursivschrift" onClick="insert('<i>', '</i>')">
        </p>
        <input type="submit" name="send" value="Senden">
    </form>
    PHP-Code:
    <?php
    if (isset($_POST['send'])){

    $settext $_POST['settext'];

    // Suchmuster
    $a[0] = '/\[smile\]/';
    $a[1] = '/ \[wink\]/';
    $a[2] = '/\[lol\]/';
    $a[3] = '/\[cool\]/';
    $a[4] = '/\[razz\]/';


     
    // ersetzen durch
    $b[0] = '<img src="icon_green_smile.gif" />';
    $b[1] = '<img src="icon_green_wink.gif" />';
    $b[2] = '<img src="icon_green_lol.gif" />';
    $b[3] = '<img src="icon_green_cool.gif" />';
    $b[4] = '<img src="icon_green_razz.gif" />';

    // BBC durch HTML ersetzen
    $replace preg_replace($a$b$settext);

    // Zeilenumbrüche einfügen
    $output str_replace('
    '
    '<br />'$replace);

    echo
    '<br /><br />'.$output;
    }
    ?>
    Geändert von Donkey (31.08.2009 um 11:50 Uhr)

Ähnliche Themen

  1. BB-Code und Smiley Script
    Von Unregistriert im Forum Script-Archiv
    Antworten: 0
    Letzter Beitrag: 22.06.2009, 19:00
  2. Planet-Smilie
    Von Carolyn im Forum Forum-Hilfe.de intern
    Antworten: 4
    Letzter Beitrag: 14.01.2008, 21:56
  3. Script code
    Von Freezy91 im Forum Script-Archiv
    Antworten: 1
    Letzter Beitrag: 27.10.2006, 22:39
  4. smilie
    Von Raiden im Forum Forum für Grafiken und Bildbearbeitung
    Antworten: 6
    Letzter Beitrag: 09.07.2005, 13:43
  5. Run-away-Smilie
    Von Carolyn im Forum Forum-Hilfe.de intern
    Antworten: 3
    Letzter Beitrag: 19.11.2003, 18:57

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •