我在数据库中有新表来跟踪标签,如下所示:
TAG NAME | IMAGE ID
funny 570
funny 571
dog 649
我有旧表来跟踪标签,如下所示:
TAG ID | TAG NAME | IMAGES IDS
11 funny 570,571,572,573,574,575,576,577,578,579,580,581,58...
12 dog 649,650,651,652,653,654,655,656,657,658,659,660,66...
13 cat 844,845,846,847,848,849,850,851,852,853,854,855,85...
我需要将所有旧图像ID /相关标签添加到新表
答案 0 :(得分:1)
如果我没错,你想把旧表记录添加到新表中。
所以你需要做的就是查询旧表并爆炸imgid并循环遍历爆炸字符串并将其添加到新表中。
示例代码。
<?php
$query = mysqli_query("SELECT * FROM oldTable")or die(mysqli_error());
while($row = mysql_fetch_assoc($query))
{
$ids = explode(",",$row['imageID']);
foreach($ids as $newImgId)
{
$Insert_query = mysqli_query("INSERT INTO NEWTABLE ('tagname','img_id') VALUES ('".$row['tag']."','".$newImgId."')")or die(mysqli_error());
}
}
答案 1 :(得分:1)
你必须获取每一行并循环并插入如下所示。
从数据库中获取第一行。
使用explode将图片ID分解为数组。
循环遍历爆炸数组,并使用相应的标记名称插入它们。
的foreach()
{
//这个循环用来处理记录
//循环直到记录结束
//在这里爆炸
的foreach()
{
//循环并将爆炸的数组插入数据库
}
}