我试图将文件发布到数据库,我首先创建一个空的form
,然后尝试使用 javascript 添加input
,但我不知道如何链接新创建的input
形成然后提交因此php显示没有结果。
<html>
<head>
<script class="jsbin" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script class="jsbin" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.0/jquery-ui.min.js"></script>
<title>image upload</title>
<script>
function sub()
{
var form=document.getElementById('nform');
var fil1 = document.createElement("input");
fil1.setAttribute("type","file");
fil1.setAttribute("name", "image1");
fil1.setAttribute("value", document.getElementById('one1').value);
form.submit();
return
}
</script>
</head>
<body>
<form id="nform" action="http://mydomainname.net/somepost.php"method="post">
</form>
<input type='file' id="one1"/>
<input type="button" onclick="sub();" value="Submit">
</body>
</html>
PHP代码:
<?php
$con = mysql_connect("mydomainname.net","489583788","39853953");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("489583788", $con);
echo $_FILES["image1"]["name"];
echo $_FILES["image2"]["name"];
echo $_FILES["image3"]["name"];
?>
答案 0 :(得分:0)
您的输入位于表单元素的一侧,不会传递给操作页面。所以你需要将它附加到表单然后提交。使用Node.appendChild()。
function sub(){
var form=document.getElementById('nform');
var fil1 = document.createElement("input");
fil1.setAttribute("type","file");
fil1.setAttribute("name", "image1");
fil1.setAttribute("value", document.getElementById('one1').value);
fil1.setAttribute("style","display:none;");
form.appendChild(fil1);
form.submit();
return
}