Umbruch

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

  • Umbruch

    hi,
    ich habe mal eine Frage
    Und zwar, auf www.markus-z.de ist oben rechts eine shoutbox, aber wie man sieht wenn man ein Wort zu lang schreibt, dass es dann sich in die Breite zieht, wie kann ich sowas verhindern?
    Mfg Markus

  • #2
    soweit ichs verstanden habe, suchst du das:
    PHP-Code:
    $text "Der schnelle braune Fuchs sprang über den faulen Hund.";
    $neuertext wordwrap$text20 );

    echo 
    "$neuertext\n"
    EDIT:
    20 heißt gleich 20zeichen und danach umbruch
    jeder mensch macht fehler

    Kommentar


    • #3
      vllt. kannst mir mal helfen das da einzubauen?
      PHP-Code:
      <?
      include("mySQLconnect.php");
      $abfrage = "SELECT * FROM shout ORDER BY id DESC LIMIT 1";
      $ergebnis = mysql_query($abfrage) or die(mysql_error());0
      while($row = mysql_fetch_object($ergebnis))
      {
      echo "<table width=\"254\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\"><tr><td width=\"50\"><b><font color=\"#33ff00\">N</font></b><font color=\"#33cc00\">ame:</font></td><td width=\"172\"><font color=\"#33cc00\">";
      echo "$row->name";
      echo "</font></td><td width=\"45\">";
      echo "<a href=\"javascript: var win=open('addshout.php','','toolbar=no,screenX=0,screenY=0,width=600,height=250,directories=no,status=yes,scrollbars=false,resize=no,menubar=no,location=no,copyhistory=no')\">[shout]</a>";    
      echo "</tr><tr height=\"13\"><td height=\"13\" valign=\"top\"><b><font color=\"#33ff00\">T</font></b><font color=\"#33cc00\">ext:</font></td><td width=\"175\" height=\"13\"><font color=\"#33cc00\">";
      echo "echo "row->shout";
      echo "</font></td><td width=\"41\" height=\"13\" valign=\"top\">";
      echo "<a href=\"javascript: var win=open('allshout.php','','toolbar=no,screenX=0,screenY=0,width=400,height=600,directories=no,status=yes,scrollbars=yes,resize=no,menubar=no,location=no,copyhistory=no')\">[archiv]</a>";
      echo "</td></tr></table>";
      }

      ?>
      mmh, aber wie füge ich das nun ein???
      Wo könnte ich $text = row->shout festlegen???
      Mfg Markus
      Zuletzt geändert von jUnk2k4; 29.05.2004, 01:08.

      Kommentar


      • #4
        Original geschrieben von jUnk2k4
        vllt. kannst mir mal helfen das da einzubauen?
        PHP-Code:
        <?
        include("mySQLconnect.php");
        $abfrage = "SELECT * FROM shout ORDER BY id DESC LIMIT 1";
        $ergebnis = mysql_query($abfrage) or die(mysql_error());0
        while($row = mysql_fetch_object($ergebnis))
        {
        echo "<table width=\"254\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\"><tr><td width=\"50\"><b><font color=\"#33ff00\">N</font></b><font color=\"#33cc00\">ame:</font></td><td width=\"172\"><font color=\"#33cc00\">";
        echo "$row->name";
        echo "</font></td><td width=\"45\">";
        echo "<a href=\"javascript: var win=open('addshout.php','','toolbar=no,screenX=0,screenY=0,width=600,height=250,directories=no,status=yes,scrollbars=false,resize=no,menubar=no,location=no,copyhistory=no')\">[shout]</a>";    
        echo "</tr><tr height=\"13\"><td height=\"13\" valign=\"top\"><b><font color=\"#33ff00\">T</font></b><font color=\"#33cc00\">ext:</font></td><td width=\"175\" height=\"13\"><font color=\"#33cc00\">";
        echo "echo "row->shout";
        echo "</font></td><td width=\"41\" height=\"13\" valign=\"top\">";
        echo "<a href=\"javascript: var win=open('allshout.php','','toolbar=no,screenX=0,screenY=0,width=400,height=600,directories=no,status=yes,scrollbars=yes,resize=no,menubar=no,location=no,copyhistory=no')\">[archiv]</a>";
        echo "</td></tr></table>";
        }

        ?>
        mmh, aber wie füge ich das nun ein???
        Wo könnte ich $text = row->shout festlegen???
        Mfg Markus
        1. wo ist jetzt das problem?
        2. ist das eine einzigste sauklaue
        3. kannst dir die ganzen unnötigen zuvielen echos sparen! ( dann entstehen auch weniger bis gar keine fehler )

        Es kommt nicht darauf an, mit dem Kopf durch den Monitor zu rennen,
        sondern mit den Augen das Manual zu lesen.

        Kommentar


        • #5
          das problem ist da, dass ich nicht weiss wo ich das gleichsetzen soll, hab ich es vor der whileschleife gemacht, kam ein fehler!
          Mfg Markus

          Kommentar


          • #6
            na überlege mal, wenn du es vor der while schleife stetzt, wo soll er den text herbekommen? ich denke du kommst da von alleine drauf !!
            Mit freundlichen Grüßen
            Werner

            Kommentar


            • #7
              mmh, der code ist jetzt so:

              PHP-Code:
              <?
              include("mySQLconnect.php");
              $abfrage = "SELECT * FROM shout ORDER BY id DESC LIMIT 1";
              $ergebnis = mysql_query($abfrage);
                while($row = mysql_fetch_object($ergebnis))
              {
              $newshout = wordwrap( $row->shout, 20 );
              echo "<table width=\"254\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\"><tr><td width=\"50\"><b><font color=\"#33ff00\">N</font></b><font color=\"#33cc00\">ame:</font></td><td width=\"172\"><font color=\"#33cc00\">";
              echo "$row->name";
              echo "</font></td><td width=\"45\">";
              echo "<a href=\"javascript: var win=open('addshout.php','','toolbar=no,screenX=0,screenY=0,width=1009,height=697,directories=no,status=yes,scrollbars=false,resize=no,menubar=no,location=no,copyhistory=no')\">[shout]</a>";    
              echo "</tr><tr height=\"13\"><td height=\"13\" valign=\"top\"><b><font color=\"#33ff00\">T</font></b><font color=\"#33cc00\">ext:</font></td><td width=\"175\" height=\"13\"><font color=\"#33cc00\">";
              echo "$newshout\n";
              echo "</font></td><td width=\"41\" height=\"13\" valign=\"top\">";
              echo "<a href=\"javascript: var win=open('allshout.php','','toolbar=no,screenX=0,screenY=0,width=1009,height=697,directories=no,status=yes,scrollbars=false,resize=no,menubar=no,location=no,copyhistory=no')\">[archiv]</a>";
              echo "</td></tr></table>";
              }

              ?>
              aber es wird immernoch nicht ein Umbruch eingefügt!
              www.markus-z.de
              Was ist falsch?
              Mfg Markus

              Kommentar


              • #8
                Versuch mal

                PHP-Code:
                $newshout wordwrap $row->shout,  20,  "\n"1); 
                Das sollte klappen....

                Lies dir auch mal die Beschreibung zur Funktion wordwrap() auf PHP.net durch....


                MfG
                Für alle die Fehler suchen, gibts gratis tolle Debuggingmöglichkeiten:
                var_dump(), print_r(), debug_backtrace und echo.
                Außerdem gibt es für unsere Neueinsteiger ein hervorragendes PHP Tutorial zu PHP 4 und PHP 5 (OOP)
                Es heißt $array['index'] und nicht $array[index]! Und nein, das ist nicht egal!
                Dieses Thema lesen, um Ärger im Forum und verzögerte Hilfen zu vermeiden.

                Kommentar


                • #9
                  das geht nun schonmal, danke!
                  Aber noch was!
                  In der Datenbank habe ich angegeben, dass der Eintrag nur 100 Zeichen hben darf, wie mach ich es, dass ein Eintrag egal viele Buchstaben enhalten darf, aber nach 4 Zeilen es aufhört auszugeben und mit ... weitergeht?

                  d.h.

                  Name: Markus
                  Text: TEST TEST TEST TEST TEST TEST
                  TEST TEST TEST TEST TEST TEST TEST
                  TEST TEST TEST TEST TEST TEST TEST
                  TEST TEST TEST TEST TEST TEST TEST

                  aber nur

                  Name: Markus
                  Text: TEST TEST TEST TEST TEST TEST
                  TEST TEST TEST TEST TEST TEST TEST
                  TEST TEST TEST TEST TEST TEST ...
                  ausgegeben wird?
                  Mfg Markus

                  Kommentar


                  • #10
                    strlen()
                    substr()
                    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                    Kommentar


                    • #11
                      ich habs nunmal so probiert:

                      PHP-Code:
                      <?
                      include("mySQLconnect.php");
                      $abfrage = "SELECT * FROM shout ORDER BY id DESC LIMIT 1";
                      $ergebnis = mysql_query($abfrage);
                        while($row = mysql_fetch_object($ergebnis))
                      {

                      $maxTextLenght=30;
                      $aspace=" ";
                      if(strlen($newshout) > $maxTextLenght ) {
                      $newshout = substr(trim($newshout),0,$maxTextLenght); 
                      $newshout = substr($newshout,0,strlen($newshout)-strpos(strrev($newshout),$aspace));
                      $newshout = $newshout.'...';
                      }

                      $newshout = wordwrap ( $row->shout,  13,  "\n", 1);
                      echo "<table width=\"254\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\"><tr><td width=\"50\"><b><font color=\"#33ff00\">N</font></b><font color=\"#33cc00\">ame:</font></td><td width=\"172\"><font color=\"#33cc00\">";
                      echo "$row->name";
                      echo "</font></td><td width=\"45\">";
                      echo "<a href=\"javascript: var win=open('addshout.php','','toolbar=no,screenX=0,screenY=0,width=600,height=250,directories=no,status=yes,scrollbars=false,resize=no,menubar=no,location=no,copyhistory=no')\">[shout]</a>";    
                      echo "</tr><tr height=\"13\"><td height=\"13\" valign=\"top\"><b><font color=\"#33ff00\">T</font></b><font color=\"#33cc00\">ext:</font></td><td width=\"175\" height=\"13\"><font color=\"#33cc00\">";
                      echo "$newshout\n";
                      echo "</font></td><td width=\"41\" height=\"13\" valign=\"top\">";
                      echo "<a href=\"javascript: var win=open('allshout.php','','toolbar=no,screenX=0,screenY=0,width=300,height=600,directories=no,status=yes,scrollbars=yes,resize=no,menubar=no,location=no,copyhistory=no')\">[archiv]</a>";
                      echo "</td></tr></table>";
                      }

                      ?>
                      geht aber wieder nicht, was ist daran falsch?
                      Mfg Markus

                      Kommentar


                      • #12
                        Original geschrieben von jUnk2k4
                        geht aber wieder nicht, was ist daran falsch?
                        gewöhn dir mal andere fehlerbeschreibungen an!

                        wo wird denn $newshout definiert?
                        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                        Kommentar


                        • #13
                          ok, mach ich, sry!

                          Hier:
                          PHP-Code:
                          $newshout wordwrap $row->shout,  13,  "\n"1); 
                          und
                          PHP-Code:
                          $row->shout 
                          wird aus der Datenbank ausgelesen!

                          Es kommt auch keine Fehlermeldung oder anderes!
                          Mfg markus

                          Kommentar


                          • #14
                            du definierst eine variable NACHDEM du sie verwenden willst? meinst du nicht, dass das etwas sinnfrei ist?
                            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                            Kommentar


                            • #15
                              ups, danke
                              Mfg Markus

                              Kommentar

                              Lädt...
                              X