#!/usr/bin/perl -w use strict; use Time::Piece; use warnings FATAL => 'all'; use CGI qw(); use POSIX qw/strftime/; use LWP::UserAgent; use HTTP::Request; use XML::Simple; use SOAP::WSDL; use SOAP::WSDL::Deserializer::Hash; use SOAP::Lite; use Time::Piece; use XML::LibXML; use XML::Twig; use Data::Dumper; use DBI; my $cgi = CGI->new; print $cgi->header(-type => "text/xml", -charset => "utf-8"); my $xml = $cgi->param("POSTDATA"); my $dbh = DBI->connect("DBI:mysql:smscenter", "smscenter", "smsc1234",{ RaiseError => 1, AutoCommit => 1 }); $dbh->trace(2); my $sql1 = 'INSERT INTO test(test,test1) VALUES(?,?)'; my $sth1 = $dbh->prepare($sql1); my $twig = new XML::Twig( twig_handlers => { ServiceException => \&ServiceException, } ); $twig->parse($xml); sub ServiceException { my ( $twig, $ServiceException ) = @_; my @f = ( $ServiceException->field('messageId'), $ServiceException->field('text'), ); print $f[0], "\n"; print $f[1], "\n"; $sth1->execute( @f ) or die $DBI::errstr; } #### SVC0008 Duplicate SMS notification, criteria is default criteria, centralCode is 20245 SVC0008 Duplicate SMS notification, criteria is default criteria, centralCode is 20245 default criteria 20245