我已经从其他开发人员那里拿起了网站,我完全不明白为什么我们有页面为https://site.com/form.php
<form method="POST" name="myform" enctype="multipart/form-data">
...
</form>
和一旦我添加action="form.php"
或action="https://site.com/form.php"
它停止工作提交。它不会抛出错误,但它应该经过几个函数,但它没有。也许是因为他在他的功能中从地址栏中吸取了价值,我需要看看,但有没有其他方法可以发生这种情况?原来它不是HTTPS,它是HTTP,这可以有任何影响,现在我使用mod_rewrite把它全部改为HTTPS…
这是页面上提交表单的唯一代码,实际上处理的东西,你能解释为什么它停止工作,如果我在表单中指定动作=属性?!
require_once "pdf.php";
$obj=new common();
if($_POST['Submit'])
{
switch($type)
{
case "docx":
$obj->docx_pdf();
break;
case "doc":
$obj->doc_pdf();
break;
case "jpg":
$obj->image_pdf();
break;
}
}
if(($_POST['PDF']) || ($_POST['PDFYES']))
//$obj->generate_pdf();
$obj->over_all();
if($_POST['Delete'])
$obj->delete_files($_POST);
$obj->get_pdf_file();
$obj->display_all();
$objSmarty->display("form.tpl");
我怀疑这个表单以前是用javascript提交的。所以一些元素有一个onclick
定义,当你点击它,表单被提交。这就解释了为什么一开始没有定义action
属性,而定义了name
属性。