ik ben bezig met het inbakken van smiley optie. nu wanneer is op een smiley klik krijg je bijv. :cheer:

helaas krijg ik dit dan ook te zien in het gastenboek. dit moet uiteraard
een plaatje zijn.

de code die het gastenboek weergeeft is:



while ($row = mysql_fetch_assoc($result))	{
			$number--;
			$ondisplay++;
			$name=$row['name'];
			$email=$row['email'];
			$datum="".$row['tdag']."-".$row['tmaand']."-".$row['tjaar'];
			$tijd=$row['time'];
			$message=$row['message'];
			$message = str_replace(":cheerball:","<img src=\"smilies/w00t.gif\" alt=w00t>",$message); 
			
			echo "<div>";
	    	echo '<b> '.($email!=""?'<a href="mailto:'.$email.'">'.$name.'</a>':$name).'</b><br><font style="font-size:7pt; color:#999;">plaatste op '.$datum.' om '.$tijd.' het volgende bericht:</font></p>';
			echo str_replace("\n",'<br>',htmlspecialchars($message));
			echo "<hr size=1 noshade color=#ff9900 width=75% align=left>";

Tuned schreef op 15.06.2008 14:20
krijg je bijv. :cheer:

str_replace(":cheerball:",

Zoek het verschil.
Je vervangt :cheer: ook niet maar :cheerball:
oh hehe moet inderdaad :cheerball: zijn.

maar ik krijg dan in mijn gastenboek te zien:

<img src=\"smilies/w00t.gif\" alt=w00t> in plaats het plaatje
<?php
$message = str_replace(':cheerball:', '<img src="smilies/w00t.gif" alt="w00t"/>', $message);
?>
ok waar moet ik die uitvoeren. in dezelfde regel waar ook replace plaats vind of een apparte regel boven de replace regel.

zo:


$message = str_replace(':cheerball:', "<img src=smiley/ek/cheer.jpg />", htmlspecialchars($message)); 


of

$message=htmlspecialchars($message);
$message = str_replace(':cheerball:', "<img src=smiley/ek/cheer.jpg />", $message); 


//edit: ik zag zojuist al meer replies..
@SanThe: de tekst blijft plain
Deze:

<?php
$message = htmlspecialchars($message);
$message = str_replace(':cheerball:', '<img src="smiley/ek/cheer.jpg" />', $message); 
?>
:s text blijft plain

dus

<img src="smiley/ek/cheer.jpg" />
Kan je je gehele script hier posten?
<?php
require_once("template.php");
echo "<div id=content>";

function checkNum($num){
return ($num%2) ? TRUE : FALSE;
}
if(isset($_GET['p'])) {
$page=$_GET['p'];
}
else {
$page=1;
}

$amount=10;

$total_messages = mysql_numrows(mysql_query("SELECT id FROM ".$table_forum));

$pages = ceil($total_messages/$amount);
if($page==1) {
$current_message = $page;
}
else {
$current_message = (($page*$amount)-$amount)+1;
}
$last_message = ($page*$amount);
if($last_message>=$total_messages) {
$last_message=$total_messages;
}
echo "<h2>Gastenboek</h2>";
echo "<hr size=1 color=#ff9900 noshade width=50% align=left></hr>";
echo "<p><a href=\"plaats.php\">Plaats bericht</a></p>";
echo "<p>Pagina ".$page." van ".$pages.". Aantal pagina's: ";
for ($i=1; $i<=$pages; $i++) {
if($i==$page) {
echo '<b> '.$i.'</b> ';
}
else {
echo '<a href="gastenboek.php?p='.$i.'">'.$i.'</a> ';
}
}

echo "<br/>Totaal aantal berichten: ".$total_messages.". ";
//echo "Berichten ".$current_message." tot en met ".$last_message.".</p>";
echo "<hr size=1 noshade color=#ff9900 width=75% align=left>";

$result = mysql_query("SELECT *, date_format(date,'%d') as tdag, date_format(date,'%m') as tmaand, date_format(date,'%Y') as tjaar FROM ".$table_forum." ORDER BY id DESC LIMIT ".($current_message-1).",".$amount."") or die(mysql_error());

echo "<div >";
$ondisplay=1;

if($page==1) {
$number=($total_messages+1);
}
elseif ($pages==$page) {
$number=($total_messages+1)-($amount*($pages-1));
}
else {
$number=($total_messages+1)-($amount*($page-1));
}



// fetch results from database
while ($row = mysql_fetch_assoc($result)) {
$number--;
$ondisplay++;
$name=$row['name'];
$email=$row['email'];
$datum="".$row['tdag']."-".$row['tmaand']."-".$row['tjaar'];
$tijd=$row['time'];
$message=$row['message'];
$message = htmlspecialchars($message);
$message = str_replace(':cheerball:', '<img src="smiley/ek/cheer.jpg" />', $message);

echo "<div>";
echo '<b> '.($email!=""?'<a href="mailto:'.$email.'">'.$name.'</a>':$name).'</b><br><font style="font-size:7pt; color:#999;">plaatste op '.$datum.' om '.$tijd.' het volgende bericht:</font></p>';
echo str_replace("\n",'<br>',htmlspecialchars($message));

echo "<hr size=1 noshade color=#ff9900 width=75% align=left>";

//echo "</div>";
}
/* echo "<br/>";
if($page!=1 && $page<$pages) {
echo '<a href="gastenboek.php?p='.($page-1).'">Vorige pagina</a> || <a href="gastenboek.php?p='.($page+1).'">Volgende pagina</a>';
}
elseif($page==1 && $page<$pages) {
echo '<a href="gastenboek.php?p='.($page+1).'">Volgende pagina</a>';
}
elseif($page==$pages) {
echo '<a href="gastenboek.php?p='.($page-1).'">Vorige pagina</a>';
}
elseif($page==1 && $page==$pages) {
// doe niks
}
*/

?>
</div>

dit is van het gastenboek zelf. dus de index van het gastenboek. hier staan alle messages

Reageren