2011-01-07 84 views
0

在我的網站中,我有一個頁面來創建一個網站頁面(addpage.php),然後將用戶發送到所有頁面(pages.php)的列表,他們可以點擊頁面, d喜歡編輯(editpage.php)。PHP如何編輯我剛剛創建的數據庫條目? (基本)

我這樣做是因爲我的editpage.php使用page_id變量從數據庫中選擇頁面的信息,我不知道如何選擇該變量,而不先去pages.php列出所有這些變量。

我希望能夠完成addpage.php,然後直接進入editpage.php - 但是如何選擇只會在插入數據庫時​​創建的page_id?

我對addpage.php代碼基本上

$q = "INSERT INTO pages (page_name, page_content) VALUES ('$name', '$content')"; 
$r = mysqli_query ($dbc, $q); 

     if (mysqli_affected_rows($dbc) == 1) { // If it ran OK. 
      // send to pages.php 
     } else { // If it did not run OK. 
      echo '<p>The page has NOT been added</p>'; 
     } 

回答

1
$q = "INSERT INTO pages (page_name, page_content) VALUES ('$name', '$content')"; 
$r = mysqli_query ($dbc, $q); 
$id=mysql_insert_id(); 

    if (mysqli_affected_rows($dbc) == 1) { // If it ran OK. 
     // send to pages.php 
    } else { // If it did not run OK. 
     echo '<p>The page has NOT been added</p>'; 
    } 

您可以檢查php manual

+0

感謝您添加此代碼 - 雖然它給了我一個關於無法連接到數據庫的錯誤?我不知道爲什麼 - 傳入數據庫的變量。 – WillHerndon 2011-01-07 20:14:42

0

你必須做一個查詢到您的數據庫,要求搞什麼名堂了最後插入的ID。爲此,您可以運行此查詢:

SELECT LAST_INSERT_ID() as lastId 

然後你使用任何常規查詢(因爲這是一個常規查詢其實)你獲得的價值。

在php中有一個叫mysql-insert-id的函數,它更加優雅。

祝你好運!

0

如果您使用的是mysql,可以通過運行以下查詢SELECT LAST_INSERT_ID()來獲取最後一個插入的ID。這會讓你的身份證。

+0

如果我使用這個,我必須做我通常爲mysql查詢做什麼,並指定一個表,然後在循環中回顯輸出? – WillHerndon 2011-01-07 20:16:08

相關問題