I have a curl script which reads the data from a remote source. Below is the current code:
function download_page($path){
$ch = curl_init();
curl_set
to bulk insert operation you can append you script in a variable and you can run this as whole but for this you have to use mysqli_multi_query
. Check this link http://www.php.net/manual/en/mysqli.multi-query.php
You can insert all records at once as below: Like when we export data from mysql table.
INSERT INTO tablename (id, field2, field3, field3) VALUES ('', 5454, '454', '545'), ('', 'erwe', 'rewrew', 'werew'), ('', 'ewrew', 'rwerwe', 'werwer'), ('', 'jkj', 'ere', 'uju') , ('', '343', '3434', 'dfdf');
You can do this within one statement by doing something like this :
$sXML = download_page('http://remotepage.php&function=getItems&count=100&page=1');
$oXML = new SimpleXMLElement($sXML);
$query = "INSERT INTO tbl_item (first_name, last_name, date_added) VALUES";
foreach($oXML->results->item->item as $oEntry){
$query .= "('" . $oEntry->firstname . "', '" . $oEntry->lastname . "', '" . date("Y-m-d H:i:s") . "'),";
}
mysql_query($query);
Maybe something like this?
foreach($oXML->results->item->item as $oEntry){
$inserts[] = "(". implode(', ', array ($oEntry->firstname, $oEntry->lastname, date("Y-m-d H:i:s") ) ) .")";
}
$insert_query = mysql_query("INSERT INTO tbl_item (first_name, last_name, date_added) VALUES ".implode(', ', $inserts));