我正在尝试使用'curl'将一些值从'1.php'页面发送到'3.php'页面。
这是我的代码-
1.php
<?php
$data = array();
$data['first_name'] = 'hello';
$data['last_name'] = 'Thind';
$data['password'] = 'secret';
$data['email'] = 'me@abc.com';
$post_str ='';
foreach($data as $key=>$val)
{ $post_str .= $key.'='.$val.'&'; }
$post_str = substr($post_str, 0, -1);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, '3.php' );
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_str);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$result = curl_exec($ch);
curl_close($ch);
echo $result;
?>
3.php
<?php
$host="localhost";
$dbname="mr";
// mysql code for table= create table m(name varchar(10));
$username="";
$password="";
$con=mysql_connect("$host","$username","$password")or die("cannot connect");
mysql_select_db($dbname) or DIE('cannot select db');
if(isset($_POST['first_name'])){
$name=$_POST['first_name'];
$sql="insert into m
values('$name')";
$sq=mysql_query($sql);
echo"ok";
}
mysql_close($con);
?>
我的问题是“没有数据插入到数据库中,因为没有数据从 1.php 传输到 3.php”。我通过给出一些值检查了 '3.php' 中的数据库代码,并将其正确插入到数据库中。所以代码“3.php”运行良好。所以“1.php”中的代码似乎不起作用。
(注意: php_curl.dll 在 php.ini 文件中被激活。我使用的是 windows xp 专业服务包-2,xampp-win32 版本-1.8.1)
谁能告诉我那里有什么问题?
-谢谢。