Avatar billede raan Nybegynder
13. november 2006 - 15:19 Der er 5 kommentarer og
2 løsninger

nyheds spørgsmål

Hej.

Jeg har en side hvor man kan læse nyheder, men vil gerne ændre lidt på den .. så på forsiden kan man kun se de 5 sidste nyheder, også står der fx. 50 bogstaver fra den nyhed, og hvis man vil læse mere skal man trykke, Læs mere her. fx.

hvordan gør jeg så den kun viser 50 bogstaver ud fra den ene nyhed? :)
Avatar billede nyby Nybegynder
13. november 2006 - 15:35 #1
Avatar billede viper_killerguy Nybegynder
13. november 2006 - 15:37 #2
function shortenText($text, $maxLength) {
  //Hvis texten er mindre end input, returner text umodificeret.
  if (strlen($text) <= $maxLength)
    return $text;

  //Find det sidste mellemrum i den afkortede text.
  $lastSpace = strrpos(" ", substr($text, 0, $maxLength));
  //Hvis intet mellemrum fundet, eller mellemrummet er mere end 20% tilbage
  //i texten, så bare lav en upæn afkortning.
  if ($lastSpace === false || $lastSpace / $maxLength < 0.8)
    $lastSpace = $maxLength;

  //forkorter strengen igen og sætter ... på til sidst.
  return substr($text, 0, $lastSpace)."...";
}

$lilleText = shortenText($storText, 50);
Avatar billede raan Nybegynder
13. november 2006 - 15:41 #3
så hvis jeg har en tabel der hedder nyheder og inde i den er der en med navnet Text, er det så den, den forkorte ? :)
Avatar billede raan Nybegynder
13. november 2006 - 15:42 #4
se evt min kode del og indsæt ?

Nyheder - <i>skrevet af lærer og administrator</i></br>
<?php
include("sql.php");
$query = mysql_query("SELECT * FROM 10kcb_data_nyheder ORDER BY id DESC")or die(mysql_error());
echo "<table border=0>";
if(mysql_num_rows($query)>0)
{
while($row = mysql_fetch_assoc($query))
{
echo "<tr><td></br></td></tr><tr><td><b>" . $row["overtekst"] . "</b></td></tr><tr><td>" . $row["tekst"] . "</td></tr><tr><td></td></tr><tr><td><i><br/>" . $row["forfatter"] . "<br/>" . $row["tid"] . "</i></td></tr></td></tr>";
}
}
else
{
echo "- Ingen Nyheder.";
}
echo "</table><br/>";
?>
Avatar billede zynzz Praktikant
13. november 2006 - 18:25 #5
<?php
include("sql.php");
$query = mysql_query("SELECT * FROM 10kcb_data_nyheder ORDER BY id DESC LIMIT 0,5")or die(mysql_error());
echo "<table border=0>";
if(mysql_num_rows($query) > 0)
{
while($row = mysql_fetch_assoc($query))
{
echo "<tr><td></br></td></tr><tr><td><b>" . $row["overtekst"] . "</b></td></tr><tr><td>" . substr($row[tekst], 0, 50) . "</td></tr><tr><td></td></tr><tr><td><i><br/>" . $row["forfatter"] . "<br/>" . $row["tid"] . "</i></td></tr></td></tr>";
echo "<tr><td><a href=?s=vis_nyhed&id=" . $row["id"] . ">Læs mere</a></td></tr>";
}
}
else
{
echo "- Ingen Nyheder.";
}
echo "</table><br/>";
?>
Avatar billede raan Nybegynder
13. november 2006 - 19:27 #6
fandt selv ud af det.
- men zynzz giv et svar, så deler i.
Avatar billede zynzz Praktikant
13. november 2006 - 19:35 #7
svar her så :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester