2015-04-17 95 views
-4

我需要更新&刪除同一頁面中的數據。如何使用PHP在同一頁面更新和刪除MySQL記錄

我的問題是如何讓更新刪除記錄ID在同一個頁面,而用戶點擊「更新」或「刪除」鏈接。

任何人都請幫助如何更新和刪除同一頁中的記錄。

請找我的代碼如下(View.php)

View.php

<?php 
$q =($_GET['q']); 
if($q=="all") 
{ 
    $result=mysql_query("select * from password"); 
} 
else 
{ 
$result=mysql_query("select * from password WHERE tag = '".$q."'"); 
} 
if($result === false) 
{ 
    die(mysql_error()); 
} 
?> 
<table> 
<thead> 
<tr> 
<th>Id</th> 
<th>Name</th> 
<th>username</th> 
<th>Password</th> 
<th>Account Type</th> 
<th>Link</th> 
<th>update</th> 
<th>Delete</th> 
</tr> 
</thead> 
<?php 

while($row=mysql_fetch_array($result)) 
{ 
    $id=$row['id']; 
    $name=$row['name']; 
    $url=$row['url']; 
    $uname=$row['username']; 
    $pass=$row['password']; 
    $tag=$row['tag']; 
    $des=$row['description']; 

    ?> 
    <tbody> 
    <tr> 
    <td><?php echo $id; ?></td> 
    <td><?php echo $name; ?></td> 
    <td><?php echo $uname; ?></td> 
    <td><span data-tooltip aria-haspopup="true" class="has-tip" title="<?php echo $pass; ?>">View</span></td> 
    <td><?php echo $des; ?></td> 
    <td><a href="<?php echo $url; ?>" title="<?php echo $name; ?>" target="_blank">Link</a></td> 
    <td><a href="update.php?<?php echo $id; ?>">Update</a></td> 
    <td><a href="delete.php?<?php echo $id; ?>">Delete</a></td> 
    </tr> 
    </tbody> 
    <?php 

} 

?> 
</table> 
+4

注意這個代碼是開放的sql注入 – Patrick

+1

歡迎來到堆棧溢出!我已經編輯了一下你的問題。您可以通過正確縮進代碼來進一步改善它。正如已經指出的那樣,這個代碼對SQL注入是開放的。似乎還有其他安全漏洞。一旦你可以做更新和刪除的事情,你就會很好地閱讀密碼散列。當你有一些時間時,你可能想閱讀http://stackoverflow.com/questions/549/the-definitive-guide-to-form-b​​ased-website-authentication。祝你好運! –

+0

我可以看到你要在這裏做什麼:你有更新和刪除腳本的鏈接,並且你試圖通過查詢字符串傳遞值'$ id'。然而,正如@ajaykumartak指出的那樣,這些需要密鑰。此外,您不想在超鏈接中刪除/更新,因爲這是一個GET操作 - 您想要在POST中修改數據庫。這是一個很大的話題,所以你可能會在這裏找到一些(很好的)使用教程。 – halfer

回答

0

點擊你應該發回的一些信息到服務器的鏈接。如果您想創建交互式外觀,可以通過POST,GET(不推薦)或AJAX實現。

0

在您的代碼中,您正在使用兩個不同的文件以updatedelete您的記錄。

例如:update.phpdelete.php並且您正在發送參數中的id

如果要爲兩個頁面保留相同的頁面,請創建一個名爲action.php的頁面,然後再發送一個參數以及id

像:update.php?id=<?php echo $id; ?>&type=update/delete

你可以保留任何名稱,頁面action.php這只是舉例來說。

注意:請記住@patrick評論。

+0

請指導我我需要更多的信息來解決這個問題 – CodeMan

+0

你試過根據我的回答? – ajaykumartak

0
try it as i have 
(sample.php) 

//db connections.. 
if ($_GET['delete_id']!="") 
{ 
//delete statement goes here.... 
} 
$result = mysql_query("SELECT commentid FROM comments") 
or die(mysql_error()); 

while($row = mysql_fetch_array($result)) { 
?> 
    <a href="sample.php?delete_id=<?=$row['id']?>">delete</a> 
<?php } ?> 
+0

提供一些文字內容來闡述你的答案。 –

相關問題