关于html:在按钮上运行PHP文件单击

Run PHP File On Button Click

我想知道是否有人能帮我。

我一直在研究这个,以及其他许多网站和教程,以了解如何在打开PHP文件的表单中添加按钮,在本例中,是一个弹出表单,允许用户将文件上载到MySQL数据库。

除了打开文件外,我还想将主窗体中的"i d"字段值转入弹出的"文件上载"窗体。

从我进行的研究来看,似乎有很多方法可以做到这一点,但从初学者的角度来看,我不确定什么是最好的方法。

也许有人能给我建议一下最好的方法吗?

多谢并致以亲切的问候


要在页面之间传递值,请执行以下操作:

主要形式:

1
2
3
4
<form action="myuploadform.php" method="get">
ID: <input type="text" name="id">
<input type="submit" value="Open Form">
</form>

ID文本框的值可以在myuploadform.php中作为$_GET['id']访问。

使用GET参数是传递值的最简单方法。在该GET值中传递的另一种方法是在URL中:

.../myuploadform.php?id=35,其中id变为35。


这是我网站上的一个样本。它只允许将文件上载到服务器。它应该作为一个教程。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
<html>
<head>
<script type="text/javascript">
var form_object = null;
var button_object = null;

function submit_form(obj)
         {
         form_object = obj.parentNode;
         form_object.submit();
         form_object.disabled = true;

         button_object = obj;
         button_object.disabled = true;
         }

function enable_form()
         {
         form_object.disabled = false;
         button_object.disabled = false;
         }

function Add_HTML(html)
         {
         if(navigator.appName == 'Microsoft Internet Explorer')
           {
           document.body.insertAdjacentHTML('beforeEnd', html);
           }

           //Firefox uses the Netscape engine (the Netscape version that really sucked)
           if(navigator.appName == 'Netscape' && parseInt(navigator.appVersion) == 5)
             {
             var freaky_object = document.createRange();
             freaky_object.setStartBefore(document.body);
             html = freaky_object.createContextualFragment(html);
             document.body.appendChild(html);
             }
         }

</head>

<body>

    <form action="upload.php" method="post" enctype="multipart/form-data" target="upload">
          <label>File:</label> <input type="file" name="file" />
          <br />
          <label>File:</label> <input type="file" name="swntic" />
          <br />
          <input type="button" value="SUBMIT"
                 onclick="submit_form(this);" />
    </form>

    <iframe src="about:blank" style="display:none;" id="upload" name="upload"></iframe>

</body>
</html>

服务器端代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?
$confirmation ="";

while(list($name) = each($HTTP_POST_FILES)) {
?>

<? if(is_uploaded_file($HTTP_POST_FILES[$name]["tmp_name"])) { ?>
<?= $HTTP_POST_FILES[$name]["name"] ?>
<br />
<?= $HTTP_POST_FILES[$name]["type"] ?>
<br />
<?= $HTTP_POST_FILES[$name]["tmp_name"] ?>
<br />
<?= $HTTP_POST_FILES[$name]["error"] ?>
<br />
<?= $HTTP_POST_FILES[$name]["size"] ?>
<br /><br />
<? } ?>

<?
if(is_uploaded_file($HTTP_POST_FILES[$name]["tmp_name"]))
  {
  move_uploaded_file($HTTP_POST_FILES[$name]["tmp_name"],"./uploads/" . $HTTP_POST_FILES[$name]["name"]);
  chmod("./uploads/" . $HTTP_POST_FILES[$name]["name"], 0644);

  $confirmation .="" .
                   $HTTP_POST_FILES[$name]["tmp_name"] ."" . $HTTP_POST_FILES[$name]["type"] ."," . $HTTP_POST_FILES[$name]["size"] ." bytes<br />";
  }
}
?>

<html>


var confirmation = '<?= $confirmation ?>';


<body onloadx="parent.enable_form(); parent.Add_HTML(confirmation);">
</body>
</html>

它并不完美,但可以作为学习工具使用。