【问题标题】:How to insert data in API through a cron php如何通过cron php在API中插入数据
【发布时间】:2019-08-06 05:44:28
【问题描述】:

您好,我想编写代码以在 MySQL 表中插入数据,并同时插入到 API。

我可以在 MySQL 数据库中插入数据,但是当我编写在 API 中推送数据的代码时,它也不会在 MySQL 表中插入数据。

$fname = $value['first_name'].' '.$value['last_name'];
$phone = $value["phone_number"];
$email = $value["email"];
$city =  addslashes($value["city"]);
$client_source = "Home Visit";
$source = "Facebook Home Visit";
$z_uid=$value["z_uid"];

$query1="INSERT  INTO amplifon_web_leads(submitted,enquiry_id,yourname,email,phone,preferred_centre,status,region_id,brand_id,source,user_id,lead_handler_name,Priority,client_source) VALUES(date_add(now(),INTERVAL 630 Minute),CONCAT('AMP','$enquiry_code'),'$fname','$email','$phone','$city','16001','1601','16','$source','$user_id','$handler_name','','$client_source')";

mysqli_query($connection,$query1) or die ('Error updating database1');
$query2="DELETE FROM `amplifon_facebook_zipper` WHERE `z_uid`='$z_uid'";
mysqli_query($connection,$query2) or die ('Error updating database2');

$url = "http://APIURL.COM/Campaign/API/Intekill/Enquiry";
$enquiry_codes = CONCAT('AMP','$enquiry_code');
$data = array("Name" => $fname, "InterSkaleEnquiryLeadId" => $enquiry_codes,"Mobile"=>$phone,"Phone"=>$phone,"Email"=>$email,"CenterType"=>$city,"PrefCenter"=>$city, "Enquiry"=> "from cron", "OtherCenter"=> "null", "Pname"=>"null", "Pmobile"=>$phone, "CallDate"=> "null", "CallTime"=> "null","ClientSource"=> "null" );

$ch = curl_init( $url );
# Setup request to send json via POST.
$payload = json_encode( array( "Enquiry"=> $data ) );

curl_setopt( $ch, CURLOPT_POSTFIELDS, $payload );
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt( $ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json'));
# Return response instead of printing.
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
# Send request.
$result = curl_exec($ch);
curl_close($ch);

我想在 API 和 MySQL 表中插入数据。

【问题讨论】:

  • “也不插入”是什么意思?它没有插入到 api 和 db 上吗?
  • 当我添加 api 代码时它没有插入到 db 但是当我删除 api 代码时它会插入到 db 所以我认为我在 api 代码中做错了什么
  • 但它是否插入到 api 中?或者你那里有什么错误?
  • 感谢@dharman,但目前我们的主要目标是在 API 和数据库中推送数据
  • @slepic 不,数据没有插入 API,我们也没有收到任何错误,我们也启用了错误报告,但没有运气

标签: php mysql curl cron


【解决方案1】:

大家好,感谢 cmets 现在可以使用以下代码,但我犯了两个错误。

  1. 我使用 concat() 函数会产生错误

  2. 我将内容类型更改为编码并且它有效。

    $fname = $value['first_name'].' '.$value['last_name'];
    $phone = $value["phone_number"];
    $email = $value["email"];
    $city =  addslashes($value["city"]);
    $client_source = "Home Visit";
    $source = "Facebook Home Visit";
    $z_uid=$value["z_uid"];
    
    
    $query1="INSERT  INTO amplifon_web_leads(submitted,enquiry_id,yourname,email,phone,preferred_centre,status,region_id,brand_id,source,user_id,lead_handler_name,Priority,client_source) VALUES(date_add(now(),INTERVAL 630 Minute),CONCAT('AMP','$enquiry_code'),'$fname','$email','$phone','$city','16001','1601','16','$source','$user_id','$handler_name','','$client_source')";
    
    
    mysqli_query($connection,$query1) or die ('Error updating database1');
    $query2="DELETE FROM `amplifon_facebook_zipper` WHERE `z_uid`='$z_uid'";
    mysqli_query($connection,$query2) or die ('Error updating database2');
    
    
    $enquiry_codes = 'AMP'.'$enquiry_code';
    
    $ch = curl_init();
    
    curl_setopt($ch, CURLOPT_URL,"http://ipaddress/Campaign/API/InterSkill/Enquiry");
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS,"Name=".$fname."&InterSkaleEnquiryLeadId=".$enquiry_codes."&Mobile=".$phone."&Phone=".$phone."&Email=".$email."&CenterType=".$city."&PrefCenter=".$city."&Enquiry=FROMcron&OtherCenter=null&Pname=null&Pmobile=null&CallDate=null&CallTime=null&ClientSource=null");
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded'));
    
    
    // receive server response ...
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    
    $server_output = curl_exec ($ch);
    
    curl_close ($ch);
    

【讨论】:

    猜你喜欢
    • 2021-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-04
    • 1970-01-01
    • 2021-09-02
    相关资源
    最近更新 更多