Kaarel Kaarel -3 years ago 124
PHP Question

PHP foreach loop SQL insert

Is something like this possible? For each item in array make an insert into database? How should I do it, because clearly this doesn't work. At the moment it takes last item from the array and inserts its data.

foreach ($properties as $prop):
$productProp = new ProductProperty();

$productProp->product_id = $product->ID;
$productProp->properties_id = $property->ID;
$productProp->set_properties_id = $set_property->ID;
endforeach;

$productProp->save(); //inserts into database

Answer Source

You have to write in the database for each object.

  1. Create the object

  2. Set the object's attributes to certain values

  3. Insert the object in the database

And repeat while your array still have entries (objects).


Code:

foreach ($properties as $prop): 
   //Create a new object 
   $productProp = new ProductProperty();
   //Set the attributes 
   $productProp->product_id = $product->ID;
   $productProp->properties_id = $property->ID;
   $productProp->set_properties_id = $set_property->ID;
   //Insert it in the database 
   $productProp->save();
endforeach;
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download