我无法将数据从远程服务器发送到托管公司的Web服务器。在远程服务器上,cURL执行完美而没有任何错误,但在Web服务器的数据库中似乎没有收到任何数据。我真的不知道这是什么或为什么会发生。我试图联系我的托管公司进行解释,他们说服务器已经支持cURL lib。有人可以帮我这个。
send.php (在远程服务器中运行)
<?php
$number= '12345';
$status= 'SUCCESS';
$msg = 'Transaction is Success!';
$curlHandle = curl_init();
curl_setopt($curlHandle, CURLOPT_URL, 'http://mywebsite.org/update.php');
curl_setopt($curlHandle, CURLOPT_POST, 1);
curl_setopt($curlHandle, CURLOPT_HEADER, 0);
curl_setopt($curlHandle, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curlHandle, CURLOPT_POSTFIELDS, 'number='.$number.'&status='.$status.'&msg ='.$msg);
curl_setopt($curlHandle, CURLOPT_RETURNTRANSFER, true);
if (!curl_exec($curlHandle)) {
echo 'An error has occurred: ' . curl_error($curlHandle);
}
else {
echo 'everything was successful';
}
curl_close($curlHandle);
?>
update.php (在网络服务器中运行)
<?php
include ("db_con.php");
$number = $_POST['number'];
$status = $_POST['status'];
$msg = $_POST['msg '];
$query = "UPDATE tbstatus SET status = '$status', msg = '$msg ' WHERE number = '$number '";
mysql_query($query);
?>
提前谢谢。
答案 0 :(得分:1)
大多数网站都使用重写规则来删除www
您可以尝试从网址中删除www吗?
同时设置
curl_setopt($curlHandle,CURLOPT_FOLLOWLOCATION,true);
如果这不会起作用 -
在你的php.ini中设置safe_mode = Off
,如果已经关闭,则评论open_basedir
然后重新启动Web服务器。
答案 1 :(得分:0)
请改为尝试:
<强> send.php 强>
<?php
$number= '12345';
$status= 'SUCCESS';
$msg = 'Transaction is Success!';
$curlHandle = curl_init();
curl_setopt($curlHandle, CURLOPT_URL, 'http://mywebsite.org/update.php');
curl_setopt($curlHandle, CURLOPT_POST, 1);
curl_setopt($curlHandle, CURLOPT_HEADER, 0);
curl_setopt($curlHandle, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curlHandle, CURLOPT_POSTFIELDS, 'number='.$number.'&status='.$status.'&msg ='.$msg);
curl_setopt($curlHandle, CURLOPT_FOLLOWLOCATION,1);
curl_setopt($curlHandle, CURLOPT_RETURNTRANSFER, 1);
if (!curl_exec($curlHandle)) {
echo 'An error has occurred: ' . curl_error($curlHandle);
}
else {
echo 'everything was successful';
}
curl_close($curlHandle);
?>
<强> update.php 强>
<?php
include ("db_con.php");
$number = $_POST['number'];
$status = $_POST['status'];
$msg = $_POST['msg '];
$query = "UPDATE tbstatus SET `status` = '$status', `msg` = '$msg' WHERE `number` = '$number'";
mysql_query($query);
?>