Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Webprogrammeren & scripting

CGI script crasht na ingave van quote tekens in textarea

Anoniem
gerben
6 antwoorden
  • 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
  • volgens mij moet je deze opvangen door er een \ voor te zetten, zodat het ' wordt


    ::greetz:: Obi
  • PHP kent hiervoor de functies addSlashes() en stripSlashes(), kent ASP hier geen equivalent voor?

    - Basje
  • [quote:eb3857ecc1="BasHamar"]PHP kent hiervoor de functies addSlashes() en stripSlashes(), 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.
  • [quote:c336ea190a="mispunt"]Hij schrijft dat hij een perl script gebruikt[/quote:c336ea190a]Hèhèhè… Oeps? :D

    - Basje.
  • DBI gebruiken:

    use DBI;

    $dbh = DBI->connect('', '' ,'' );
    [b:80b1567f9f]$dbh->quote($var);[/b:80b1567f9f]

    of zelf een regexp maken..

    $description =~ s/(['"])/\\$1/g;

Beantwoord deze vraag

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