MYSQL 在列上插入相同的 ID 不同的展开
MYSQL insert same ID different explode on column
我需要帮助让我的脚本在导入文档中的特定符号后自动整理 ID,呃,让我解释一下。
我有一个excel格式的文件,其中包括
ID____PRODUCT___________
1_____prod1*prod2*prod3_
2_____prod1*prod2*prod3_
3_____prod1*prod2*prod3_
所以我需要做的是,将它们插入 mysql,看起来像这样
ID____PRODUCT____
1_____prod1______
1_____prod2______
1_____prod3______
2_____prod1______
2_____prod2______
2_____prod3______
3_____prod1______
3_____prod2______
3_____prod3______
所以需要在每个 * 之后创建一个新对象,到目前为止我已经制作了这个脚本,它确实将它排序为 2 列,只需要让其他列使用相同的 id 对其进行排序.有什么想法吗?
while (($emapData = fgetcsv($file, 10000, ",")) !== FALSE)
{
$count++;
$expl=explode(";",$emapData[0]); $string1 = $expl[0]; $string2 = $expl[1];
if($count>1){
$sql = "INSERT into products(a,b) values ('$string1','$string2')";
mysql_query($sql);
}
}
它是一个 csv 文件,因此用 ; 分隔这就是为什么我需要爆炸它。
所以我只需要用新的 * 插入每个产品,我可以想象使用另一个爆炸,但我如何分配它以便将它插入到与第一个具有相同 ID 的新列中?
试试这个
//connect using mysqli
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
while (($emapData = fgetcsv($file, 10000, ",")) !== FALSE)
{
$count++;
$expl=explode(";",$emapData[0]);
$string1 = $expl[0];//ID like 1
$string2 = $expl[1];//the prod1*prod2*prod3
$arr_of_products = explode("*",$string2);
foreach ($arr_of_products as $value) {
$sql = "INSERT into products(a,b) values ('$string1','$value')";
//mysql_query($sql); do not use it
$result = $mysqli->query($sql);
}
}
我需要帮助让我的脚本在导入文档中的特定符号后自动整理 ID,呃,让我解释一下。
我有一个excel格式的文件,其中包括
ID____PRODUCT___________
1_____prod1*prod2*prod3_
2_____prod1*prod2*prod3_
3_____prod1*prod2*prod3_
所以我需要做的是,将它们插入 mysql,看起来像这样
ID____PRODUCT____
1_____prod1______
1_____prod2______
1_____prod3______
2_____prod1______
2_____prod2______
2_____prod3______
3_____prod1______
3_____prod2______
3_____prod3______
所以需要在每个 * 之后创建一个新对象,到目前为止我已经制作了这个脚本,它确实将它排序为 2 列,只需要让其他列使用相同的 id 对其进行排序.有什么想法吗?
while (($emapData = fgetcsv($file, 10000, ",")) !== FALSE)
{
$count++;
$expl=explode(";",$emapData[0]); $string1 = $expl[0]; $string2 = $expl[1];
if($count>1){
$sql = "INSERT into products(a,b) values ('$string1','$string2')";
mysql_query($sql);
}
}
它是一个 csv 文件,因此用 ; 分隔这就是为什么我需要爆炸它。
所以我只需要用新的 * 插入每个产品,我可以想象使用另一个爆炸,但我如何分配它以便将它插入到与第一个具有相同 ID 的新列中?
试试这个
//connect using mysqli
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
while (($emapData = fgetcsv($file, 10000, ",")) !== FALSE)
{
$count++;
$expl=explode(";",$emapData[0]);
$string1 = $expl[0];//ID like 1
$string2 = $expl[1];//the prod1*prod2*prod3
$arr_of_products = explode("*",$string2);
foreach ($arr_of_products as $value) {
$sql = "INSERT into products(a,b) values ('$string1','$value')";
//mysql_query($sql); do not use it
$result = $mysqli->query($sql);
}
}