html wordt niet weergeven
wanneer ik html uit de db haal worden de tags op het scherm weergeven en niet de daadwerkelijke text.
Weer iemand hoe ik dit kan op lossen?
groetjes stefan
Weer iemand hoe ik dit kan op lossen?
groetjes stefan
gebruik je toevallig nergens htmlentities of htmlspecialchars?
heb je misschien script?
htmlentities of htmlspecialchars gebruik ik nergens...
keb alleen <meta http-equiv="content-type" content="text/html;charset=utf-8" /> in de head, is dat het misschien?
keb alleen <meta http-equiv="content-type" content="text/html;charset=utf-8" /> in de head, is dat het misschien?
Gewijzigd op 27/05/2010 10:46:02 door stefan Renne
@dennis: Tuurlijk heeft hij dat! Anders zou er helemaal niets te zien zijn op zijn pagina :p (stel eens nuttige vragen)
@stefan: Hoe ziet die html eruit in je DB?
@stefan: Hoe ziet die html eruit in je DB?
iki bedoel dat hij een voorbeeld kan geven zodat we kunnen kijken?
de html is een regelrechte rip van de text die in phpbb in een post word weergeven (ik ben zelf een forum aan het schrijven)


Gewijzigd op 27/05/2010 11:53:00 door stefan Renne
En geef dan nu eens relevante code van dat bestand wat de tekst laat zien.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php $query = mysql_query("SELECT * FROM `forum_posts` WHERE `topic_id`='".$_GET['id']."' ORDER BY `post_id` ASC");
if (mysql_num_rows($query)!=""){
echo '<table>';
while ($rij = mysql_fetch_array($query)){
$user = mysql_fetch_array(mysql_query("SELECT * FROM `users` WHERE `uid`='".$rij['userid']."'"));
echo '<tr>';
echo '<td>'.$user['username'].'<br/><img src="'.$user['avatar'].'" /><br/>Post '.$rij['post_id'].'</td>';
$text = $rij['post_text'];
echo '<td><div class="bbcode">'.$bbcode->Parse($text).'</div></td></tr>';
echo '<tr><td><hr /></td><td><hr /></td></tr>';
}
echo '</table>';
}
?>
if (mysql_num_rows($query)!=""){
echo '<table>';
while ($rij = mysql_fetch_array($query)){
$user = mysql_fetch_array(mysql_query("SELECT * FROM `users` WHERE `uid`='".$rij['userid']."'"));
echo '<tr>';
echo '<td>'.$user['username'].'<br/><img src="'.$user['avatar'].'" /><br/>Post '.$rij['post_id'].'</td>';
$text = $rij['post_text'];
echo '<td><div class="bbcode">'.$bbcode->Parse($text).'</div></td></tr>';
echo '<tr><td><hr /></td><td><hr /></td></tr>';
}
echo '</table>';
}
?>
en dan gaat t om $rij['post_text']
ik ben al iets verder, ben dr achter dat t met de $bbcode->Parse temaken heeft, code daarvan komt zo
Gewijzigd op 27/05/2010 12:13:37 door stefan Renne
Dan zit er waarschijnlijk in je bbcode parser een htmlspecialchars o.i.d.
Daar moet je dus kijken.
Daar moet je dus kijken.
require_once($rootpath."/bb/nbbc.php");
$bbcode = new BBCode;
$bbcode->SetSmileyURL($rootpath."/bb/smileys");
$bbcode->SetSmileyDir($rootpath."/bb/smileys");
en dit is de parser http://sourceforge.net/projects/nbbc/files/
$bbcode = new BBCode;
$bbcode->SetSmileyURL($rootpath."/bb/smileys");
$bbcode->SetSmileyDir($rootpath."/bb/smileys");
en dit is de parser http://sourceforge.net/projects/nbbc/files/
of heeft iemand een beter idee voor een bbcode parser?
En wat als je die zeer grote bb parser vervang door iets als deze:
http://www.phphulp.nl/php/script/gastenboeken-fora/ubb-parse-script-zonder-gedoe/1718/
Deze gebruik ik zelf ook, met succes.
http://www.phphulp.nl/php/script/gastenboeken-fora/ubb-parse-script-zonder-gedoe/1718/
Deze gebruik ik zelf ook, met succes.
Sander:
En wat als je die zeer grote bb parser vervang door iets als deze:
http://www.phphulp.nl/php/script/gastenboeken-fora/ubb-parse-script-zonder-gedoe/1718/
Deze gebruik ik zelf ook, met succes.
http://www.phphulp.nl/php/script/gastenboeken-fora/ubb-parse-script-zonder-gedoe/1718/
Deze gebruik ik zelf ook, met succes.
Dan heb je nog steeds hetzelfde probleem. Want het probleem is namelijk dat er geen html in de database hoort te zitten, maar bbcode.
Hij kan dus gewoon nog steeds die andere bbcode parser gebruiken, die volgens mij, een heel stuk beter is dan die jij suggereert.
ik denk dat ik zelf maar een mini bb parser schrijf aan de hand van preg_replace ...




