2013-10-02 54 views
0

FORM形式不發送值或PHP代碼不更新

<form method="post" action="menu_duzenle_islem.php"> 
Şuanki İsim : <input name="menu_isim" value="<?php echo $_POST['menu_isim'] ?>"readonly> 
Yeni İsim : <input name="yeni_menu_isim" placeholder="isim giriniz."> 
Şuanki URL : <input name="menu_url" value="<?php echo $_POST['menu_url'] ?>"readonly> 
Yeni URL : <input name="yeni_menu_url" placeholder="url giriniz"> 
<input type="submit" value="Düzenle"> 
</form> 

menu_duzenle_islem.php

<?php 
$con=mysqli_connect("localhost","root","","mmogezgini"); 
mysqli_query($con,"UPDATE menuler SET isim='$_POST[yeni_menu_isim]' and url='$_POST[yeni_menu_url]' 
WHERE isim='$_POST[menu_isim]' AND url='$_POST[menu_url]'"); 
mysqli_close($con); 
Header("Location:menuler.php"); 
?> 

當我更新 「menu_isim」 和 「menu_url」 menu_isim顯示 「0」 和menu_url不會改變。

+0

的MySQLi支持每個查詢多個語句。如果你不逃/綁定/準備參數,這是簡單的方法來SQL注入和刪除或更改所有表 – DanFromGermany

+0

這不僅是不好的做法語法:'「‘$ _ POST [menu_isim]’」',使用這個:' 「...」。 $ _POST ['menu_isim']。 「......」' – DanFromGermany

+0

@DanFromGermany謝謝你的建議,我會爲逃生功能搜索現在。 –

回答

2

你的SQL查詢是不正確的,請參閱以下內容:

mysqli_query($con,"UPDATE menuler SET isim='". $_POST['yeni_menu_isim']."' ,url='".$_POST['yeni_menu_url'] ."' 
WHERE isim='".$_POST['menu_isim']."' AND url='".$_POST['menu_url']."'"); 
+0

由於它的工作原理,但人們爲什麼downvote我這不是問你不知道是什麼,並回答你知道什麼是互相幫助?一段時間後,我將不能問問題:( –