FrontEnd Wörterformatierung

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

  • FrontEnd Wörterformatierung

    Hallloo zusammen

    Nun folgende Situtation:
    Der User kann im Frontend.. Text eingeben.. weiter klicken.. und sieht seinen Text.. per Klick auf das Wort wird es Fett...
    nachdem gelangt er zu der GD-Grafikenerstellung.....

    Das Script welches im Hintergrund die Wörter Fett macht (wo der User auswählt) sieht folgender massen aus:


    PHP-Code:
    PHP-Code:
    if(substr($text, -4) == "<br>"
                    
    $text substr($text0, -4); 
                if(!
    ereg(" <br>"$text)) 
                    
    $text str_replace('<br>',' <br>'$text); 
                
    $texplode explode(" "trim($text)); 
                
    $text ''
                if(isset(
    $_GET['tpos'])) { 
                    for(
    $i=0;$i<count($texplode);$i++) { 
                        if(isset(
    $_GET['tpos']) && $_GET['tpos'] == $i) { 
                            if(
    substr($texplode[$i], 03) == "<b>") { 
                                
    $varitext str_replace('<br>','|'$texplode[$i]); 
                                
    $varitext strip_tags($varitext)." "
                                
    $text .= str_replace('|','<br>'$varitext); 
                            } else { 
                                
    $text .= "<b>".trim($texplode[$i])."</b> "
                            } 
                        } else { 
                            
    $text .= $texplode[$i]." "
                        } 
                    } 
                    
    $print->put("text"$text); 
                    
    $print->save(); 
                    
    $text $print->get("text"); 
                    
    $texplode explode(" "trim($text)); 
                    
    $text ''
                }
    for(
    $i=0;$i<count($texplode);$i++) {
                    if(
    $texplode[$i]== "<br>") {
                        
    $text .= $texplode[$i];
                    } else {
                        
                        if(
    ereg("<br>"$texplode[$i])) {
                            
    $text .= "<br><a href=\"".$_SERVER['PHP_SELF']."?load=step3&tpos=$i\" class=\"alink\">".str_replace('<br>',''$texplode[$i])."</a> ";
                        } else {
                            
    $text .= "<a href=\"".$_SERVER['PHP_SELF']."?load=step3&tpos=$i\" class=\"alink\">".$texplode[$i]."</a> ";
                        }
                    }
                } 
    Ich sehe gerade den Fehler nicht..
    und zwar wenn man folgendes eingibt:

    Zeile1: Hallo ich werde <b>FETT</b> geschrieben
    Zeile2: Hallo ich werde <b>FETT</b> geschrieben
    Zeile3: Hallo ich werde <b>FETT</b> geschrieben



    das wird PERFEKT in der GD-Grafik angezeigt...
    aber wenn ich folgendes eingebe:
    Zeile1: Wort1
    Zeile2: Wort1
    Zeile3: Wort1

    und nun alle Fett setze
    kommt folgendes in der GD-Grafik:




    Er soll eigentlich Wort für Wort <b>Wort</b> machen.....

    Das kommt heraus bei den Wort Eingaben: <b>Wort1</b> <b><br>Wort1</b>

    Er setzt mir das <br> zu spät.. eigentlich sollte es ja vor dem <b> sein...
    da sonst meine GD-Grafik das nicht checkt...

    P.S. 1 Zeile ist immer Fett und auf Zeilen beschränkt

    Danke schon im Voraus
    Es wäre wirklich dringend.. ich bin echt schon verzweifeln

  • #2
    wie und womit wird im frontend der mehrzeilige text eingegeben?
    **********
    arkos
    **********

    Kommentar


    • #3
      Es ist eben ein Template System

      Es wird im Frontend nur die Variable: $text ausgegeben...
      Du siehst im Code das ich alles in die $text verpacke....
      PHP-Code:
      for($x=0$x count($_POST[zeile]); $x++) {
                      if(empty(
      $_POST[zeile][$x]))
                          continue;
                      
      $text .= $_POST[zeile][$x]."<br>";
                      
      $anzzeilen++;
                  } 
      da werden die zeilen zusammen zu $text verbunden

      Nun habe ich noch ein Problem entdeckt:

      Wenn ich ca. 3x auf ein Wort klicke kommt dies mit der Variabel mit:

      <b><b><b>Wort</b></b></b>

      als Notlösung habe ich für das <br> folgendes gewählt:
      $text = str_replace('<b><br>','<br><b>',$text);

      ist aber auch nicht sauber.. Ich seh das Problem echt nicht..

      gruss
      rezix

      Kommentar


      • #4
        Original geschrieben von rezix
        Nun habe ich noch ein Problem entdeckt:
        Wenn ich ca. 3x auf ein Wort klicke kommt dies mit der Variabel mit:
        <b><b><b>Wort</b></b></b>
        dann solltest du es genau da anpacken. vermeiden, dass man mehr als einmal formatiert...
        **********
        arkos
        **********

        Kommentar


        • #5
          Das geht leider nicht... Wenn der User die Vorschau ansieht (GD-Grafik)
          und merkt es ist nicht gut soll er es formatieren können..

          Siehst du den Fehler nicht gerade?

          Kommentar


          • #6
            wenn ich ehrlich bin, bin ich noch nicht ganz durch dein konzept gestiegen. und da fällts mir schwer, deinen code nachm fehler zu untersuchen.

            und schon wieder versteh ich was nicht. wenn der benutzer klickt passiert ja was. warum kann denn beim klick nicht überprüft werden, ob da schon <b>wort</b> steht und im true-falle kein weiters <b></b> hinzugefügen...

            hast du irgendwo n online-beispiel zum anschauen?
            **********
            arkos
            **********

            Kommentar


            • #7
              Ich erklär dir kurz das Konzept damit du verstehst was ich meine....

              Der User kann Inserate erstellen kann für die Zeitung.....

              Step1:er hat einige zeilen....
              tippt einen text ein und klickt auf weiter..

              Step2: danach sieht er seinen Text und kann per Mausklick auswählen welches Wort FETT geschrieben soll oder nicht...

              Step3: Danach hat er einen Link "inseratvorschau" dort sieht er seinen Text in der GD-Grafik (1:1 zum Zeitungsinserat)....

              Da Problem liegt ja zwischen Step2 und Step3
              die übergabe der Variable $text....

              Ein Beispiel wenn ich mehrere Male auf Wörter klicke:

              &text=<b>fweawfe</b> <b> <br>fewawef</b></b></b></b></b>
              Er macht auch viele Leerzeichen rein..? bei &text... wooo ist der bug??
              Das kann ja die GD-Grafik niemals lesen......?
              verstehst du mich?

              gruss
              rezix
              Zuletzt geändert von rezix; 12.12.2007, 10:55.

              Kommentar


              • #8
                du hast ihn net verstanden rezix
                arkos hat dir schon gesagt das du beim fetten bzw beim code erzeugen prüfen musst das alles richtig ist bzw richtig erzeugen lassen..


                edit: huh auf einmal is im ersten post code oO
                Die Milch bleibt ranzig!

                Kommentar


                • #9
                  Original geschrieben von RanzigeMilch
                  du hast ihn net verstanden rezix
                  arkos hat dir schon gesagt das du beim fetten bzw beim code erzeugen prüfen musst das alles richtig ist bzw richtig erzeugen lassen..


                  edit: huh auf einmal is im ersten post code oO
                  Das ist mir bewusst ranzigemilch leider finde ich denn bug nicht darum wende ich mich zum Forum..

                  jo der code ist schon immer dort drin

                  so ein kleines bild damit man es bildlich vorstellen kann

                  Kommentar


                  • #10
                    bug is bei "2. klick text wird wieder normal"

                    ich sehe im code keine zeile, die irgendwas in richtung

                    PHP-Code:
                    str_replace'<b>' '' $text ); 

                    macht.... wie solls denn wieder normal werden?
                    **********
                    arkos
                    **********

                    Kommentar


                    • #11
                      hmm alles klar...danke schonmal..

                      funktioniert.. jetzt muss ich nur schauen wieso er soviel leerschläge macht..
                      kann ich dem str_replace auch mehrere Werte mit geben??

                      also <b> & </b> und & leerzeile durch nichts ersetzen??

                      Weil jedes mal wenn ich auf das Wort klicke hängt er eine leerzeile hin und das ganze verzieht sich
                      Zuletzt geändert von rezix; 12.12.2007, 13:14.

                      Kommentar


                      • #12
                        str_replace
                        du kannst auch jeweils arrays übergeben

                        Kommentar


                        • #13
                          Original geschrieben von krel
                          str_replace
                          du kannst auch jeweils arrays übergeben
                          hab das nun so eingebaut

                          PHP-Code:
                          $schneiden = array('<b>''</b>');
                          $text .= "".str_replace($schneiden''trim($texplode[$i]))." "
                          nun macht er folgendes...

                          Ist 1 Wort fett ist es wunderbar möchte ich ein 2 Wort fett machen..
                          wird das 1 Wort wieder normal aber dafür das 2 Wort Fett...???
                          Zuletzt geändert von rezix; 12.12.2007, 14:36.

                          Kommentar


                          • #14
                            dann hast du falsche bedingungen gesetzt
                            Die Milch bleibt ranzig!

                            Kommentar


                            • #15
                              hmm???

                              Kommentar

                              Lädt...
                              X