Your problem can be traced to the following bit of code:
Quote:
Originally Posted by vanderkerkoff
print "Submit result: ",send_message("44976918568","this is a test message using POST"),"\n";
#
# Send SMS message
#
sub send_message() {
my ($number,$message) = @_;
Your definition of the send_message function is using a prototype. IE the (). That prototype claims that the send_message function receives no parameters. But it does in fact receive two parameters, so I would remove the parenthesis from your definition.
What the exact error message is saying is that because of the way that apache compiles and runs the perl script, the prototype definition is not being reached before a call to the function. The whole point of a prototype is to enforce the expected parameters to a function, but because of your placement, perl isn't able to do that and a warning a thrown.
In this case though, the only bit of that you need to understand is that when perl is talking about prototypes, it is talking about the fact that you have a () in your sub definition. Remove them.