lees verder... bij nieuwsysteem
Ik zit met een opmaak probleempje.
Ik heb een nieuwssysteem ontwikkelt welke door middel van PHP en MySQL wordt 'gevuld'.
Nu krijg ik de opmaak dik voor elkaar behalve één puntje.
Ik wil als een bericht langer is dan een bepaalde lengte er een link wordt aangemaakt in een aparte "<td"> aanmaken (met een css class verwijzing), nu ben ik al een eind, ik krijg de link voor elkaar, ook in een aparte "<td". echter ik kan er geen css verwijzing bij doen, dan krijg ik foutmeldingen in het script.
Zie hieronder het script:
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?php
$db = mysql_connect("localhost", "admin", "sit") or die ("verbinding met SQL database mislukt");
mysql_select_db("sit", $db);
$news_SQL = "SELECT * FROM news ORDER BY news_datum DESC";
$news_result = mysql_query($news_SQL);
?>
$db = mysql_connect("localhost", "admin", "sit") or die ("verbinding met SQL database mislukt");
mysql_select_db("sit", $db);
$news_SQL = "SELECT * FROM news ORDER BY news_datum DESC";
$news_result = mysql_query($news_SQL);
?>
<table border="0" bordercolor="#336699" cellspacing="0" cellpadding="0" width="96%" align="center" valign="top">
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
while($news = mysql_fetch_array($news_result)) {
if(strlen($news['news_bericht']) > 220) {
$news['news_bericht'] = substr($news['news_bericht'], 0, 180) . " ...
<a href=nieuws/news.php?news_id=" . $news['news_id'] . ">lees verder...</a>";
}
?>
while($news = mysql_fetch_array($news_result)) {
if(strlen($news['news_bericht']) > 220) {
$news['news_bericht'] = substr($news['news_bericht'], 0, 180) . " ...
<a href=nieuws/news.php?news_id=" . $news['news_id'] . ">lees verder...</a>";
}
?>
<td align="left" valign="top" class="tijdstempel"> Gepost op:
<img src="/images/leeg.gif"/>
Door: <br><br>
</td>
</tr>
<tr>
<td class="nieuws_kop">
<img src="/images/pijltje.gif"/>
<br>
</td>
</tr>
<tr>
<td class="tekst_grijs">
</td>
<tr><td align="left" valign="top" height="15"></td></tr>
<tr>
<td align="middle" valign="top" height="1" background="/images/bg/lijn_top.gif"></td>
</tr>
<tr><td align="left" valign="top" height="2"></td></tr>
</table>
Weet iemand een oplossing?
Hagee
Is dit het script dat niet werkt? En wat is de foutmelding?
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
while($news = mysql_fetch_array($news_result)) {
if(strlen($news['news_bericht']) > 220) {
$news['news_bericht'] = substr($news['news_bericht'], 0, 180) . " ...
<a href=nieuws/news.php?news_id=" . $news['news_id'] . ">lees verder...</a>";
}
?>
while($news = mysql_fetch_array($news_result)) {
if(strlen($news['news_bericht']) > 220) {
$news['news_bericht'] = substr($news['news_bericht'], 0, 180) . " ...
<a href=nieuws/news.php?news_id=" . $news['news_id'] . ">lees verder...</a>";
}
?>
Verander in
Code (php)
Krijg ik een parse error, deze wordt veroorzaakt door de aanhalingstekens van de class tag, als ik deze nml weg laat krijg ik geen error, echter dan werkt de link ook niet... anyway, zodra ik bovenstaande verandering geheel of gedeeltelijk doorvoer krijg ik parse errors of de link werkt niet meer.
Hagee
PHP wil hem netjes parsen maar komt te vroeg een " tegen, die moet je escapen met \ dus \"
[Edit: Ja hoor typo :)]
Gewijzigd op 25/02/2004 22:15:00 door Mitch X
OK, thnx, ga het zo direct ff proberen!
Het werkt niet, krijg weer alles weer netjes in de tabel (overigens werkt de link direct niet meer zodra ik de <tr> en <td> tags toevoeg. Ik moet gewoon iets hebben waarmee ik HTML in dit blok kan invoegen, de parser blijft het blijkbaar interpreteren als PHP.
Maarja hier is je scriptje uit je vorige post dat niet lukte. Doet het niet wat je wil moet je hem maar even aanpassen :)
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?
while ($news = mysql_fetch_array($news_result))
{
function breekaf ($tekst)
{
if (strlen($input) > 220)
{
return substr($input,220) . "...";
}
else
{
return $input;
}
$news[news_bericht] = breekaf($news[news_bericht]);
echo "<tr><td><a href=\"news.php?news_id=$news[news_id]\" class=\"link\">lees verder...</a></td></tr>";
}
?>
while ($news = mysql_fetch_array($news_result))
{
function breekaf ($tekst)
{
if (strlen($input) > 220)
{
return substr($input,220) . "...";
}
else
{
return $input;
}
$news[news_bericht] = breekaf($news[news_bericht]);
echo "<tr><td><a href=\"news.php?news_id=$news[news_id]\" class=\"link\">lees verder...</a></td></tr>";
}
?>
Heb het nu zelf alsvolgt opgelost:
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?php
while($news = mysql_fetch_array($news_result)) {
if(strlen($news['news_bericht']) > 300) {
$news['news_bericht'] = substr($news['news_bericht'], 0, 270) . " ...
<tr><td height=\"5\"></td></tr>
<tr><td align=\"right\">
<a href=nieuws/news.php?news_id=" . $news['news_id'] . " class=\"standaard_link\">lees verder...</a></td></tr>";
}
?>
while($news = mysql_fetch_array($news_result)) {
if(strlen($news['news_bericht']) > 300) {
$news['news_bericht'] = substr($news['news_bericht'], 0, 270) . " ...
<tr><td height=\"5\"></td></tr>
<tr><td align=\"right\">
<a href=nieuws/news.php?news_id=" . $news['news_id'] . " class=\"standaard_link\">lees verder...</a></td></tr>";
}
?>
Zoals als jij het doet kan het uiteraard ook!
Thnx anyway,
HG
Heb het nu zelf alsvolgt opgelost:
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?php
while($news = mysql_fetch_array($news_result)) {
if(strlen($news['news_bericht']) > 300) {
$news['news_bericht'] = substr($news['news_bericht'], 0, 270) . " ...
<tr><td height=\"5\"></td></tr>
<tr><td align=\"right\">
<a href=nieuws/news.php?news_id=" . $news['news_id'] . " class=\"standaard_link\">lees verder...</a></td></tr>";
}
?>
while($news = mysql_fetch_array($news_result)) {
if(strlen($news['news_bericht']) > 300) {
$news['news_bericht'] = substr($news['news_bericht'], 0, 270) . " ...
<tr><td height=\"5\"></td></tr>
<tr><td align=\"right\">
<a href=nieuws/news.php?news_id=" . $news['news_id'] . " class=\"standaard_link\">lees verder...</a></td></tr>";
}
?>
Zoals als jij het doet kan het uiteraard ook!
Thnx anyway,
HG