Maximale Wortlänge anpassen/zulassen

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Maximale Wortlänge anpassen/zulassen

    Hi@all! Ich fange grade erst mit PHP/MySQL an und stoße auf ein kleines Problem:

    Ich habe in einem String ein Wort, welches so lang ist (mehrere hundert Zeichen ohne Leerzeichen), dass es beim Anzeigen dieses Strings mein gesamtes Layout zerreißt. Hier mein Quelltext des Anzeigescripts (es handelt sich um ein Gästebuch):

    PHP Code:
    <?php
    include("includes/mysql_connect.php");


    $sql="select *,DATE_FORMAT(datum,'%d.%m.%Y %H:%i:%s') as newDatum from guestbook order by datum desc";
    $query=mysql_query($sql);

        
    while (
    $data=mysql_fetch_array($query)) {

    echo 
    "<table width='500' border='1' bordercolor='#000000' cellspacing='0' cellpadding='0'>";

    echo 
    "

              <tr>
                <td>Name:</td>
                <td>eMail:</td>
                <td>Datum:</td>
              </tr>
                <tr>
                <td>
    $data[name]</td>
                <td>
    $data[email]</td>
                <td>
    $data[newDatum]</td>
              </tr>
              <tr>
                <td height='250' colspan='3' valign='top'><table cellspacing='0' border='0' cellpadding='0' width='500'><tr><td valign='top'>"
    ;echo nl2br($data[eintrag]);echo "</table></td></tr></td></tr>";
              
              
    echo 
    "</table>";

    echo 
    "<p>&nbsp;</p>";


    }




    ?>

    Wie kann ich bei der Ausgabe einen Zeilenumbruch (oder etwas ähnliches) erzwingen, sodass mein Layout immer gleich bleibt?
    Ach ja, und warum wird bei der Tabelle das "border-color" ignoriert? Eine CSS_datei verwende ich noch nicht, kommt noch, aber ich möchte schonmal auf den ersten Blick sehen wies aussieht.


    Vielleicht hilft euch auch der Quelltext des Formulars zum Eintragen weiter:


    PHP Code:
    <?php
    include("includes/mysql_connect.php");

    $datum date("Y-m-d H:i:s");

    if(
    $_GET["submit"] == 'Eintragen') {

      
    $datum date("Y-m-d H:i:s");

        if ((
    $name != "") and ($email  != "") and ($eintrag != "")){
        
        
    $eintrag=strip_tags($eintrag);
        
        
    $sql="INSERT INTO guestbook (name,datum,email,eintrag) values ('$name','$datum','$email','$eintrag')";
        
    $query=mysql_query($sql);
        echo 
    "Dein Eintrag wurde gespeichert!";
        } else {
            
            echo 
    "Bitte alle Felder ausfüllen";    
        
            }
        
    }
    ?>


    <form name="guestentry" method="get" action="<?PHP_SELF?>">

      Name: 
      <label>
      <input name="name" type="text" maxlength="255">
      </label>
     eMail:  
     <label>
     <input type="text" name="email">
     </label>
      Datum: <?php echo date("d.m.Y H:i:s"?><br>
      Nachricht:</br>
      <br> 
        <label>
        <textarea name="eintrag" cols="60" rows="8"></textarea>
        </label>
      </br>
      <p>
        <label>
        <input name="submit" type="submit" id="submit" value="Eintragen">
        </label>
      </p>
    </form>



    DANKE schonmal für eure Hilfe,

    BlackWizard

  • #2
    hallo und willkommen im forum BlackWizard,

    schau dir mal wordwrap() an - sollte dir weiterhelfen.
    Computernotdienst Eisleben
    Softwarelösung für Rechtsanwälte und Notare

    Comment


    • #3
      Original geschrieben von piep83
      hallo und willkommen im forum BlackWizard,

      schau dir mal wordwrap() an - sollte dir weiterhelfen.
      Danke für die schnelle Antwort! Ich kann es erst nachher ausprobieren, klappt das ganze denn auch wenn html-tags gestript werden?
      PHP Code:
      $eintrag=strip_tags($eintrag); 
      so stehts ja bei mir oben.

      mfg BlackWizard

      Comment


      • #4
        Original geschrieben von BlackWizard
        klappt das ganze denn auch wenn html-tags gestript werden?
        Und wenn nicht könntest du's einfach davor machen.

        Aber: Ja!

        Comment


        • #5
          Funktioniert einwandfrei, klasse ! So sieht das Script nun aus:

          PHP Code:
          <?php
          include("includes/mysql_connect.php");


          $sql="select *,DATE_FORMAT(datum,'%d.%m.%Y %H:%i:%s') as newDatum from guestbook order by datum desc";
          $query=mysql_query($sql);

              
          while (
          $data=mysql_fetch_array($query)) {

          $umbrucheintrag wordwrap($data[eintrag], 55"\n"1);

          echo 
          "<table width='500' border='1' bordercolor='#000000' cellspacing='0' cellpadding='0'>";

          echo 
          "

                    <tr>
                      <td>Name:</td>
                      <td>eMail:</td>
                      <td>Datum:</td>
                    </tr>
                      <tr>
                      <td>
          $data[name]</td>
                      <td>
          $data[email]</td>
                      <td>
          $data[newDatum]</td>
                    </tr>
                    <tr>
                      <td height='250' colspan='3' valign='top'>"
          ;echo nl2br($umbrucheintrag);echo "</td></tr>";
                              
          echo 
          "</table>";

          echo 
          "<p>&nbsp;</p>";

          }

          ?>
          DANKE!

          Comment


          • #6
            nächstes mal bitte den code umbrechen!

            Comment

            Working...
            X