所以,我是新的PHP和使用MySQL。在我的程序中,我嘗試了簡單的編輯,添加和刪除功能。那麼,添加和刪除功能的工作,但也有一些是錯誤的編輯一個......每當我去phpMyAdmin來檢查是否有數據庫的變化,我沒有發現...
我會非常感激,如果有人可以指導我在這部分...更新數據無法在Php和MySql中工作
adminpanel.php的一部分:
if(array_key_exists('editshirt', $_POST))
{
include 'editshirt.php';
exit();
}if(array_key_exists('changeshirt', $_POST))
{
if(!mysqli_query($dbconnect, 'update shirts set
shirtName="'.mysqli_real_escape_string($dbconnect, $_POST['shirtName']).'",
shirtDescription="'.mysqli_real_escape_string($dbconnect, $_POST['shirtDescription']).'",
shirtGender="'.mysqli_real_escape_string($dbconnect, $_POST['shirtGender']).'",
shirtColor="'.mysqli_real_escape_string($dbconnect, $_POST['shirtColor']).'",
shirtPrice="'.mysqli_real_escape_string($dbconnect, $_POST['shirtPrice']).'",
shirtPicture="'.mysqli_real_escape_string($dbconnect, $_POST['shirtPicture']).'",
where shirts.shirtId="'.mysqli_real_escape_string($dbconnect, $_POST['shirtId']).''))
echo ' ';
exit();
}
這是我的editShirt.php
<?php
$yas = mysqli_query($dbconnect, "select * from shirts where shirtId=".mysqli_real_escape_string($dbconnect, $_POST['shirtId']));
$roww = mysqli_fetch_array($yas);
echo "<p>Edit Shirt:</p>";
echo "<form action='?' method='post'>";
/*echo "<label for='shirtName'>Shirt Name: </label>
<input type='text' name='shirtName' value=".$roww['shirtName']."><br>";*/
echo "<label for='shirtName'>Shirt Name: </label>
<textarea name='shirtName' style='resize:none'>".$roww['shirtName']."</textarea><br>";
echo "<label for='shirtDescription'>Description: </label>
<textarea name='shirtDescription' rows='10' cols='30' style='resize:none'>".$roww['shirtDescription']."</textarea><br>";
echo "<label for='shirtGender'>Gender: </label>
<input type='radio' name='shirtGender' value='0'";
if($roww['shirtGender']=='0') echo"checked='checked'";
echo ">Male  <input type='radio' name='shirtGender' value='0'";
if($roww['shirtGender']=='1') echo "checked='checked'";
echo ">Female  <input type='radio' name='shirtGender' value='1'";
if($roww['shirtGender']=='2') echo "checked='checked'";
echo ">Unisex<br><br>";
echo "<label for='shirtColor'>Color: </label>
<input type='radio' name='shirtColor' value='0'";
if($roww['shirtColor']=='0') echo "checked='checked'";
echo ">Colored  <input type='radio' name='shirtColor' value='1'";
if($roww['shirtColor']=='1') echo "checked='checked'";
echo ">White  <input type='radio' name='shirtColor' value='1'";
if($roww['shirtColor']=='2') echo "checked='checked'";
echo ">Black<br><br>";
echo "<label for='shirtPrice'>Shirt Price: </label>
<input type='text' name='shirtPrice' value=".$roww['shirtPrice']."><br>";
echo "<label for='shirtPicture'>Shirt Picture: </label>
<input type='text' name='shirtPicture' value=".$roww['shirtPicture']."><br>";
echo "<input type='hidden' name='shirtId' value=".mysqli_real_escape_string($dbconnect, $_POST['shirtId']).">";
echo "<input type='submit' name='changeshirt' value='Update shirt'>";
echo "</form>";?>
我的上帝這段代碼是不可能讀取的。但是你的插入不起作用,因爲你在查詢中使用了雙引號。改用單引號。 – Phiter
你在adminpanel.php中有更新查詢邏輯,你在表單中提供了這個文件引用,提交表單後,腳本將執行adminpanel.php? – Rupal
和'mysql_real_escape_string'不會防止sql注入 – Blueblazer172