我使用PHP作爲服務器端腳本和MySQL服務器的數據庫。 如果我使用mysql_insert_id()
那麼它給「0」和使用LAST_INSERT_ID()
導致錯誤「對象返回空描述」。這個錯誤,我看到當我在客戶端在Objective-C調試。 我的表的id列是自動生成的。我不'明確地傳遞id。獲取PHP中最後插入的行的編號
下面是PHP代碼:
// Connect to our database
$db = Frapi_Database::getInstance();
$sql = "INSERT INTO userTrip
(userId, fromLat, fromLon, fromLoc, fromPOI,
toLat, toLon, toLoc, toPOI,
tripFinished, isMatched, departureTime, createdAt)
values
(".$userId.",".$fromLat.",".$fromLon.", GeomFromText('POINT($fromLat $fromLon)')".",'".$fromPOI."',".$toLat.","
.$toLon.", GeomFromText('POINT($toLat $toLon)')".",'".$toPOI."',0,0,'".
$departureTime."','".date('Y-m-d H:i:s')."')";
$stmt = $db->prepare($sql);
if (!$stmt->execute())
throw new Frapi_Error('ERROR_INSERTING_RECORD');
$lastId = LAST_INSERT_ID();
$this->data['tripId'] = $lastId;
$db = null;
您是否嘗試檢查您的插入是否成功? –
檢查插入的記錄或者是否有自動增加的主鍵,因爲如果前一個查詢未生成AUTO_INCREMENT值,則mysql_insert_id()返回0。 – Arvind