2016-02-24 57 views
0

假設我有變量$image0,$image1,$image2等 它可以動態變化並從數組中生成。 我有SQL查詢來插入數據等如何使用動態創建的PHP變量將數據插入到Mysql

Insert into table_name (id,entityid,value,image) values (1,123,"abc",$image0); 
Insert into table_name (id,entityid,value,image) values (1,123,"abc",$image1); 
Insert into table_name (id,entityid,value,image) values (1,123,"abc",$image2); 

由於有用於產品的不同的圖像6的插入查詢。

但是它並不強制每個產品的圖片數量都是一樣的,有些產品有3張圖片或者有些圖片有5張圖片可用。

因此,如果只有某些變量可用,我們如何檢查並將該值傳遞給mysql查詢並忽略其他查詢。

感謝

+0

它不是很清楚明白,你是如何得到圖像的?你有一系列的圖像嗎?你嘗試使用計數插入查詢循環? – Vincent

+0

爲什麼你根本不檢查它對應的$ image是否爲空,然後執行查詢? PHP代碼也很有用。 – mitkosoft

回答

1

我想獲得的所有圖像陣列最好的辦法,然後只用foreach

有點像這樣嗎?在PHP

<?php 
// When you obtaining a images, just let them create a array... this is only example 
$arr = array($img1, $img2, $img3, $img4); 
foreach ($arr as &$img) { 
    //execute your statement with param $img 
} 

unset($value); // Clean it! ;) 
?> 
0

Simplist的方法是使用破滅功能,將插入行的其餘部分進入分離器: -

$images = array($image0,$image1,$image2); 

$sql = "INSERT INTO table_name (id,entityid,value,image) values (1,123,'abc','".implode("'), (1,123,'abc','", $images)."');" 

請注意,你應該確保你的形象名稱首先消毒。

+0

嗨,但我不確定有多少圖片將有產品。它因產品而異,有些有3個,有些有5個。所以在數組中我應該定義什麼。 –

+0

只需將它們追加到數組。圖像名稱來自哪裏? – Kickstart

相關問題