У меня есть функция INSERT, где она вставляет имя файла изображения в поле «ImageFile» в таблице «Изображение», каждая строка имеет собственный ImageId, благодаря автоматическому номеру. Ниже приведен пример:
ImageId ImageFile 23 orange.jpg 24 flowers.png 25 castle.png 26 orange.jpg
То, что я хочу сделать, также вставить ImageId в другую таблицу с помощью ObjectId и SessionId, чтобы эта таблица (Image_Question) могла использовать ImageId, чтобы связать таблицу изображений с таблицей вопросов изображения. Теперь я пытаюсь использовать mysql_insert_id для извлечения ImageId из таблицы изображений и сохранения его в ImageId в таблице Image_Question.
Но я не могу понять, что мне нужно сделать, в то время как значения INSERTING в таблице изображений работают нормально, но не вставляют никаких значений внутри таблицы Image_Question.
Поэтому мой вопрос касается каждой строки, вставленной в таблицу изображений, как я могу получить ImageId из таблицы изображений и вставить ее в таблицу Image_Question с помощью mysql_insert_id ()? Пример:
ImageId SessionId QuestionId 23 AAA 1 24 AAA 2 25 AAA 3 26 AAA 4
Я закодировал значения INSERT для SessionId и QuestionId, но мне просто нужна помощь в поиске и вставке ImageId. Ниже приведен текущий код:
<?php session_start(); //connect to db $result = 0; $i = 0; $insertimage = array(); $lastimageid = mysql_insert_id(); 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'])."')"; for($i = 0; $i < $c; $i++ ){ $insertimage[] = "'". mysql_real_escape_string( $lastimageid [$i] ) ."','". 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 (" . implode('), (', $insertimage) . ")"; mysql_query($imageinsertsql); mysql_query($imagesql); } mysql_close(); ?>
У меня есть старая версия php 5.2.13, потому что это версия сервера университета.