Ga naar inhoud

CGI script crasht na ingave van quote tekens in textarea


Aanbevolen berichten

In een site werk ik een NIET door mij geschreven perl script bij. Er zit alleen een hardnekkig probleem in waar ik maar niet uit kom. Zodra binnen een textarea een aanhalingsteken wordt gebruikt, crasht het script na het verzenden van het formulier. Op zich logisch want de scriptregel wordt te vroeg afgebroken. Maar het is heel vervelend omdat een plaatsnaam, zoals 's-Gravenhage, veel voor kan komen in het invulformulier. Ik los het nu op door expliciet aan te geven dat aanhalingstekens niet mogelijk zijn. Maar dat lijkt natuurlijk nergens op. Dit is een voorbeeld van zo'n regel: print "<DIV id=sellinput11><textarea rows='6' cols='37' name=description></textarea></DIV>"; En de commentaarregel na de crash is: You have an error in your SQL syntax near 's-Gravenhage',1,0)' at line 1 Waar nodig kan ik meer info verschaffen. En bij voorbaat dank voor hulp. Olaf
Link naar reactie
[quote:eb3857ecc1="BasHamar"]PHP kent hiervoor de functies [url=http://www.php.net/addslashes]addSlashes()[/url] en [url=http://www.php.net/stripslashes]stripSlashes()[/url], kent ASP hier geen equivalent voor? - Basje[/quote:eb3857ecc1] Hij schrijft dat hij een perl script gebruikt, perl heeft volgens mij ook wel zo iet, maar ik weet niet uit mijn hooft wat.
Link naar reactie
Je kunt het voorlopig werkbaar maken, door de single quotes te escapen. Zet ergens voor het sql commando: $description =~ s/\'/\\\'/g; Waarbij ik er dan even van uitga, dat $description de gebruikte variable is, kan anders zijn. Mogelijk werkt wat Jurriaan aangeeft ook, maar dat is afhankelijk van het script. Kom namelijk nog wel eens andere modules tegen dan DBI. Verder kun je je afvragen wat de kwaliteit van dat script is, want dit is een vrij grove fout voor een programmeur.
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...