Avatar billede fancy Mester
05. februar 2009 - 19:53 Der er 4 kommentarer og
1 løsning

Linie skift

hej

hvordan for jeg dette til at lave linie skift
hvis nu brugeren ikke trykker enter vil den bare skrive det hele på en linie hvilke ikke ser pænt ud

include("db_connection_debat.php");
$hent = mysql_query("SELECT * FROM gaestbog ORDER BY id DESC") or die(mysql_error()); // vi henter dataene fra databasen
if(mysql_num_rows($hent)) { // tester om der er noget i databasen.
while($vis = mysql_fetch_array($hent)) { // vi bruger while til at sørge for at den henter ALLE dataene ud fra databasen, vi gemmer alle dataene i virablen $vis
?>
<table border="0" width="100%">
<tr>
<td>
<table border="0" width="100%">
<tr>
<td><b><? echo $vis[navn]; ?></b> Skriver den. <i><? echo $vis[dato]; ?></i> :</td>
</tr>

<tr>
<td><br><? echo nl2br($vis[besked]); ?></td>
</tr>
<tr>
<td><br>Email: <a href="mailto:<? echo $vis[email]; ?>"><? echo $vis[email]; ?></a></td>
</tr>
</table>
</td>
</tr>
</table>

<hr style="border: 1px dotted #000080" color="#000080">
<?
}
} else {
echo("Der blev intet fundet i databasen.");
}
}
?>

</body>

</html>
Avatar billede psychopixi Nybegynder
05. februar 2009 - 20:11 #1
Noget i stil med dette?
<?php
$besked = $vis["besked"];
$besked = explode(" ", $besked);
$y = 0;
$linebreak = 10; // Angiver hvor mange ord der skal til inden et linie skift.
for($x=0; $x < count($besked); $x++){
    $y++;
    echo " " . $besked[$x];
    if($y == $linebreak){
        echo "<br/>";
        $y=0;
    }
}
?>
Avatar billede hmortensen Nybegynder
05. februar 2009 - 20:46 #2
Og den nemme løsning:
http://se.php.net/wordwrap
Avatar billede psychopixi Nybegynder
05. februar 2009 - 20:51 #3
Ja, havde jeg helt glemt. Wordwrap er meget bedre til dette:)

Dit eksempel bliver dermed noget i retningen af:

<?php
$besked = $vis["besked"];
$linewidth = 70; // angiver linie bredde
$besked = wordwrap(nl2br($besked),$linewidth,"<br/>");
?>
<td><br/><? echo $besked; ?></td>
Avatar billede fancy Mester
05. februar 2009 - 22:54 #4
Lækkert det virker fint
jeg brugte dette

<?php
$besked = $vis["besked"];
$besked = explode(" ", $besked);
$y = 0;
$linebreak = 10; // Angiver hvor mange ord der skal til inden et linie skift.
for($x=0; $x < count($besked); $x++){
    $y++;
    echo " " . $besked[$x];
    if($y == $linebreak){
        echo "<br/>";
        $y=0;
    }
}
?>


tak for hjælpen

læg et svar

læg et svar
Avatar billede psychopixi Nybegynder
05. februar 2009 - 23:10 #5
Ok.
Men jeg er nu af den opfattelse at dette er bedre:

<?php
$besked = $vis["besked"];
$linewidth = 70; // angiver linie bredde
$besked = wordwrap(nl2br($besked),$linewidth,"<br/>");
?>
<td><br/><? echo $besked; ?></td>
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