2013-05-16 62 views
0

我想從兩個id更新數據庫。一到達另一頁。一個人通過頁面上的元素髮送。問題是兩者都是通過GET發送的,所以它們不斷相互轉換。有沒有什麼辦法解決這一問題?兩個得到不斷改變彼此

<?php 
$id1 = $_REQUEST["id"]; 
echo $id1; 
if($_GET["Action"] == "Wijzig") 
{ 
    include 'Includes/database_connection.php'; 
    $strSQL = "UPDATE pairings SET sim_id='".$_GET["id"]."'"; 
    $strSQL .="WHERE unit_id = '".$id1."' "; 
    $objQuery = mysql_query($strSQL); 
} 

\\Action on current page 
    <li><a href="JavaScript:if(confirm('Heeft u de goede geselecteerd?')==true){window.location='<?=$_SERVER["PHP_SELF"];?>?Action=Wijzig&id=<?=$row["id"];?>';}"><?php echo $row['phonenr'];?></a></li> 
\\Action on previous page 
<a href="#" onclick="window.open('test.php?id=<?php echo $row['id']; ?>', 'newwindow', 'width=5000, height=5000'); return false;" ><img src="images/arrowUpDown.png"/></a> 
+2

您不應該使用GET參數來觸發更新,因爲當用戶按下向後按鈕時瀏覽器可能會重新提交頁面。 – Adder

+0

在上面的代碼中,您只發送'<?php echo $ row ['id']; ?>'id1'在哪裏??? –

+0

它是從兩個頁面發出的$ row ['id'],這是發送 –

回答

0

嘗試使用此方法避免了GET,並使其成爲POST:

  • 把隱藏的表單上包含隱藏型窗體域「行動」和「ID」命名的ActionForm頁面。
  • <li><a href="#" onclick="if(confirm('Heeft u de goede geselecteerd?')){document.forms.actionform.elements['id'].value='<?php echo $row['id'];?>';} return false;"><?php echo $row['phonenr'];?></a></li>

這應該把ID的形式,提交表單,並返回false,表明一個的默認操作將不被執行。

關於您的重複問題,請更好地解釋它,但也許返回false有幫助。

+0

我糾正了自己,並使用了一個onclick處理程序,它返回false。 – Adder

+0

好吧,我用這個,它似乎工作。但我仍然有我的重複問題。我會盡力解釋它。所以我得到了一個來自前一頁的id,我存儲在一個變量中。然後使用這個腳本我選擇另一個ID。這樣做的目的就是用這些2個id進行更新。但是,只要我在變量中存儲第二個值,第一個值就會消失。 – Frank