Hi all,
I'm having some trouble getting my php code to work properly. I'm submitting three different variables from a vxml form to my php. I then need the php to deposit the variables into files and update a mysql database accordingly, but it's not quite doing what I want it to.
The code is run from a webserver via an AIX server.
Here's my php code that I got so far:
<?php
header('Content-type: application:voicexml+xml; charset=iso-8859-1');
header('Content-Encoding: iso-8859-1');
echo "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n";
echo "<vxml version=\"2.1\" xmlns=\"http://www.w3.org/2001/vxml\" xml:lang=\"en-GB\">";
echo "<property name=\"inputmodes\" value=\"dtmf\"/>";
echo "<form>";
echo "<block>";
$msg = "";
$msg2 = "";
$code = 1;
$wavName = "";
$wavAudition = "";
$number = "";
$tmpFile=$HTTP_POST_FILES;
if (is_uploaded_file($tmpFile)) {
$wavName="/name/".date("YmdHis").".wav";
copy($tmpFile, sprintf("%s", $wavName));
$msg = "audio saved";
echo "saved name";
} else {
$code = 0;
$msg = "unable to save audio";
echo "not saved";
}
$tmpFile=$HTTP_POST_FILES;
if (is_uploaded_file($tmpFile)) {
$wavAudition = "audition/".date("YmdHis").".wav";
copy($tmpFile, sprintf("%s", $wavAudition));
$msg2 = "audio saved";
echo "saved audition";
} else {
$code = 0;
$msg2 = "unable to save audio";
echo "not saved";
}
$tmpFile = $HTTP_POST_FILES;
if (is_uploaded_file($tmpFile)) {
copy($tmpFile, sprintf("%s", $number);
}
$con = mysql_connect("localhost","username","password");
if (!$con) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db("Database Name", $con);
$callDate = date("Ymd");
$callTime = date("His");
$sql="INSERT INTO table (calContactDir, calContactNum, calAuditionDir, calDate, calTime)
VALUES
('$wavName','$number','$wavAudition', '$callDate', '$callTime')";
if (!mysql_query($sql,$con)) {
die('Error: ' . mysql_error());
}
$sql="SELECT calUniqueID FROM Caller WHERE calContactDir = '$wavName'";
$uniqueID = mysql_query($sql,$con);
mysql_close($con);
echo "<audio src=\"file:///170.wav\" maxage=\"0\"/>";
echo "<prompt>$callDate</prompt>";
echo "<audio src=\"file:///171.wav\" maxage=\"0\"/>";
echo "<prompt>$uniqueID</prompt>";
echo "<goto next=\"file:///Audition_test.vxml#closing\"/>";
echo "</block>";
echo "</form>";
echo "</vxml>";
?>
The files are submitted with the following line of code:
<submit next="submit.php" namelist="rec_name contact_number rec_audition" method="POST" enctype="multipart/form-data"/>
The problem is that it isn't depositing the variables into files and it's only inserting values into the time and date sections of the mysql database.
I have removed certain elements of the code as I'm under a Non Disclosure Agreement concerning the application and I don't want to place our database details, etc. out in the open (hope no one minds).
If anyone could help me out that would be greatly appreciated.