如何检索和插入ImageId?

时间:2012-06-05 22:39:40

标签: php mysql

我有一个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();


?>

2 个答案:

答案 0 :(得分:1)

查询执行后的

mysqli_insert_id()可以解决问题

答案 1 :(得分:0)

您可以使用MySQL的last_insert_id()函数获取最近生成的auto_increment ID。 PHP通过mysql_insert_id()公开了这一点。 last_insert_id基于每个连接工作,因此无需担心并行插入穿越ID。