Vraag & Antwoord

Webprogrammeren & scripting

Klein probleempje

17 antwoorden
  • Hallo allemaal! Ik heb een klein Content Management systeempje gemaakt wat werkt op basis van tekst bestandjes (.txt). Via een pagina doe ik gewoon [code:1:2192c395fa] &lt;?php include(&quot;bestand.txt&quot;); ?&gt; [/code:1:2192c395fa] en dat werkt prima. Er is alleen 1 klein probleempje. Zodra iemand in de tekst een ' of een &quot; typt, wordt er een [code:1:2192c395fa][/code:1:2192c395fa] voor geplaatst. Begrijpelijk, want dat moet altijd in php, maar dus niet in de tekst. Hoe zorg ik ervoor dat dat niet meer gebeurd??????? _________________ Bill Gates: hebben we hem ook weer Long time, no see... <font size=-1>[ Dit Bericht is bewerkt door: victorhopman op 2002-03-15 16:43 ]</font> <font size=-1>[ Dit Bericht is bewerkt door: victorhopman op 2002-03-15 16:45 ]</font>
  • ' vervangen door &amp;#039; voordat je de tekst aan het bestandje toevoegd. [edit] &quot; is trouwens &amp;quot; [/edit] _________________ [url=http://ti-83.endoria.net/ct/]C!T Forum Meeting berichtenbord[/url] Voorlopige datum: 27 april of 4 mei <font size=-1>[ Dit Bericht is bewerkt door: Zeeuw op 2002-03-15 17:21 ]</font>
  • Ik weet niet veel van php, maar ik kan me voorstellen dat je dit oplost door bij het opslaan de tekst na te lopen en de ' en &quot; te replacen door de bijbehorende html-codes (Zoals &amp; nbsp; voor een spatie, maar dan die voor haakjes :smile:) Op http://html.op-het.net staat een overzicht van al deze codes.. Succes, Elja [edit]kewl, zeeuw was me net voor met dezelfde oplossing :smile:[/edit] _________________ [url]www.mydiary.nl/[/url] <font size=-1>[ Dit Bericht is bewerkt door: Elja Trum op 2002-03-15 17:17 ]</font>
  • Oké, de tip van &quot;Zeeuw&quot; werkt, maar nu moet het dus handmatig, kan op de één of andere manier het php script dat niet doen? Dus via replace wat al door &quot;Elja Trum&quot; gezegt was?
  • Is allemaal [url=http://www.php.net/manual/]hier[/url] te vinden hoor. [code:1:2ba81dd4e3] $variabele=ereg_replace(&quot;teken&quot;,&quot;bijbehorende code&quot;,$variabele); [/code:1:2ba81dd4e3]
  • [quote:e312fd78b7] Op 15-03-2002 17:25, schreef Zeeuw: Is allemaal [url=http://www.php.net/manual/]hier[/url] te vinden hoor. [code:1:e312fd78b7] $variabele=ereg_replace(&quot;teken&quot;,&quot;bijbehorende code&quot;,$variabele); [/code:1:e312fd78b7] [/quote:e312fd78b7] Tja, ik heb nu [code:1:e312fd78b7] $variabele=ereg_replace(&quot;'&quot;,&quot;&amp;#039;&quot;,$variabele); [/code:1:e312fd78b7] geplaatst, maar het scheelt niets.
  • Ik zal ff een rits functies neerzetten die je kan gebruiken: http://php.mirror.widexs.nl/manual/en/function.addslashes.php http://php.mirror.widexs.nl/manual/en/function.stripslashes.php http://php.mirror.widexs.nl/manual/en/function.htmlentities.php http://php.mirror.widexs.nl/manual/en/function.htmlspecialchars.php Vooral de eerste twee zijn interessant voor jou :smile:
  • Met str_replace kan je in één keer een hele array laten vervangen dus hoef je niet alles langs te lopen. http://www.php.net/manual/en/function.str-replace.php
  • [quote:e577698ae8] Op 15-03-2002 18:43, schreef mvwinger: Met str_replace kan je in één keer een hele array laten vervangen dus hoef je niet alles langs te lopen. http://www.php.net/manual/en/function.str-replace.php [/quote:e577698ae8] Zodra ik zo'n code plaats krijg ik allemaal foutmeldingen
  • [quote:d046e2a723] Op 15-03-2002 17:31, schreef victorhopman: Tja, ik heb nu [code:1:d046e2a723] $variabele=ereg_replace(&quot;'&quot;,&quot;&amp;#039;&quot;,$variabele); [/code:1:d046e2a723] [/quote:d046e2a723] Let er even op dat je voor $variabele de variabele neerzet waarin het stuk tekst is opgeslagen. [quote:d046e2a723] Op 15-03-2002 18:43, schreef mvwinger: Met str_replace kan je in één keer een hele array laten vervangen dus hoef je niet alles langs te lopen. [/quote:d046e2a723] Klopt, gebruik ik ook in m'n nieuwe forum wat ik aan het bouwen ben. Ik had er zo gauw even niet aan gedacht.
  • [quote:e139f5375f] Op 15-03-2002 20:02, schreef Zeeuw: Let er even op dat je voor $variabele de variabele neerzet waarin het stuk tekst is opgeslagen.[/quote:e139f5375f] Ik zie er 2, moet ik die allebei veranderen?
  • natuurlijk
  • Allemaal leuk een aardig, maar er komt toch \' in de output voor? Dan heeft de ' vervangen door zijn html variant toch weinig zin? De staat er ook nog dan... Je moet gewoon een stripslashes op je tekst doen, dan ben je meteen van het probleem verlost.
  • [quote:87fff59335] Op 15-03-2002 20:23, schreef Bill Gates: Allemaal leuk een aardig, maar er komt toch ' in de output voor? Dan heeft de ' vervangen door zijn html variant toch weinig zin? De staat er ook nog dan... Je moet gewoon een stripslashes op je tekst doen, dan ben je meteen van het probleem verlost. [/quote:87fff59335] Ik moet het toch ook wijzigen in &amp;quot; voor bijvoorbeeld &quot; dat werkt toch wel?
  • Dat werkt alleen als je het dus van te voren doet, dus als je je data in die files stopt (die je later gaat includen). Dat string replace is dan leuk, maar $text = htmlspecialchars($text, ENT_QUOTES); doet hetzelfde, maar dan voor meerdere tekens die een speciale betekenis hebben in HTML. De variable $text is dus jouw tekst die je dus in dat bestand gooit die je later included. Zie: http://php.mirror.widexs.nl/manual/en/function.htmlspecialchars.php
  • [quote:2fa259d77f] Op 15-03-2002 20:48, schreef Bill Gates: Dat werkt alleen als je het dus van te voren doet, dus als je je data in die files stopt (die je later gaat includen). Dat string replace is dan leuk, maar $text = htmlspecialchars($text, ENT_QUOTES); doet hetzelfde, maar dan voor meerdere tekens die een speciale betekenis hebben in HTML. De variable $text is dus jouw tekst die je dus in dat bestand gooit die je later included. Zie: http://php.mirror.widexs.nl/manual/en/function.htmlspecialchars.php [/quote:2fa259d77f] Ik kan dus die code gewoon plaatsen, en klaar? ($tekst wel vervangen natuurlijk, en de codes die vervangen moeten worden) En het script doet de rest?
  • Ja, maar dat had je ook in de manual kunnen lezen.

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.