Ga naar inhoud

PHP Replace script <&lt; &gt;>


Aanbevolen berichten

Bij de uitkomst van dit script komt er bij de <a href=""> wel een link uit, maar als ik die in gastenboek.dat zet, en dan maak ik er [[[a href=""]]] van, dan replaces hij hem wel, maar dan komt er te staan: &a href=""& te staan, hoe kan dit opgelost worden? Alvast bedankt, A.P. Troost[quote:ba76336452]<?php $start=(isset($_GET['start'])?$_GET['start']:0); $gastenboek=Array(); $gastenboek=file('gastenboek.dat'); $amount=15; if ($start>0) echo '<A href="?view=overzicht&start='.max(0,$start-$amount).'"><<<</A> '; if ($start+$amount<sizeof($gastenboek)) echo ' <A href="?view=overzicht&start='.($start+$amount).'">>>></A>'; ?> </div><HR color="#FF8F2B" align="center"> <div align="center"> <TABLE width="100%"> <? $gastenboek=array_reverse($gastenboek); for ($i=$start;$i<$start+$amount && $i<sizeof($gastenboek);$i++) { list($name,$email,$date,$url,$message,$ip)=explode('|||',$gastenboek[$i]); $message=str_replace('{{{',"\n",$message); $message=str_replace('[[[',"<",$message); $message=str_replace(']]]',">",$message); echo '<TR><TD><B>'.($email!=""?'<A href="mailto:'.$email.'">'.$name.'</A>':$name).'</B></TD><TD align="center"><B><A href="'.$url.'" target="_blank">'.$url.'</B></TD><TD align="right"><B>'.$date.'</B></TD></TR>'."\n"; echo '<TR><TD colspan="3"><SPAN class="SUR">'.str_replace("\n",'<BR>',htmlspecialchars($message)).'</SPAN></TD></TR>'."\n"; echo '<TR><TD colspan="3"><HR color="#FF8F2B"></TD></TR>'."\n"; } echo "</table>"; if ($start>0) echo '<A href="?action=overzicht&start='.max(0,$start-$amount).'"><<<</A> '; if ($start+$amount<sizeof($gastenboek)) echo ' <A href="?view=overzicht&start='.($start+$amount).'">>>></A>'; ?>[/quote:ba76336452]
Link naar reactie
[quote:2fcd758492="Bill Gates"]Nee, je vervangt de [[[, ]]] etc door < en >, en vervolgens doe je een aantal regels later die htmlspecialchars waarmee je dus die < en > voor hun htmlcode representatie vervangt (& gt en & l t of zoiets, maar dan aan elkaar, maar dat pikt het forum hier niet)...[/quote:2fcd758492]hmm, ik snap het niet helemaal maar het geen wat ik nu heb gedaan is in gastenboek.dat <> gedaan en geen [[[]]], en htmlspecialchars($message) gedaan, en de str_replace van [[[ naar < en ]]] naar > verwijderd, maar nu staat het er nog steeds niet goed :-? kben wel vervelend he :wink:
Link naar reactie
Zolang je je links op deze manier blijft neerzetten en je later die htmlspecialchars uitvoerd blijven die < natuurlijk vervangen worden door die html representatie. Je moet bij het opslaan die htmlspecialchars al gebruiken (en dan dus die links wel vervangen door [[[ ]]] of zo) en bij het uitlezen niet meer. Alleen dan zal het gaan werken...
Link naar reactie
ja en dat heb ik ook geprobeerd, maar elke keer blijft "& l t ;" en "& g t ;" er staan, ook als ik hem vanaf het begin inschrijf met htmlspecialchar(), maar dan komt er in het bestandje [[[a href="/index2.php/"]]] En als ik hem dan uitlees uiteindelijk zonder htmlspecialchar() dan staat er in die source & l t ;img src=& quot ;/regular_smile.gif/& quot ;& gt ;
Link naar reactie
  • 1 maand later...
[quote:cd436e1de5] <?php $start=(isset($_GET['start'])?$_GET['start']:0); $gastenboek=Array(); $gastenboek=file('gastenboek.dat'); $amount=15; if ($start>0) echo '<A href="?view=overzicht&start='.max(0,$start-$amount).'"><<<</A> '; if ($start+$amount<sizeof($gastenboek)) echo ' <A href="?view=overzicht&start='.($start+$amount).'">>>></A>'; ?> </div><HR color="#FF8F2B" align="center"> <div align="center"> <TABLE width="100%"> <? $gastenboek=array_reverse($gastenboek); for ($i=$start;$i<$start+$amount && $i<sizeof($gastenboek);$i++) { list($name,$email,$date,$url,$message,$ip)=explode('|||',$gastenboek[$i]); $message=str_replace('{{{',"\n",$message); $message=str_replace('[[[',"<",$message); $message=str_replace(']]]',">",$message); echo '<TR><TD><B>'.($email!=""?'<A href="mailto:'.$email.'">'.$name.'</A>':$name).'</B></TD><TD align="center"><B><A href="'.$url.'" target="_blank">'.$url.'</B></TD><TD align="right"><B>'.$date.'</B></TD></TR>'."\n"; echo '<TR><TD colspan="3"><SPAN class="SUR">'. [b:cd436e1de5]nl2br($message) [/b:cd436e1de5] .'</SPAN></TD></TR>'."\n"; echo '<TR><TD colspan="3"><HR color="#FF8F2B"></TD></TR>'."\n"; } echo "</table>"; if ($start>0) echo '<A href="?action=overzicht&start='.max(0,$start-$amount).'"><<<</A> '; if ($start+$amount<sizeof($gastenboek)) echo ' <A href="?view=overzicht&start='.($start+$amount).'">>>></A>'; ?>if/& quot ;& gt ;[/quote:cd436e1de5]
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

  • Populaire leden

    Er is nog niemand die deze week reputatie heeft ontvangen.

  • Leden

    Geen leden om te tonen

×
×
  • Nieuwe aanmaken...