0

好的。所以基本上我正在尝试通过表单中的上传按钮上传文件。我的代码运行良好,直到我决定让我的上传按钮有点“时尚”。傻我。

我的 php 文件中的 $_POST 查询无法识别该动画按钮。我试图在 POST 查询中链接该动画按钮的类名,但似乎没有任何效果。

这是我的 html 表单代码,其中包含我的动画按钮:

<form action="upload_file.php" method="post" enctype="multipart/form-data" >
<label for="file" style=" font-weight:normal;  font-family: Tahoma;   font-size:20px; "></br></br></br>Upload the list of Teaching Assistants here:</label>
<input  type="file" name="file" id="file" /> 
    <!--<input type ="submit"  name="submit" value="Upload" />  This button is working perfectly-->

<br />


    <div  class="button-wrapper" method="post" enctype="multipart/form-data" >
     <a href="upload_file.php"  class="a-btn">
    <span class="a-btn-text">Upload </span> 
        <span class="a-btn-slide-text">FILE!</span>
    <span class="a-btn-icon-right"><span></span></span>
                </a>

            </div>
    </form>

这是我的php代码:

<?php
session_start();

include "connect1.php";


if ($_POST["submit"])
{
if ($_SESSION["name"])
{
    $name = $_FILES["file"]["name"];
    $type = $_FILES["file"]["type"];
    $size = $_FILES["file"]["size"];
    $tmp_name = $_FILES["file"]["tmp_name"];
    $error = $_FILES["file"]["error"];

    if($error > 0)
    {
        echo "Error!".$error;
    }
    else
    {
        if (file_exists("upload/".$name))
        {
            echo $name." already exists";
        }
        else
        {
            $location = "upload/".$name;
            move_uploaded_file($tmp_name,$location);
            $user = $_SESSION["name"];
            $sqlcode = mysql_query("INSERT INTO upload (id,user,location) VALUES ('','$user','$location')");
            echo "<a href='$location'>Click here to view the file </a>";
        }
    }
}
else
{
    echo "Please Sign In";
}
}
else
{
echo "<a href='index.php'>";
}

收到此错误:

注意:未定义的索引:在第 7 行的 C:\xampp\htdocs\smartalloc\upload_file.php 中提交基本上 - 他要求我为我的 $_POST 查询提供一个类型,但没有任何效果。

任何帮助将非常感激。:)

4

2 回答 2

0

我认为问题在于您现在使用的是链接而不是按钮,因此没有发生 POST 事件。

尝试将动画按钮更改回实际按钮并使用 CSS 设置样式。

于 2012-10-15T16:35:05.563 回答
0

为了让表单提交和发送来自您输入的所有信息,您需要将提交按钮作为能够提交表单的适当表单元素。

您不能只是制作一个花哨的链接或<span><div>或其他任何东西,而只是期望表单知道您希望该元素为您提交表单。您需要做的是保留提交按钮:

<form action="upload_file.php" method="post" enctype="multipart/form-data">
    <label for="file">Upload the list of Teaching Assistants here:</label>
    <input type="file" name="file" id="file" />
    <input type="submit" value="Submit" />
</form>

相反,使用 CSS 设置样式。有很多选择,您可以制作一个非常漂亮的按钮。请参阅这些教程中的任何一个作为示例(或者只是谷歌“提交按钮 CSS”以获取更多信息)。

http://speckyboy.com/2009/05/27/22-css-button-styling-tutorials-and-techniques/

其次,我看到你已经尝试过这个:

<div  class="button-wrapper" method="post" enctype="multipart/form-data" >

那不是有效的 HTML。您不能将任何元素(在本例中为 div)制作成表单。和属性只能在标签method上。enctype<form>

于 2012-10-15T16:49:43.983 回答