通过curl将数据库数据发布到php

通过curl将数据库数据发布到php,php,database,post,curl,Php,Database,Post,Curl,我试图创建一个php文件,读取数据库表,并通过curl将该表的行发布到php表单 下面的代码通过curl将表的第一行发布到php文件中。它不会遍历表中的所有行并逐步发布它们 <?php define('DB_HOST', 'localhost'); define('DB_NAME', 'dbname'); define('DB_USER','dbuser'); define('DB_PASSWORD','dbpass'); $con=mysql_connect(DB_HOST,D

我试图创建一个php文件,读取数据库表,并通过curl将该表的行发布到php表单

下面的代码通过curl将表的第一行发布到php文件中。它不会遍历表中的所有行并逐步发布它们

<?php

define('DB_HOST', 'localhost'); 
define('DB_NAME', 'dbname'); 
define('DB_USER','dbuser'); 
define('DB_PASSWORD','dbpass'); 
$con=mysql_connect(DB_HOST,DB_USER,DB_PASSWORD) or die("Failed to connect to MySQL: " . mysql_error()); 
$db=mysql_select_db(DB_NAME,$con) or die("Failed to connect to MySQL: " . mysql_error()); 


$result = mysql_query("SELECT name,contact,city FROM customers; ");

while ($row = mysql_fetch_assoc($result)) {


$parts = explode(" ", $row[name]);
$lastname = array_pop($parts);
$firstname = implode(" ", $parts);

$gmail = "@gmail.com";
$email = $firstname.$lastname.$gmail ;

$particip = "aaa" ;


$fields = array(
    'fname' => rawurlencode($firstname),
    'lname' => rawurlencode($lastname),
    'mbl' => rawurlencode($row[contact]),
    'email' => rawurlencode($email),
    'city' => rawurlencode($row[city]),
    'e' => rawurlencode($particip)  
);




//extract data from the post
//set POST variables


$url = 'http://example.com/form.php';


//url-ify the data for the POST
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
rtrim($fields_string, '&');

//open connection
$ch = curl_init();

//set the url, number of POST vars, POST data
curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch,CURLOPT_POST, count($fields));
curl_setopt($ch,CURLOPT_POSTFIELDS, $fields_string);

//execute post
$result1 = curl_exec($ch);

echo $result1;

//close connection
curl_close($ch);



}
?>

更新:这些值正在发布到表单php文件中。从第一行到第二行。但是只获取数据库条目中的第一行

在发布第二行数据库数据之前,有没有办法刷新$url

$fields[] = array(
    'fname' => rawurlencode($firstname),
    'lname' => rawurlencode($lastname),
    'mbl' => rawurlencode($row[contact]),
    'email' => rawurlencode($email),
    'city' => rawurlencode($row[city]),
    'e' => rawurlencode($particip)  
);
这样试试


尝试这种方式

值不会过账到表单中。获取0或null输出。将curl代码移到while循环之外,并尝试回显您正在创建的$fields\u字符串(如果该字符串获得的值是否正确)。这些值不会过帐到表单中。获取0或null输出。将curl代码移到while循环之外,并尝试回显正在创建的$fields\u字符串(如果该字符串的值是否正确)。