Maus: Hab mal eine Frage zu einer Ausgabe

Hallo,

Sorry wenn ich nun schon wieder was frage aber ich komme gerade an einem Punkt nicht weiter.

Ich mach eine Datenbankabfrage. Das geht auch alles ohne Probleme. Das was ich haben will das geht auch aber nun kommt mein Problem und zwar, wenn es mal ein längeren Eintrag ist dann wird das koplette Design versaut nun möchte ich gerne dass ich nur die ersten 10 Wörter abrufen und dann soll kommen ......

So mache ich das bis jetzt:

<a href="ausgabe.php?id=<?php echo $data['id']; ?>"><?php echo $data['titel'];?></a>

Hmm kann mir da jemand helfen wie ich das machen muss? Und noch was sollte man nach Wörter ausgeben lassen oder nach Zeichen? was ist denn da besser oder ist das eigentlich egal?

Gruß Maus

  1. Hallo Maus,

    Ich mach eine Datenbankabfrage. Das geht auch alles ohne Probleme. Das was ich haben will das geht auch aber nun kommt mein Problem und zwar, wenn es mal ein längeren Eintrag ist dann wird das koplette Design versaut nun möchte ich gerne dass ich nur die ersten 10 Wörter abrufen und dann soll kommen ......

    Ich würde nicht die Anzahl der Wörter einschränken (da die Wörter ja sehr unterschiedliche Längen haben können!), sondern die max. Anzahl der Zeichen limitieren.

    <a href="ausgabe.php?id=<?php echo $data['id']; ?>"><?php echo $data['titel'];?></a>

    z.B. so:

    $maxZeichen = 20;

    $titel = $data['titel'];

    if (strlen($out) > $maxZeichen) {
      $titel = substr($titel , 0, $maxZeichen-4)." ...";
    }

    <a href="ausgabe.php?id=<?php echo $data['id']; ?>"><?php echo $titel; ?></a>

    Grüsse
    Frankie

    1. Hallo Frankie

      danke für deine Antwort. Ich werde das gleich mal versuchen. Wenn ich noch eine Frage habe, dann melde ich mich wieder.

      Wünsch dir noch einen schönen Samstag.

      Gruß Maus

    2. Hallo FrankieB,

      z.B. so:

      $maxZeichen = 20;

      $titel = $data['titel'];

      if (strlen($out) > $maxZeichen) {

      ^^^^
      hier muß natürlich $titel stehen.

      $titel = substr($titel , 0, $maxZeichen-4)." ...";
      }

      Grüsse
      Frankie

    3. Halo,

      wollte nur kurz sagen, dass das alles geklappt hat. Danke für deine Hilfe.

      Wünsch dir noch einen schönen Sonntag.

      Gruß Maus

      1. Hallo Maus,

        wollte nur kurz sagen, dass das alles geklappt hat. Danke für deine Hilfe.

        Das freut mich.

        Wünsch dir noch einen schönen Sonntag.

        Danke, ich dir auch.

        Grüsse
        Frankie

  2. Hi,

    Ich mach eine Datenbankabfrage. Das geht auch alles ohne Probleme. Das was ich haben will das geht auch aber nun kommt mein Problem und zwar, wenn es mal ein längeren Eintrag ist dann wird das koplette Design versaut nun möchte ich gerne dass ich nur die ersten 10 Wörter abrufen und dann soll kommen ......

    Wenn Du den kompletten Text gar nicht brauchst, sondern nur den verkürzten, dann bietet es sich an, schon bei der Datenbankabfrage nur die ersten x Zeichen/Worte auszulesen - MySQL kennt dafür z.B. substring bzw. substring_index.

    cu,
    Andreas

    --
    Warum nennt sich Andreas hier MudGuard?
    Schreinerei Waechter
    Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.