0

我有一个 INSERT 函数,它在“Image”表的“ImageFile”字段中插入图像文件名,由于自动编号,每一行都有自己的 ImageId。下面是一个例子:

ImageId    ImageFile

23         orange.jpg
24         flowers.png
25         castle.png
26         orange.jpg

我想要做的也是将 ImageId 插入到另一个带有 QuestionId 和 SessionId 的表中,以便该表(Image_Question)可以使用 ImageId 将 Image 表与 Image Question 表链接起来。但是我该如何编码,以便当我在上表中插入图像详细信息时,它将检索它的 ImageId 并将其存储在 Image_Question 表中的 ImageId 中。下面的例子:

ImageId   SessionId  QuestionId

23        AAA        1
24        AAA        2
25        AAA        3
26        AAA        4

我已经对 SessionId 和 QuestionId 的 INSERT 值进行了编码,但只需要帮助来检索和插入 ImageId。以下是当前代码:

<?php

session_start();


//connect to db

$i = 0;

$insertimage = array();

for($i = 0;  $i < $c; $i++ ){


    $insertimage[] = "'". mysql_real_escape_string($_SESSION['id'] ) . 
                    ($_SESSION['initial_count'] > 1 ? $_SESSION['sessionCount'] : '') ."' ,'". 
                    mysql_real_escape_string( $_POST['numQuestion'][$i] ) ."'";

}


 $imagesql = "INSERT INTO Question (ImageId, SessionId, QuestionId) 
    VALUES (" . implode('), (', $insertimage) . ")";

echo($imagesql);

mysql_close();


?>
4

2 回答 2

1

查询执行后的 mysqli_insert_id() 可以解决问题

于 2013-02-14T04:47:44.607 回答
0

auto_increment您可以使用 MySQL 的last_insert_id()函数获取最近生成的 id。PHP 通过mysql_insert_id(). last_insert_id在每个连接的基础上工作,因此无需担心并发插入跨越 id。

于 2012-06-05T22:41:45.133 回答