LICENSE: AGPLv2 # # This script is designed to allow API functions for QC applications, contributed by poundteam.com # # changes: # 121116-1329 - First build, added to vicidial codebase # 130622-0001 - Finalized changing of all ereg instances to preg # - Added filtering of input to prevent SQL injection attacks and new user auth # 130902-0906 - Changed to mysqli PHP functions # 140706-0834 - Incorporated into standard admin code # 141007-2120 - Finalized adding QXZ translation to all admin files # 141229-2015 - Added code for on-the-fly language translations display # 150626-2120 - Modified mysqli_error() to mysqli_connect_error() where appropriate # 210306-1051 - Changes for new QC module # 220224-1021 - Added allow_web_debug system setting # $version = '2.14-9'; $build = '220224-1021'; require("dbconnect_mysqli.php"); require("functions.php"); $query_string = getenv("QUERY_STRING"); ### If you have globals turned off uncomment these lines if (isset($_GET["user"])) {$user=$_GET["user"];} elseif (isset($_POST["user"])) {$user=$_POST["user"];} if (isset($_GET["pass"])) {$pass=$_GET["pass"];} elseif (isset($_POST["pass"])) {$pass=$_POST["pass"];} if (isset($_GET["agent_user"])) {$agent_user=$_GET["agent_user"];} elseif (isset($_POST["agent_user"])) {$agent_user=$_POST["agent_user"];} if (isset($_GET["function"])) {$function=$_GET["function"];} elseif (isset($_POST["function"])) {$function=$_POST["function"];} if (isset($_GET["value"])) {$value=$_GET["value"];} elseif (isset($_POST["value"])) {$value=$_POST["value"];} if (isset($_GET["vendor_id"])) {$vendor_id=$_GET["vendor_id"];} elseif (isset($_POST["vendor_id"])) {$vendor_id=$_POST["vendor_id"];} if (isset($_GET["focus"])) {$focus=$_GET["focus"];} elseif (isset($_POST["focus"])) {$focus=$_POST["focus"];} if (isset($_GET["preview"])) {$preview=$_GET["preview"];} elseif (isset($_POST["preview"])) {$preview=$_POST["preview"];} if (isset($_GET["notes"])) {$notes=$_GET["notes"];} elseif (isset($_POST["notes"])) {$notes=$_POST["notes"];} if (isset($_GET["phone_code"])) {$phone_code=$_GET["phone_code"];} elseif (isset($_POST["phone_code"])) {$phone_code=$_POST["phone_code"];} if (isset($_GET["search"])) {$search=$_GET["search"];} elseif (isset($_POST["search"])) {$search=$_POST["search"];} if (isset($_GET["group_alias"])) {$group_alias=$_GET["group_alias"];} elseif (isset($_POST["group_alias"])) {$group_alias=$_POST["group_alias"];} if (isset($_GET["dial_prefix"])) {$dial_prefix=$_GET["dial_prefix"];} elseif (isset($_POST["dial_prefix"])) {$dial_prefix=$_POST["dial_prefix"];} if (isset($_GET["source"])) {$source=$_GET["source"];} elseif (isset($_POST["source"])) {$source=$_POST["source"];} if (isset($_GET["format"])) {$format=$_GET["format"];} elseif (isset($_POST["format"])) {$format=$_POST["format"];} if (isset($_GET["vtiger_callback"])) {$vtiger_callback=$_GET["vtiger_callback"];} elseif (isset($_POST["vtiger_callback"])) {$vtiger_callback=$_POST["vtiger_callback"];} if (isset($_GET["blended"])) {$blended=$_GET["blended"];} elseif (isset($_POST["blended"])) {$blended=$_POST["blended"];} if (isset($_GET["ingroup_choices"])) {$ingroup_choices=$_GET["ingroup_choices"];} elseif (isset($_POST["ingroup_choices"])) {$ingroup_choices=$_POST["ingroup_choices"];} if (isset($_GET["set_as_default"])) {$set_as_default=$_GET["set_as_default"];} elseif (isset($_POST["set_as_default"])) {$set_as_default=$_POST["set_as_default"];} if (isset($_GET["alt_user"])) {$alt_user=$_GET["alt_user"];} elseif (isset($_POST["alt_user"])) {$alt_user=$_POST["alt_user"];} if (isset($_GET["lead_id"])) {$lead_id=$_GET["lead_id"];} elseif (isset($_POST["lead_id"])) {$lead_id=$_POST["lead_id"];} if (isset($_GET["phone_number"])) {$phone_number=$_GET["phone_number"];} elseif (isset($_POST["phone_number"])) {$phone_number=$_POST["phone_number"];} if (isset($_GET["vendor_lead_code"])) {$vendor_lead_code=$_GET["vendor_lead_code"];} elseif (isset($_POST["vendor_lead_code"])) {$vendor_lead_code=$_POST["vendor_lead_code"];} if (isset($_GET["source_id"])) {$source_id=$_GET["source_id"];} elseif (isset($_POST["source_id"])) {$source_id=$_POST["source_id"];} if (isset($_GET["gmt_offset_now"])) {$gmt_offset_now=$_GET["gmt_offset_now"];} elseif (isset($_POST["gmt_offset_now"])) {$gmt_offset_now=$_POST["gmt_offset_now"];} if (isset($_GET["title"])) {$title=$_GET["title"];} elseif (isset($_POST["title"])) {$title=$_POST["title"];} if (isset($_GET["first_name"])) {$first_name=$_GET["first_name"];} elseif (isset($_POST["first_name"])) {$first_name=$_POST["first_name"];} if (isset($_GET["middle_initial"])) {$middle_initial=$_GET["middle_initial"];} elseif (isset($_POST["middle_initial"])) {$middle_initial=$_POST["middle_initial"];} if (isset($_GET["last_name"])) {$last_name=$_GET["last_name"];} elseif (isset($_POST["last_name"])) {$last_name=$_POST["last_name"];} if (isset($_GET["address1"])) {$address1=$_GET["address1"];} elseif (isset($_POST["address1"])) {$address1=$_POST["address1"];} if (isset($_GET["address2"])) {$address2=$_GET["address2"];} elseif (isset($_POST["address2"])) {$address2=$_POST["address2"];} if (isset($_GET["address3"])) {$address3=$_GET["address3"];} elseif (isset($_POST["address3"])) {$address3=$_POST["address3"];} if (isset($_GET["city"])) {$city=$_GET["city"];} elseif (isset($_POST["city"])) {$city=$_POST["city"];} if (isset($_GET["state"])) {$state=$_GET["state"];} elseif (isset($_POST["state"])) {$state=$_POST["state"];} if (isset($_GET["province"])) {$province=$_GET["province"];} elseif (isset($_POST["province"])) {$province=$_POST["province"];} if (isset($_GET["postal_code"])) {$postal_code=$_GET["postal_code"];} elseif (isset($_POST["postal_code"])) {$postal_code=$_POST["postal_code"];} if (isset($_GET["country_code"])) {$country_code=$_GET["country_code"];} elseif (isset($_POST["country_code"])) {$country_code=$_POST["country_code"];} if (isset($_GET["gender"])) {$gender=$_GET["gender"];} elseif (isset($_POST["gender"])) {$gender=$_POST["gender"];} if (isset($_GET["date_of_birth"])) {$date_of_birth=$_GET["date_of_birth"];} elseif (isset($_POST["date_of_birth"])) {$date_of_birth=$_POST["date_of_birth"];} if (isset($_GET["alt_phone"])) {$alt_phone=$_GET["alt_phone"];} elseif (isset($_POST["alt_phone"])) {$alt_phone=$_POST["alt_phone"];} if (isset($_GET["email"])) {$email=$_GET["email"];} elseif (isset($_POST["email"])) {$email=$_POST["email"];} if (isset($_GET["security_phrase"])) {$security_phrase=$_GET["security_phrase"];} elseif (isset($_POST["security_phrase"])) {$security_phrase=$_POST["security_phrase"];} if (isset($_GET["comments"])) {$comments=$_GET["comments"];} elseif (isset($_POST["comments"])) {$comments=$_POST["comments"];} if (isset($_GET["rank"])) {$rank=$_GET["rank"];} elseif (isset($_POST["rank"])) {$rank=$_POST["rank"];} if (isset($_GET["owner"])) {$owner=$_GET["owner"];} elseif (isset($_POST["owner"])) {$owner=$_POST["owner"];} if (isset($_GET["stage"])) {$stage=$_GET["stage"];} elseif (isset($_POST["stage"])) {$stage=$_POST["stage"];} if (isset($_GET["status"])) {$status=$_GET["status"];} elseif (isset($_POST["status"])) {$status=$_POST["status"];} if (isset($_GET["close_window_link"])) {$close_window_link=$_GET["close_window_link"];} elseif (isset($_POST["close_window_link"])) {$close_window_link=$_POST["close_window_link"];} if (isset($_GET["dnc_check"])) {$dnc_check=$_GET["dnc_check"];} elseif (isset($_POST["dnc_check"])) {$dnc_check=$_POST["dnc_check"];} if (isset($_GET["campaign_dnc_check"])) {$campaign_dnc_check=$_GET["campaign_dnc_check"];} elseif (isset($_POST["campaign_dnc_check"])) {$campaign_dnc_check=$_POST["campaign_dnc_check"];} if (isset($_GET["dial_override"])) {$dial_override=$_GET["dial_override"];} elseif (isset($_POST["dial_override"])) {$dial_override=$_POST["dial_override"];} if (isset($_GET["consultative"])) {$consultative=$_GET["consultative"];} elseif (isset($_POST["consultative"])) {$consultative=$_POST["consultative"];} if (isset($_GET["DB"])) {$DB=$_GET["DB"];} elseif (isset($_POST["DB"])) {$DB=$_POST["DB"];} $DB=preg_replace("/[^0-9a-zA-Z]/","",$DB); header ("Content-type: text/html; charset=utf-8"); header ("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1 header ("Pragma: no-cache"); // HTTP/1.0 ############################################# ##### START SYSTEM_SETTINGS LOOKUP ##### $stmt = "SELECT use_non_latin,enable_languages,language_method,allow_web_debug FROM system_settings;"; $rslt=mysql_to_mysqli($stmt, $link); #if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysqli_num_rows($rslt); if ($qm_conf_ct > 0) { $row=mysqli_fetch_row($rslt); $non_latin = $row[0]; $SSenable_languages = $row[1]; $SSlanguage_method = $row[2]; $SSallow_web_debug = $row[3]; } if ($SSallow_web_debug < 1) {$DB=0;} ##### END SETTINGS LOOKUP ##### ########################################### $ingroup_choices = preg_replace("/\+/"," ",$ingroup_choices); $query_string = preg_replace("/'|\"|\\\\|;/","",$query_string); $dial_override = preg_replace("/[^A-Z]/","",$dial_override); $consultative = preg_replace("/[^A-Z]/","",$consultative); $phone_code = preg_replace("/[^0-9X]/","",$phone_code); $format = preg_replace("/[^0-9a-zA-Z]/","",$format); $set_as_default = preg_replace("/[^A-Z]/","",$set_as_default); $phone_number = preg_replace("/[^0-9]/","",$phone_number); $blended = preg_replace("/[^A-Z]/","",$blended); $vtiger_callback = preg_replace("/[^A-Z]/","",$vtiger_callback); $alt_dial = preg_replace("/[^0-9A-Z]/","",$alt_dial); $rank = preg_replace("/[^-0-9]/","",$rank); $stage = preg_replace("/[^-_0-9a-zA-Z]/","",$stage); $close_window_link = preg_replace("/[^-_0-9a-zA-Z]/","",$close_window_link); $dnc_check = preg_replace("/[^-_0-9a-zA-Z]/","",$dnc_check); $campaign_dnc_check = preg_replace("/[^-_0-9a-zA-Z]/","",$campaign_dnc_check); if ($non_latin < 1) { $user=preg_replace("/[^-_0-9a-zA-Z]/","",$user); $pass=preg_replace("/[^-_0-9a-zA-Z]/","",$pass); $agent_user=preg_replace("/[^0-9a-zA-Z]/","",$agent_user); $function = preg_replace("/[^-\_0-9a-zA-Z]/","",$function); $status = preg_replace("/[^-_0-9a-zA-Z]/","",$status); $value = preg_replace("/[^-\_0-9a-zA-Z]/","",$value); $vendor_id = preg_replace("/[^-\.\_0-9a-zA-Z]/","",$vendor_id); $focus = preg_replace("/[^-\_0-9a-zA-Z]/","",$focus); $preview = preg_replace("/[^-\_0-9a-zA-Z]/","",$preview); $notes = preg_replace("/\+/"," ",$notes); $notes = preg_replace("/[^- \.\_0-9a-zA-Z]/","",$notes); $search = preg_replace("/[^-\_0-9a-zA-Z]/","",$search); $group_alias = preg_replace("/[^0-9a-zA-Z]/","",$group_alias); $dial_prefix = preg_replace("/[^0-9a-zA-Z]/","",$dial_prefix); $source = preg_replace("/[^0-9a-zA-Z]/","",$source); $ingroup_choices = preg_replace("/[^- \_0-9a-zA-Z]/","",$ingroup_choices); $address1 = preg_replace("/[^- \_0-9a-zA-Z]/","",$address1); $address2 = preg_replace("/[^- \_0-9a-zA-Z]/","",$address2); $address3 = preg_replace("/[^- \_0-9a-zA-Z]/","",$address3); $alt_phone = preg_replace("/[^- \_0-9a-zA-Z]/","",$alt_phone); $city = preg_replace("/[^- \_0-9a-zA-Z]/","",$city); $comments = preg_replace("/[^- \_0-9a-zA-Z]/","",$comments); $country_code = preg_replace("/[^A-Z]/","",$country_code); $date_of_birth = preg_replace("/[^- \_0-9]/","",$date_of_birth); $email = preg_replace("/[^-\.\:\/\@\_0-9a-zA-Z]/","",$email); $first_name = preg_replace("/[^- \_0-9a-zA-Z]/","",$first_name); $gender = preg_replace("/[^A-Z]/","",$gender); $gmt_offset_now = preg_replace("/[^- \.\_0-9]/","",$gmt_offset_now); $last_name = preg_replace("/[^- \_0-9a-zA-Z]/","",$last_name); $lead_id = preg_replace("/[^0-9]/","",$lead_id); $middle_initial = preg_replace("/[^- \_0-9a-zA-Z]/","",$middle_initial); $province = preg_replace("/[^- \.\_0-9a-zA-Z]/","",$province); $security_phrase = preg_replace("/[^- \.\_0-9a-zA-Z]/","",$security_phrase); $source_id = preg_replace("/[^- \.\_0-9a-zA-Z]/","",$source_id); $state = preg_replace("/[^- \_0-9a-zA-Z]/","",$state); $title = preg_replace("/[^- \_0-9a-zA-Z]/","",$title); $vendor_lead_code = preg_replace("/[^- \.\_0-9a-zA-Z]/","",$vendor_lead_code); $owner = preg_replace("/[^-\.\:\/\@\_0-9a-zA-Z]/","",$owner); $callback_datetime = preg_replace("/\+/"," ",$callback_datetime); $callback_datetime = preg_replace("/[^- \:\.\_0-9a-zA-Z]/","",$callback_datetime); $callback_type = preg_replace("/[^A-Z]/","",$callback_type); $callback_comments = preg_replace("/\+/"," ",$callback_comments); $callback_comments = preg_replace("/[^- \.\_0-9a-zA-Z]/","",$callback_comments); $qm_dispo_code = preg_replace("/[^-\.\_0-9a-zA-Z]/","",$qm_dispo_code); $alt_user = preg_replace("/[^0-9a-zA-Z]/","",$alt_user); $postal_code = preg_replace("/[^- \.\_0-9a-zA-Z]/","",$postal_code); } else { $user=preg_replace("/[^-_0-9\p{L}]/u","",$user); $pass=preg_replace("/[^-_0-9\p{L}]/u","",$pass); $agent_user=preg_replace("/[^0-9\p{L}]/u","",$agent_user); $function = preg_replace("/[^-\_0-9\p{L}]/u","",$function); $value = preg_replace("/[^-\_0-9\p{L}]/u","",$value); $vendor_id = preg_replace("/[^-\.\_0-9\p{L}]/u","",$vendor_id); $focus = preg_replace("/[^-\_0-9\p{L}]/u","",$focus); $preview = preg_replace("/[^-\_0-9\p{L}]/u","",$preview); $notes = preg_replace("/\+/"," ",$notes); $notes = preg_replace("/[^- \.\_0-9\p{L}]/u","",$notes); $search = preg_replace("/[^-\_0-9\p{L}]/u","",$search); $group_alias = preg_replace("/[^0-9\p{L}]/u","",$group_alias); $dial_prefix = preg_replace("/[^0-9\p{L}]/u","",$dial_prefix); $source = preg_replace("/[^0-9\p{L}]/u","",$source); $ingroup_choices = preg_replace("/[^- \_0-9\p{L}]/u","",$ingroup_choices); $address1 = preg_replace("/[^- \_0-9\p{L}]/u","",$address1); $address2 = preg_replace("/[^- \_0-9\p{L}]/u","",$address2); $address3 = preg_replace("/[^- \_0-9\p{L}]/u","",$address3); $alt_phone = preg_replace("/[^- \_0-9\p{L}]/u","",$alt_phone); $city = preg_replace("/[^- \_0-9\p{L}]/u","",$city); $comments = preg_replace("/[^- \_0-9\p{L}]/u","",$comments); $country_code = preg_replace("/[^A-Z]/","",$country_code); $date_of_birth = preg_replace("/[^- \_0-9]/","",$date_of_birth); $email = preg_replace("/[^-\.\:\/\@\_0-9\p{L}]/u","",$email); $first_name = preg_replace("/[^- \_0-9\p{L}]/u","",$first_name); $gender = preg_replace("/[^A-Z]/","",$gender); $gmt_offset_now = preg_replace("/[^- \.\_0-9]/","",$gmt_offset_now); $last_name = preg_replace("/[^- \_0-9\p{L}]/u","",$last_name); $lead_id = preg_replace("/[^0-9]/","",$lead_id); $middle_initial = preg_replace("/[^- \_0-9\p{L}]/u","",$middle_initial); $province = preg_replace("/[^- \.\_0-9\p{L}]/u","",$province); $security_phrase = preg_replace("/[^- \.\_0-9\p{L}]/u","",$security_phrase); $source_id = preg_replace("/[^- \.\_0-9\p{L}]/u","",$source_id); $state = preg_replace("/[^- \_0-9\p{L}]/u","",$state); $title = preg_replace("/[^- \_0-9\p{L}]/u","",$title); $vendor_lead_code = preg_replace("/[^- \.\_0-9\p{L}]/u","",$vendor_lead_code); $owner = preg_replace("/[^-\.\:\/\@\_0-9\p{L}]/u","",$owner); $callback_datetime = preg_replace("/\+/"," ",$callback_datetime); $callback_datetime = preg_replace("/[^- \:\.\_0-9\p{L}]/u","",$callback_datetime); $callback_type = preg_replace("/[^A-Z]/","",$callback_type); $callback_comments = preg_replace("/\+/"," ",$callback_comments); $callback_comments = preg_replace("/[^- \.\_0-9\p{L}]/u","",$callback_comments); $qm_dispo_code = preg_replace("/[^-\.\_0-9\p{L}]/u","",$qm_dispo_code); $alt_user = preg_replace("/[^0-9\p{L}]/u","",$alt_user); $postal_code = preg_replace("/[^- \.\_0-9\p{L}]/u","",$postal_code); } ### date and fixed variables $epoch = date("U"); $StarTtime = date("U"); $NOW_DATE = date("Y-m-d"); $NOW_TIME = date("Y-m-d H:i:s"); $CIDdate = date("mdHis"); $ENTRYdate = date("YmdHis"); $MT[0]=''; $api_script = 'agent'; $api_logging = 1; if ($consultative != 'YES') {$consultative='NO';} $stmt="SELECT selected_language from vicidial_users where user='$user';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_to_mysqli($stmt, $link); $sl_ct = mysqli_num_rows($rslt); if ($sl_ct > 0) { $row=mysqli_fetch_row($rslt); $VUselected_language = $row[0]; } ################################################################################ ### BEGIN - version - show version and date information for the API ################################################################################ if ($function == 'version') { $data = _QXZ("VERSION").": $version|"._QXZ("BUILD").": $build|"._QXZ("DATE").": $NOW_TIME|EPOCH: $StarTtime"; $result = 'SUCCESS'; echo "$data\n"; api_log($link,$api_logging,$api_script,$user,$agent_user,$function,$value,$result,$result_reason,$source,$data); exit; } ################################################################################ ### END - version ################################################################################ ################################################################################ ### BEGIN - user validation section (most functions run through this first) ################################################################################ if ($ACTION == 'LogiNCamPaigns') { $skip_user_validation=1; } else { if(strlen($source)<2) { $result = _QXZ("ERROR"); $result_reason = _QXZ("Invalid Source"); echo "$result: $result_reason - $source\n"; api_log($link,$api_logging,$api_script,$user,$agent_user,$function,$value,$result,$result_reason,$source,$data); exit; } else { $auth=0; $auth_message = user_authorization($user,$pass,'',0,0); if ($auth_message == 'GOOD') {$auth=1;} $stmt="SELECT count(*) from vicidial_users where user='$user' and vdc_agent_api_access='1';"; if ($DB) {echo "|$stmt|\n";} if ($non_latin > 0) {$rslt=mysql_to_mysqli("SET NAMES 'UTF8'", $link);} $rslt=mysql_to_mysqli($stmt, $link); $row=mysqli_fetch_row($rslt); $auth_api=$row[0]; if( (strlen($user)<2) or (strlen($pass)<2) or ($auth==0) or ($auth_api==0)) { $result = _QXZ("ERROR"); $result_reason = _QXZ("Invalid Username/Password"); echo "$result: $result_reason: |$user|$pass|$auth|$auth_api|$auth_message|\n"; $data = "$user|$pass|$auth"; api_log($link,$api_logging,$api_script,$user,$agent_user,$function,$value,$result,$result_reason,$source,$data); exit; } else { $stmt="SELECT count(*) from system_settings where vdc_agent_api_active='1';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_to_mysqli($stmt, $link); $row=mysqli_fetch_row($rslt); $SNauth=$row[0]; if($SNauth==0) { $result = _QXZ("ERROR"); $result_reason = _QXZ("System API NOT ACTIVE"); echo "$result: $result_reason\n"; api_log($link,$api_logging,$api_script,$user,$agent_user,$function,$value,$result,$result_reason,$source,$data); exit; } else { # do nothing for now } } } } if ($format=='debug') { $DB=1; echo "\n"; echo "\n"; echo "";} $rslt=mysql_to_mysqli($stmt, $link); $result = _QXZ("SUCCESS"); $result_reason = _QXZ("external_dial function set"); $data = "$phone_code|$search|$preview|$focus|$vendor_id|$epoch|$dial_prefix|$group_alias|$caller_id_number"; echo "$result: Dispo in Agent Screen FIRST.\n"; // echo "$result: $result_reason - $value|$agent_user|$data\n"; api_log($link,$api_logging,$api_script,$user,$agent_user,$function,$value,$result,$result_reason,$source,$data); } } else { $result = _QXZ("ERROR"); $result_reason = _QXZ("agent_user is not allowed to place manual dial calls"); echo "$result: $result_reason - $agent_user\n"; api_log($link,$api_logging,$api_script,$user,$agent_user,$function,$value,$result,$result_reason,$source,$data); } } else { $result = _QXZ("ERROR"); $result_reason = _QXZ("agent_user is not paused"); echo "$result: $result_reason - $agent_user\n"; api_log($link,$api_logging,$api_script,$user,$agent_user,$function,$value,$result,$result_reason,$source,$data); } } else { $result = _QXZ("ERROR"); $result_reason = _QXZ("agent_user is not logged in"); echo "$result: $result_reason - $agent_user\n"; api_log($link,$api_logging,$api_script,$user,$agent_user,$function,$value,$result,$result_reason,$source,$data); } } } // external_dial ################################################################################ ### END - external_dial ################################################################################ if ($format=='debug') { $ENDtime = date("U"); $RUNtime = ($ENDtime - $StarTtime); echo "\n"; echo "\n\n\n"; } exit; ##### FUNCTIONS ##### ##### Logging ##### function api_log($link,$api_logging,$api_script,$user,$agent_user,$function,$value,$result,$result_reason,$source,$data) { if ($api_logging > 0) { $NOW_TIME = date("Y-m-d H:i:s"); $stmt="INSERT INTO vicidial_api_log set user='$user',agent_user='$agent_user',function='$function',value='$value',result='$result',result_reason='$result_reason',source='$source',data='$data',api_date='$NOW_TIME',api_script='$api_script';"; $rslt=mysql_to_mysqli($stmt, $link); } return 1; } ?>