2012-05-18 26 views
0

我從顯示錶上攜帶'ID'並希望將其存儲在名爲employee_display_id的變量中。我知道,如果不創建以下功能...

if(sset($_GET['id'])){ 
    $employee_display_id = $_GET['iod']; 
} 

和你繼續使用「$ employee_display_id」變量,您會收到一個未定義的變量錯誤。

你怎麼把該...

if(sset($_GET['id'])){ 
    $employee_display_id = $_GET['iod']; 
} 

成...

if(isset($_POST['update'])) 
{ 
    $updatename   = htmlentities(strip_tags(mysql_real_escape_string($_POST['update_name']))); 
    $updateusername  = htmlentities(strip_tags(mysql_real_escape_string($_POST['update_username']))); 

    echo $update_query = "UPDATE `employees` SET `name`='$updatename', `username`='$updateusername' WHERE `employee_id`='4'";/* $employee_display_id */ 
    $update_result = mysql_query($update_query); 
} 
    else 
{ 
    echo mysql_error(); 
} 

這樣我就可以使用該變量更新查詢的WHERE子句中?

回答

0

您正在檢查isset爲$_GET['id']和分配$_GET['iod'] itz「iod」yu正在分配。你確定這個變量賦值嗎?

0

Nazneen有一點。仔細檢查你的變量名稱。

另外,你知道GET和POST的區別嗎?他們如何工作? 假設您想更新表中更新鏈接的員工數據?所以你的鏈接就像http://example.com/update.php?id=6

那麼在這個例子中,GET ['id']會返回6,然後你可以使用你的代碼並將它傳遞到你的SQL查詢中。

例子:

if(isset($_POST['update'])) 
{ 
    if(isset($_GET['id'])){ 
     $employee_display_id = $_GET['id']; 
    } 
    if(isset($_POST['update_name'])){ 
    $updatename = htmlentities(strip_tags(mysql_real_escape_string($_POST['update_name']))); 
    } 
    // and so on... 
} 

是否回答你的問題?

+0

嗨Ouairz,你的推定是正確的......我從表中更新我使用的鏈接。我有一個isset函數用於與SELECT語句一起使用的id,並讓變量i分配isset來回顯。這是確認ID在我第一次打開更新頁面時的傳遞。然後我按照你的建議改變了我的UPDATE語句。我會添加這段代碼,但在添加註釋時不知道如何執行此操作(newbie alert!)。所以不能讓我的評論看起來像你的評論。我有一個else語句設置爲「ID未設置」,這就是發生了什麼。 – chrisjwebb1978

0

如果確定變量是否在更新命令中設置,但您需要將其設置爲某種內容或查詢將無法按預期方式操作,則可以使用簡寫。

我會建議檢查是否在SQL之前設置變量。如果沒有設置,請不要執行查詢。

if(isset($employee_display_id)){ 
    echo $update_query = "UPDATE `employees` SET `name`='$updatename', `username`='$updateusername' WHERE `employee_id`=" . $employee_display_id; 
    $update_result = mysql_query($update_query); 
} else { 
    echo "ID not set." 
} 
+0

嗨肖恩,謝謝你的回覆。所以我改變了我的代碼,如你的答案中所述。但我也迴應了SELECT查詢中使用的第一個isset函數,以查看是否從顯示錶傳遞變量並確認了這一點。然後用'isset($ _ POST ['update'])'檢查更新按鈕是否被按下,然後設置表單變量,我按照你的建議使用代碼,並且頁面顯示「ID not set」,不知道是什麼這裏錯了。 – chrisjwebb1978

+0

您是否能夠完整地發佈您的代碼,或者至少整個更新週期?這聽起來好像$ employee_display_id的設置沒有正確地發生,但是如果你使用上面的代碼,它應該工作[假設if(sset($ _ GET ...)是一個錯字,並且應該讀取if(isset($ _ GET)。 ..]。 – Sean

+0

我是新來的堆棧溢出,所以我不確定如何添加一段代碼。我嘗試了很多方法,但不會添加內容。任何其他方式我可以發送此代碼?感謝回覆。 – chrisjwebb1978