我有一个包含下拉框以及文本字段和复选框的表单。我想要做的是,当用户进入此页面并且地址栏显示 /updatephoneform.php?id=1 时,表单会显示 id1(我的数据库中的电话 ID)的信息,因此可以编辑和更新。我将如何修改我的表单来做到这一点?变量和形式如下:
变量
$ManufacturerID = $row->ManufacturerID;
$Model = $row->Model;
$OSID = $row->OSID;
$Description = $row->Description;
$ScreenSize = $row->ScreenSize;
$Price = $row->Price;
$StockQuantity = $row->StockQuantity;
$StorageSize = $row->StorageSize;
$thumb= $row->ThumbImg;
$large= $row->LargeImg;
形式
<h1>Update an existing phone</h1>
<form action="updatephone.php" method="post" enctype="multipart/form-data">
<p>Brand: <select name="ManufacturerID">
<option value="1">Apple</option>
<option value="2">LG</option>
<option value="3">BlackBerry</option>
<option value="4">HTC</option>
<option value="5">Nokia</option>
<option value="6">Samsung</option>
<option value="7">Sony</option>
<option value="8">Huawei</option>
<option value="9">Motorola</option>
</select>
<p>Model: <input type="text" name="Model"></p>
<p>Operating System: <select name="OSID">
<option value="1">iOS</option>
<option value="2">Android</option>
<option value="3">BlackBerry</option>
<option value="4">Windows Phone 8</option></p>
</select>
<p>Description: <input type="text" name="Description"></p>
<p>Screen Size (inches): <input type="text" name="ScreenSize"></p>
<p>Price: £<input type="text" name="Price"></p>
<p>Stock Quantity: <input type="text" name="StockQuantity"></p>
<p>Storage Size: <input type="text" name="StorageSize"></p>
<p>Large Image(340x340):<input type="text" name="LargeImg"></p>
<p>Thumbnail(100x100):<input type="text" name="ThumbImg"></p>
<p>Flagged?: <input type="checkbox" name="IsFlagged"></p>
<input type="submit" value"Submit">
</form>
谢谢你。
编辑:我得到了表格以提取我想要编辑的电话形式的值,这很好,但我希望表格中的“大图像(340x340)”和“缩略图(100x100)”文本字段显示手机图像的文件名(如果有)。图像被上传到服务器,大图像和缩略图的文件名(即 iphone5.jpg)被插入到名为 LargeImg 和 ThumbImg 的字段中。我怎样才能让它做到这一点?
另外,当我去编辑一些东西并提交表单时,我得到了错误:
注意:未定义的变量:第 51 行的 PhoneID 下面是第 32 到 51 行,第 51 行是 '$sql =' 部分
$ManufacturerID = $_POST['ManufacturerID'];
$Model = $_POST['Model'];
$OSID = $_POST['OSID'];
$Description = $_POST['Description'];
$ScreenSize = $_POST['ScreenSize'];
$Price = $_POST['Price'];
$StockQuantity = $_POST['StockQuantity'];
$StorageSize = $_POST['StorageSize'];
$thumb= $_POST['ThumbImg'];
$large= $_POST['LargeImg'];
if (!isset($IsFlagged))
{
$IsFlagged= 0;
}
else
{
$IsFlagged = $_POST['IsFlagged'];
}
$sql = "UPDATE phones SET ManufacturerID='$ManufacturerID', Model='$Model', OSID='$OSID', Description='$Description', ScreenSize='$ScreenSize', Price='$Price', StockQuantity='$StockQuantity', StorageSize='$StorageSize', ThumbImg='$thumb', LargeImg='$large', IsFlagged='$IsFlagged' WHERE PhoneID='$PhoneID' ";
我不确定问题是什么。例如,如果未选中该复选框或在文本框中未输入图像文件名,我还需要阻止它引发错误。