在另一个foreach之内

时间:2019-02-19 09:31:26

标签: php postgresql

我已经搜索了其他提出的问题,但是解决方案不适合我想要达到的目标。我也不知道是否需要嵌套的foreach,但这是我唯一能想到的。 我有一个包含ilustrations及其作者的表单,我想在表中存储ilustration id和ilustration author以及内部表单id。 表单获取如下字段信息:

  

idparatextualidad:1,1
  $ ilustracion:1,2
  $ autor:John Doe-Mark Doe

这是我已经写的代码。

$autorilustracion = explode("-", $autorilustraciones);

$prp2 = pg_prepare($con,"ilustraciones_paratextualidad","insert into carto.paratextualidadilustraciones (idparatextualidad,idilustraciones,autorilustraciones)  select last_value,$1,$2 from carto.paratextualidad_idparatextualidad_seq;");
    foreach ($autorilustracion as $key => $autor) {
        echo $autor;

    foreach ($ilustraciones as $key => $ilustracion) {
        $prp2 = pg_execute($con,"ilustraciones_paratextualidad",array($ilustracion,$autor));
        if (!$prp2) {
            return '2: '.pg_errormessage($con);
        }
    }
}

此解决方案复制了结果,因此尝试像这样先插入John Doe的两个记录,然后插入Mark Doe的两个记录

  

idparatextualidad ilustrationid作者名

     

1 1 John Doe

     

1 2 John Doe

     

1 1马克·多伊

     

1 2马克·多伊

因此数据库给出错误,因为在fid,ilustrationid上有重复的主键。 有什么提示吗? 提前致意

0 个答案:

没有答案