我有一個插入圖像文件名在'ImageFile'表中的'ImageFile'字段的INSERT函數,每一行都有自己的ImageId感謝自動編號。這方面的一個例子如下:爲什麼數據沒有被插入到MySQL數據庫使用PHP?
ImageId ImageFile
23 orange.jpg
24 flowers.png
25 castle.png
26 orange.jpg
我想要做的也是插入圖像標識與QuestionId和SessionID的另一個表,該表(Image_Question)可以使用圖像標識的圖像表的鏈接圖片問題表。現在我試圖使用mysql_insert_id從Image Table中檢索ImageId並將其存儲在Image_Question表中的ImageId中。
但我似乎無法弄清楚我需要做什麼,此刻插入圖像表的INSERTING值工作正常,但它不會在Image_Question表中插入任何值。
所以我的問題是插入到圖像表中的每一行,如何從圖像表插入圖像表後將ImageId檢索到,並使用mysql_insert_id()將其插入到Image_Question表中?下面 例子:
ImageId SessionId QuestionId
23 AAA 1
24 AAA 2
25 AAA 3
26 AAA 4
我已編碼的SessionID和QuestionId的INSERT值,但只需要幫助檢索和插入圖像標識。以下是當前的代碼:
<?php
session_start();
//connect to db
$result = 0;
$i = 0;
$insertimage = array();
move_uploaded_file($_FILES["fileImage"]["tmp_name"],
"ImageFiles/" . $_FILES["fileImage"]["name"]);
$result = 1;
$imagesql = "INSERT INTO Image (ImageFile)
VALUES ('ImageFiles/".mysql_real_escape_string($_FILES['fileImage']['name'])."')";
mysql_query($imagesql);
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]) ."'";
}
$imageinsertsql .= "INSERT INTO Image_Question
(ImageId, SessionId, QuestionId)
VALUES
((SELECT ImageId FROM Image ORDER BY ImageId DESC LIMIT 1),
" . implode('), (', $insertimage) . ")";
mysql_query($imageinsertsql);
}
mysql_close();
?>
我有一箇舊的PHP版本5.2.13,因爲那是大學的服務器版本。
我以爲這在這裏解決了? http://stackoverflow.com/questions/10915022/how-to-retrive-imageid-and-insert-it-into-another-table/10915261#10915261 – sephoy08
可能的重複[如何從一個數據庫表和商店檢索ImageId它在另一個數據庫表](http://stackoverflow.com/questions/10924346/how-to-retrieve-imageid-from-one-db-table-and-store-it-in-another-db-table) – 2012-06-07 07:30:59
當你問一個「不工作」類型的問題時,請發佈你得到的任何錯誤信息。如果您沒有看到錯誤,則需要啓用PHP錯誤報告/日誌記錄設置,例如'display_errors'。 –