我有一个表单,我想通过一个提交按钮提交。
但是我上传文件的操作是一个不同的控制器,然后数据库发布。它看起来像这样......
<form method="post" action="/admin/upholstery_product/add/">
<h3>Add a Product</h3>
Frame: <input type="text" name="productname" /><br>
Parent Category:
<select name="category">
<?php
foreach($cats AS $cat){
$sel = ($curCat->category_id == $cat->category_id) ? 'selected' : '';
echo "<option value='".$cat->category_id."' ".$sel.">" . $cat->category_name . "</option>\n";
}
?>
</select><br />
Family: <input type="text" name="family" /><br>
Width: <input type="text" name="width" size="6" /><br>
Height: <input type="text" name="height" size="6" /><br>
Depth: <input type="text" name="depth" size="6" /><br>
Seat Width: <input type="text" name="seat_width" size="6" /><br>
Seat Height: <input type="text" name="seat_height" size="6" /><br>
Seat Depth: <input type="text" name="seat_depth" size="6" /><br>
Arm Height: <input type ="text" name="arm_height" size="6" /><br>
Features: <textarea cols="40" rows="20" name="features"></textarea><br>
<form method="post" action="/upload/product_image_upload">
Image File: <input type="file" name="image" id="image"/><br>
</form>
<form method="post" action="/upload/product_image_upload">
Thumbnail File: <input type="file" name="thumbnail" id="thumbnail"/><br>
</form>
<form method="post" action="/upload/pdf_upload">
PDF File: <input type="file" name="pdf" id="pdf"/><br>
</form>
Status: <select name="status">
<option value="active">Active</option>
<option value="inactive">Inactive</option>
</select> <br>
<input type="submit" name="submit" value="Add Product" /><br>
</form>
有没有办法将文件操作发布到一个控制器,并通过一个提交按钮提交给我的其他控制器?现在代码不起作用。
答案 0 :(得分:0)
严格来说,您要做的是不可能:您在一个页面上有两个单独的表单,并且您想同时提交这两个表单。
这里的主要问题是:提交表单的结果是一个新页面。不同的行动=不同的页面。你想要展示哪一个?
解决方法:将文件和数据都提交到同一个脚本;如果处理程序需要分开,则让第一个处理程序将数据发布到“幕后”的第二个处理程序。