tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
5
ZUGRIFFE
334
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Registriert seit
    Aug 2003
    Ort
    Berlin
    Beiträge
    1.362
    Ich wüsste gern wie ich Texte die aus der Datenbank kommen kekürtz werden.

    Beispielsweise ein text ist 100 zeichen lang, das Limit lieg bei 50 Zeichen so das die Letzten 50 zeichen einfach durch "..." drei Punkte ersetzt werden.

    Kann mir da jemand ein Tutorial oder suchbegriff nennen oder eine einfach variante ?

    Ich habe gesucht im netzt und dieser seite, Aber ohne zu wissen nach was man suchen muss ist es schon recht schwer Ergebnisse ans Tageslicht zu Befördern.


    Gruß Andy
     

  2. #2
    Avatar von tydu
    tydu tydu ist offline Mitglied
    Registriert seit
    May 2004
    Beiträge
    18
    hi,

    die von Dir gesuchte Funktion ist substr.
    PHP-Code:
    echo substr($var,0,50)."..."
    Ciao tydu
     
    Wenn auch Welten uns trennen, die Sterne sind unsere Brücken

  3. #3
    Registriert seit
    Aug 2003
    Ort
    Berlin
    Beiträge
    1.362
    Danke . Wollte das Grade Selbst Posten habs gefunden.

    if(strlen


    Thx
     

  4. #4
    markes markes ist offline Mitglied
    Registriert seit
    Jun 2004
    Beiträge
    20
    habe hier auch noch was.. öffnet ein neues fenster in dem der ganze text drin steht

    PHP-Code:
          <?php
    //Daten auslesen
    $limit"4";
    $result mysql_query("SELECT * FROM $tab_news WHERE aktiv='Ja' ORDER BY id DESC Limit $limit",$link);  
    ?>
          <? while ($daten mysql_fetch_array($result)) {?>
          <img src="./lib/images/ab_right.gif" width="8" height="7"> <a href="javascript:popUp2('./lib/include/last.php<? echo '?last='.$daten[id].'' ?>')"> 
          <?
                 $news 
    $daten[subject];
                  
    $news_rest substr($news015);
    echo 
    substr($news_rest,  strrpos($news_rest"-3"))."...";

                   
    ?>
          </a><br>
          </strong> 
          <? 
    }
    ?>
    die last.php müsste dann so aussehen

    PHP-Code:
    <title>::: Latest News :::</title>
    <link href="../css/style.css" rel="stylesheet" type="text/css"> 
    <?php

    include("./config.inc.php");
    include (
    "./opendb.inc");

    ?>
    <SCRIPT LANGUAGE="JavaScript">
    function popUp(URL) {
    day = new Date();
    id = day.getTime();
    eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=1,location=0,statusbar=1,menubar=0,resizable=1,width=600,height=250,left = 180,top = 140');");
    }
    </script>
    <?
    if ($last) { 
    $sql "SELECT * FROM $tab_news WHERE id='$last'";
    $result mysql_query($sql,$link);
    ?>
    <? 
    while ($daten mysql_fetch_array($result)) { 
    $nachricht = ($daten['nachricht']);
    ?>
    <table width="85%" height="8" border="0" cellpadding="0" cellspacing="0" >
      <tr > 
        <td width="185" height="8" valign="middle"><strong><img src="../images/news.gif" width="10" height="9">&nbsp;<span class="subject"><? echo $daten[subject]; ?></span></strong></td>
        <td height="8" valign="middle">
    <div align="center"></div>
          <div align="right" ><strong><font face="Arial, Helvetica, sans-serif"><a href="#" onMouseOver="this.T_WIDTH=80; return escape('<div align=\center\>erstellt von: <br><? echo $daten[author]; ?><\div>')" style="color : #333333; text-decoration: none; font-size: 10px;"><? echo $daten[datum?></a></font></strong></div></td>
      </tr>
    </table>
    <table width="85%" cellspacing="0">
      <tr> 
        <td align="right"> 
          <?
    //Hier wird geprüft ob ein Bild vorhanden ist
    if ($daten['type']) { ?>
          <a href="javascript:popUp('./newspic_f.php<? echo '?id='.$daten[id].'' ?>')" style="text-decoration: none"><img src="../images/newspic.gif" border="0"></a> 
          <?
    } else {
            echo 
    "";
    }
    ?>
        </td>
      </tr>
      <tr> 
        <td valign="top" class="content"> 
          <?
    //Hier wird geprüft ob News vorhanden sind und ob Sie gewrap werden müssen
    if ($daten['nachricht'])
    {
                          echo  
    $nachricht";
       } else {
                          echo 
    "Es wurden noch keine News eingetragen. <br> Um News einzutragen,
                                klicken Sie bitte <a href=admin.php>hier</a>"
    ;
    }
    ?>
        </td>
      </tr>
      <tr> 
        <td> 
      <tr> 
        <td height="6" colspan="5" class="lineunder"> </table>
    <?
    }}
    ?>
    <div align="center"><a href="javascript:self.close()" class="resultshead"style="text-decoration: none" a>Fenster 
      schlie&szlig;en</a></div>
    was in die config.inc.php und opendb.inc kommt ist wohl jedem klar...
     

  5. #5
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    MySQL verfügt übrigens auch über eine Funktion, mit der sich eine Teilzeichenfolge einer Zeichenkette zurück geben lässt:
    &nbsp;&rsaquo;&rsaquo;&nbsp;MySQL Manual | 7.3.2 Zeichenketten-Funktionen

    So lassen sich aus einer Kombination von LEFT, LOCATE und CONCAT z.B. die ersten vollständigen Sätze ab einer bestimmten Position:
    Code :
    1
    2
    3
    4
    
    SELECT
            LEFT(`spalte`, LOCATE('.', `spalte`, 50)) AS `kurztext`
      FROM
            `tabelle`
    oder die ersten vollständigen Wörter mit drei Folgepunkten:
    Code :
    1
    2
    3
    4
    
    SELECT
            CONCAT(LEFT(`spalte`, LOCATE(' ', `spalte`, 50)), ' ...') AS `kurztext`
      FROM
            `tabelle`
    zurückgeben.
    Geändert von Gumbo (01.06.04 um 14:35 Uhr)
     
    Markus Wulftange

  6. #6
    Registriert seit
    Aug 2003
    Ort
    Berlin
    Beiträge
    1.362
    Die Funktion der Datenbank abfrage kam für mich aber nicht in Frage, da der Text an einer anderen stelle nochmal in kleinerer form gekürtzt werden muss.
    Ich finde die PHP Variante schon ganz Praktisch
     

Ähnliche Themen

  1. Kürtzen von Phpcode, aber wie?
    Von Hunter Greec im Forum PHP
    Antworten: 5
    Letzter Beitrag: 07.02.08, 12:20
  2. Lange Texte von *.odt in *.html
    Von helene1 im Forum Office-Anwendungen
    Antworten: 11
    Letzter Beitrag: 28.10.06, 22:39
  3. Lange texte eingeben.
    Von glader im Forum C/C++
    Antworten: 4
    Letzter Beitrag: 16.06.06, 13:17
  4. lange Texte auf Einzelseiten ausgeben?
    Von Earth im Forum Flash Plattform
    Antworten: 9
    Letzter Beitrag: 29.03.05, 16:43
  5. Texte in 3D
    Von Sebsamy im Forum Cinema 4D
    Antworten: 3
    Letzter Beitrag: 20.09.04, 19:47