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

tekst dmv perl-script plaatsen in mysql-database

Jurriaan R
5 antwoorden
  • ik heb een perl-script ontwikkeld dat de uitvoer van een formulier (textarea) in een mysql-database moet plaatsen.

    het script heb ik al een keer (1 keer dus) geprobeerd en werkte toen prima. Zojuist, met een andere tekst deed ie het niet meer.

    ik heb in de tekst al backslashes geplaatst, maar dat helpt niet. Met onderstaande perlcode plaats ik de uitvoer in de database:

    [code:1:31d7742d4c]
    my $dbh = DBI->connect("DBI:mysql:$mysql_database:$mysql_server",$mysql_username,$mysql_password)
    or die "Unable to connect to MySQL database: $dbh->errstrn";
    my $sth = $dbh->prepare("INSERT INTO html VALUES('$tekst')";);
    $sth->execute or die "Unable to execute query: $dbh->errstrn";
    $sth->finish;
    $dbh->disconnect;
    [/code:1:31d7742d4c]

    wat doe ik verkeerd?
  • Niet vertellen wat voor foutmelding je krijgt :smile:
  • perl geeft geen foutmelding, het is geen php. de uitvoer van het script wordt gewoon gestopt, dus er is op een bepaalde plaats in het script iets mis.

    dat is bij het verwerken van bovenstaande code, ben ik nagegaan. na de invoer van het form op niks te hebben gezet, deed het script het wel helemaal. het ligt dus aan de invoer van het formulier, een lange tekst kan ie niet verwerken.

    snappie?
  • Perl geeft wel degelijk foutmeldingen, alleen zal je even in je webserver logs moeten kijken wat er fout is gegaan.
    Schrijf als test eens je query naar het scherm in plaats van meteen uitvoeren op de database, misschien dat dat meer duidelijkheid geeft.
  • ik heb de oplossing inmiddels gevonden: gewoon geen aanhalingstekens gebruiken.

    bedankt voor jullie suggesties!!

Beantwoord deze vraag

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