Ankündigung

Einklappen
Keine Ankündigung bisher.

smilie Ordner auslesen und dann wieder einfügen für bbc code

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • smilie Ordner auslesen und dann wieder einfügen für bbc code

    Ich möchte für eine Shoutbox einen Smilie Ordner auslesen ,damit der User sich (wenn er will ) immer mehr Smilies nachladen kann.
    12 sind normal und mit einen Link "mehr Smilies" sollen mehr kommen.
    Die sollen angezeigt werden und für das übliche Javascript verfahren anklickbar sein .Dafür wird ja meistens ein kürzel oder Wort genommen. Das kürzel ,bzw Wort hole ich aus den Dateinamen.
    Das funktioniert auch alles.
    Aber hier trotzdem mal der Code weil ihr habt bestimmt nee bessere Idee dafür
    PHP-Code:
    <?php
    error_reporting
    (E_ALL);
    ini_set('display_errors'true);
    $verzeichnis "./emoticon/small/";
    if ( 
    is_dir $verzeichnis )){
        if ( 
    $handle opendir($verzeichnis) ){
            
    $dazu='';
            
    $zahlen=0;
            while ((
    $file readdir($handle)) !== false){
                
    $ext pathinfo($filePATHINFO_EXTENSION);
                
    $killen=array('index.php','test1.php','test2.php','test.php');
                if (!
    in_array($file$killen)) {
                    if(
    $ext == 'png' or $ext == 'jpg' or $ext == 'gif'){
                         
    $zahlen++;
                         
    $remove2 = array('-''+''_','.png','.gif','gif');
                         
    $smiliebbckuerzel str_replace($remove2" "$file);
                         
    $ar str_word_count($smiliebbckuerzel1);
                         if(isset(
    $_GET['mehrsmilies'])){
                              
    $mengesmilies=$_GET['mehrsmilies'];
                         }else{
                              
    $mengesmilies=12;
                         }
                              
    $more=$mengesmilies+24;
                         if(
    $zahlen<=$mengesmilies){
                              
    $w=" '";
                              
    $dazu.='<a href="javascript:smilie_sb('.$w.$ar[0].$w.');"><img src="'.$verzeichnis.$file.'" alt="Smilie '.$ar[0].'" style="border: 0;" /></a>';
                              if(
    $zahlen==$mengesmilies){
                                    
    $dazu.='<a href="?mehrsmilies='.$more.'">24 Smilies mehr</a>';
                              }  
                         }  
                    }
                }
            }
            echo 
    $dazu;
            
    closedir($handle);
        }
    }
    ?>
    Wenn man die Smilies anklickt wird das kürzel in das Sendefeld eingetragen und nach den Senden wird das kürzel in der Shoutbox angezeigt.
    Also muss man das Kürzel ja mit repleace mit den img austauschen.
    Da ist jetzt mein problem.
    Mit fummeln und co ,schaffe ich es nur das der letzte Smilie im Ordner ersetzt wird. Ich könnte ja jetzt für alle Smilies das repleace schreiben ,doch ich wollte es eigentlich über den Ordner auslesen machen.

    Hier der Code der nur halb funktioniert
    PHP-Code:
    <?php
    function shout01_smilies($text){
        
    $verzeichnis "./emoticon/small/";
        if ( 
    is_dir $verzeichnis )){
            if ( 
    $handle opendir($verzeichnis) ){
            
    $dazu='';
            
    $zahlen=0;
            
    $text1='';
                while ((
    $file readdir($handle)) !== false){
                
    $ext pathinfo($filePATHINFO_EXTENSION);
                
    $killen=array('index.php','test1.php','test2.php','test.php');
                    if (!
    in_array($file$killen)) {
                       if(
    $ext == 'png' or $ext == 'jpg' or $ext == 'gif'){
                           
    $zahlen++;
                           
    $remove2 = array('-''+''_','.png','.gif','gif');
                           
    $smiliebbckuerzel str_replace($remove2" "$file);
                           
    $ar str_word_count($smiliebbckuerzel1);
    //------------- ab hier ist mein problem
                           
    $uu=$ar[0];
                           
    $li=$verzeichnis.$file;
                         
    //  $text.=str_replace($uu, '<img src="'.$li.'">', $text);
                           
    $text=str_replace($uu'<img src="'.$li.'">'$text);
                           return 
    $text;
    //---------------------------
                       
    }
                    }
                }
                
    closedir($handle);
            }
          }
    }
    echo 
    shout01_smilies('prost');
    ?>
    Was kann oder muss ich ändern damit jede Smilie geauscht wird und nicht nur der letzte im Ordner?
    Oder wie kann mein vorhaben auch anders machen ?
    Alle Chats und Shoutboxen die ich so gefunden habe hatten alle feste Smilies und wahren nicht wie ich es möchte einfach im Ordner tauschbar
    Ich mach keine Rechtschreibfehler - ich schreib Freestyle!
    Erreichbar in mein Javascript-Forum und in Facebook-Chat

  • #2
    Warum der Aufwand, wenn mittlerweile jedes Handy und jeder PC Emojis von Haus aus kann, UTF8 sei dank.

    Kommentar


    • #3
      Zitat von Zeichen32 Beitrag anzeigen
      Warum der Aufwand, wenn mittlerweile jedes Handy und jeder PC Emojis von Haus aus kann, UTF8 sei dank.
      Dafür gibts doch reichlich Gründe. Falsche Darstellung, uneinheitliches Design, fehlende Emojis, Größenprobleme und alles sieht überall gleich aus. Der Tot jeder Individualität, der einer Seite erst den Mehr- und Wiedererkennungswert verleiht. Willst Du Erfolg haben, mach nie was andere schon zeigen!
      bitcoin.de <- Meine Freelancerwährung

      Kommentar


      • #4
        Falsche Darstellung & uneinheitliches Design & größen Probleme:
        Die Darstellung ist abhängig von der ausgewählten Font. Nimm eine Font welche alle Emojies beinhaltet, schon sehen sie überall gleich aus und es findet kein Fallback auf die standard Schriftart statt. z.B. (https://www.google.com/get/noto/help/emoji/)

        Fehlende Emojis:
        Es gibt so viele Emojis in UTF8 das ich sie nicht zählen kann(https://unicode.org/emoji/charts/full-emoji-list.html), wenn da wirklich mal eins fehlen sollte, kann man so wie die unzähligen Icon Libraries noch eigene Schriftzeichen hinzufügen.

        Ich sehe daher keinen Grund Emojis wie in den 90er als Bilder zu hinterlegen und jedesmal den Text zu parsen und durch die passenden Bilder zu ersetzen.

        Kommentar


        • #5
          1. Ist das Problem der chaotische Code. ( Alles vermischt , HTML PHP JS )
          2. Hast Du mein Problem weder erfasst noch verstanden. Wenn ich sage es fehlt was, meine ich nicht mir fehlt etwas, sondern die Umsetzung ist nicht vollständig bei den unterschiedlichen Geräten durchgeführt worden. Auf die Pixelgenaue Darstellung bin ich auch gespannt. Mal davon abgesehen, dass das Design der Seite nicht unbedingt mit dem Aussehen der Smilies übereinstimmen wird. Deine Lösungsvorschläge sind also keine, sondern nur Ausreden, ein Problem gut zu reden was garnicht lösbar ist.
          bitcoin.de <- Meine Freelancerwährung

          Kommentar


          • #6
            Ja dann habe ich dein Problem wohl wirklich nicht verstanden... Ich habe nur den Weg erklärt welcher wohl Betriebssystem,- (Android, iOS, Windows) wie auch Browser übergreifend aktuell der Standard ist.

            Kommentar


            • #7
              Zitat von Alpha Beitrag anzeigen
              Hast Du mein Problem weder erfasst noch verstanden (..)
              Deine Lösungsvorschläge sind also keine, sondern nur Ausreden, ein Problem gut zu reden was garnicht lösbar ist.
              Hallo Alpha bist Du auch basti1012 ?

              Das Problem ist folvgerndermasen formuliert:

              Was kann oder muss ich ändern damit jede Smilie geauscht wird und nicht nur der letzte im Ordner?

              Da ist weder was gutzureden noch ein n komplexes Problem; wenn Du als TE also Deine Problembeschreibung ändern würdest.

              Kommentar


              • #8
                Ok ,das bringt mich jetzt auch nicht wirklich weiter.
                Ich glaube das das Thema ehr wieder zu (Wieso Weshalb und Warum ) führt dewegen entscheide ich mich einfach für

                Zitat von Zeichen32 Beitrag anzeigen
                Es gibt so viele Emojis in UTF8 das ich sie nicht zählen kann(https://unicode.org/emoji/charts/full-emoji-list.html)
                die Einfachere Methode.
                Da brauche ich ja nix zu replacen().
                Dann brauche ich auch kein Ordner auslesen und jede kann seine eigene Smilies einfügen wenn er will.
                Also einfacher und brauche mich nicht aufrege weil nix funktionieren will.




                Zitat von tomBuilder Beitrag anzeigen

                Hallo Alpha bist Du auch basti1012 ?
                Da ist weder was gut zureden noch ein n komplexes Problem; wenn Du als TE also Deine Problembeschreibung ändern würdest.
                Nee ist er nicht.
                Meine Problem ist eigentlich nur noch das beim ersetzen nur der letzte Smilie ersetzt werden kann.
                ich dachte das der Punkt nach der Variable das erreicht
                PHP-Code:
                $text.=str_replace($uu'<img src="'.$li.'">'$text); 
                doch geht es nicht .wie gesagt der letzte eingelesene Smilie ist tauschbar ,die anderen werden nicht getauscht
                Ich mach keine Rechtschreibfehler - ich schreib Freestyle!
                Erreichbar in mein Javascript-Forum und in Facebook-Chat

                Kommentar


                • #9
                  Zitat von tomBuilder Beitrag anzeigen

                  Hallo Alpha bist Du auch basti1012 ?....
                  Nein!
                  bitcoin.de <- Meine Freelancerwährung

                  Kommentar


                  • #10
                    schön das es geht basti1012 , der Code ist nicht einfach zu verstehen...
                    Gut Alpha dann bewerte doch bitte nicht wer welches Problem wieweit (verstanden) hat, das brint nur unruhe, odder:
                    Ich glaube das das Thema ehr wieder zu (Wieso Weshalb und Warum ) führt dewegen entscheide ich mich einfach für

                    Kommentar


                    • #11
                      Zitat von tomBuilder Beitrag anzeigen
                      schön das es geht basti1012 , der Code ist nicht einfach zu verstehen...
                      Gut Alpha dann bewerte doch bitte nicht wer welches Problem wieweit (verstanden) hat, das brint nur unruhe, odder:
                      ?

                      Verwechselst Du gerade das bewertende Bewerten anderer Bewertungen, die ich bewerte oder ging es nur ums Bewerten? Falls ja, wäre hier Deine erste Anlaufstelle. Bewertungsinstanz:
                      Zitat von Zeichen32 Beitrag anzeigen
                      Warum der Aufwand, wenn mittlerweile jedes Handy und jeder PC Emojis von Haus aus kann, UTF8 sei dank.
                      Korrektheit einzufordern, erfordert eben korrekt alles zu erfassen und nicht nur einen Tunnelblick auf einen Wunschaspekt zu lenken!


                      bitcoin.de <- Meine Freelancerwährung

                      Kommentar


                      • #12
                        oh man , wortspiele oder solche die nes sein sollten....

                        Also gut Alpha, als NICHT-TE stehen Dir solche Sätze nicht zu:

                        Hast Du mein Problem weder erfasst noch verstanden.
                        Wenn ich sage es fehlt was, meine ich nicht mir fehlt etwas, sondern die Umsetzung ist nicht vollständig bei den unterschiedlichen Geräten durchgeführt worden
                        Denn wenn Du ein Problem hast, mache einen Thread auf und führe keine Seitendiskussionen, bei denen nur motiviertere Moitforisten aus dem Thema gedrängt werden.
                        Dass auch der TE sein Thread als gekapert ansieht, scheint Dich auch nicht zu interessieren.

                        fraglich was solche soziale Kompetenz in einem Forum verlohren hat und fraglich wieso die Moderation hier nicht einschreitet.


                        Kommentar

                        Lädt...
                        X