2017-09-29 12 views
0

これは可能でしょうか?配列内の各項目について、データベースに挿入しますか?明らかにこれはうまくいかないので、私はそれをどうやって行うべきですか?現在、配列の最後の項目が取り込まれ、そのデータが挿入されます。PHP foreachループSQLインサート

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 
+5

なぜ 'endforeach前に保存入れませんか;'? – Moak

+1

さて、ループにsave()関数を追加したとしますか? – rndus2r

+0

現在、各繰り返しでプロパティをリセットしています。ループの中で 'save()'呼び出しを移動してください。 –

答えて

1

オブジェクトごとにデータベースに書き込む必要があります。

  1. 特定の値

  2. セットオブジェクトの属性は、データベース

でオブジェクトを挿入し、配列はまだエントリを持っていながら、(オブジェクトを繰り返してオブジェクトを作成します。 )。


コード:

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; 
+0

私は今行くと私の人生を再考します。ありがとう! –

+0

それは大丈夫です、私たちはすべて間違いをします。私は過去におかしな間違いを犯したと確信しています。そこにいる誰かが私を助けました。 1つのアドバイス:他の人のコードと同じように行ごとにコードを読み込んで、論理的な欠陥を追跡できるようにしてください。 –

+0

これはちょっとばかげた過ちですが、このようなことが起こります。とにかく、ありがとう :) –