使用foreach循环将数据插入mysql数据库

时间:2017-01-11 15:41:52

标签: php mysql foreach

问候,

我正在使用与qucikbooks的ODBC连接。使用PHP我可以在我的网站上显示quickbooks数据。 现在我想将这些数据保存在我的本地MYSQL中。所以我创建了一个表和一些字段。

//this line gets data from quickbooks connection
$query = odbc_exec($conn, "SELECT GivenName FROM Customers");

//fetch data in an array
while($row = odbc_fetch_array($query)){

    //Go through the array and save the data into MYSQL.
    foreach ($row as $key => $value) {
        echo  $value . "<br>";

        //Insert data into mySQL. 
        $sql = "INSERT INTO Customers (GivenName) VALUES ('$value') ";
        if (mysqli_query($mysqlconn, $sql)) {
            echo "New record created successfully";
        }
    }
}

上面的foreach循环不起作用。

我的问题是如何使用foreach循环从数组中获取数据,并将其插入到mysql表中;并且也不要插入任何空字段。

非常感谢

2 个答案:

答案 0 :(得分:0)

试试这个:

function get_data_from_cloud(){
$conn=odbc_connect('CLOUD','','');
if (!$conn) {
    exit("Connection Failed: " . $conn);
}
$sql="SELECT DATETIME, NAME, CNDROP 
      FROM TABLE1 
      WHERE DATETIME>='2014-09-28 00:00:00' and 
            DATETIME<='2014-09-28 23:00:00' and 
            NAME IN ('PETER') 
      GROUP BY DATETIME, NAME 
      ORDER BY DATETIME, NAME";

$result=odbc_exec($conn,$sql)or die(exit("Error en odbc_exec"));

$data = array();
while (odbc_fetch_row($result)) {
    $data[]=array('DATETIME' => odbc_result ($result, "DATETIME"), 
                  'NAME'=> odbc_result ($result, "NAME"), 
                  'CNDROP'=> odbc_result ($result, "CNDROP"));
}
return $data;   
}

ODBC/MYSQL Insert a Query Result from ODBC to a databse in MYSQL

我希望它可以帮助你

答案 1 :(得分:0)

我明白你在做什么。但我无法在任何地方看到Insert语句。从云端获取数据后;我想遍历该数据并保存在我的本地服务器上的MYSQL表中。