我通过以下表单从本地PC发送数据到服务器:
<form method="post" action="proses.php">
<input type="hidden" name="id"><br>
Tanggal <input type="text" name="tgl"><br>
Pesan <textarea name="isi" cols="29" rows="5"></textarea> <br>
Nomor Hp <input type="text" name="nope"><br>
<input type="submit" name="submit" value="Submit"> </form>
这是代码proses.php
<?php
$id = $_POST['id'];
$tgl = $_POST['tgl'];
$isi = $_POST['isi']; $nope= $_POST['nope'];
$curlHandle = curl_init();
curl_setopt($curlHandle, CURLOPT_URL, 'http://adibiken.com/SEM/kir.php');
curl_setopt($curlHandle, CURLOPT_POSTFIELDS, "id=".$id."&tgl=".$tgl."&isi=".$isi."&nope=".$nope);
curl_setopt($curlHandle, CURLOPT_HEADER, 0);
curl_setopt($curlHandle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curlHandle, CURLOPT_TIMEOUT,30);
curl_setopt($curlHandle, CURLOPT_POST, 1);
curl_exec($curlHandle);
curl_close($curlHandle); ?>
这是kir.php(在服务器中)的代码
<?php $id = $_POST['id']; $tgl = $_POST['tgl']; $isi = $_POST['isi']; $nope = $_POST['nope'];
$quer = "INSERT INTO `adibiken_sem`.`inbox` (`id`,`tgl` ,`isi` ,`nope`)VALUES ( '$id','$tgl', '$isi', '$nope')";
mysql_query($quer); ?>
问题:数据成功发送DATBASE SERVER中的EMPTY RECORD ... 需要帮助
答案 0 :(得分:1)
不知道这是否是问题,但肯定是
VALUES ( '$id','$tgl', '$isi', '$nope')"
应该是
VALUES ( '".$id."','".$tgl."', '".$isi."', '".$nope."')"
答案 1 :(得分:0)
在文件“proses.php”中尝试使用“&amp;”而不是“&amp; amp;”。同样在文件kir.php(在服务器中)运行print_r($ _ POST)或将整个数组记录到chceck,如果你收到正确的变量名。
答案 2 :(得分:0)
使用http_build_query(...)从数组中形成postfields。
$request = http_build_query($_POST);
...
curl_setopt($curlHandle, CURLOPT_POSTFIELDS,$request)
如果在$ _POST数组中获得了正确的值,那么SQL语法就会出错。您可以尝试在phpMyAdmin或其他地方执行查询并进行调试。 MySQL可能会发生错误,但您无法看到它。您可以从kir.php获取任何输出,包括错误消息(在您的服务器上启用):
$curResponse = curl_exec($curlHandle);
echo $curResponse;