0

抱歉,如果这是一个重复的问题,似乎我访问的每篇文章都不适合我。我有一个基本表单,它有两个字段和一个文件。

<form action="make_announce.php" method="post" enctype="multipart/form-data" data-ajax="false">
<label>Enter Subject Line (500char max):
<input name="subject" type="text" id="subject" size="50"/></label>

<label>Announcement :
<textarea name="announce" cols="50" rows="10" id="announce"></textarea></label>

<label>Post Image (Leave Blank for NONE)<br>
<input type="hidden" name="MAX_FILE_SIZE" value="100000" />
<input type="file" name="image" /><br /></label>

<div align="center">
<input type="submit" name="Submit" value="OK" />
</div>
</form> 

我的 PHP 文件减去了大部分变量。

if (!empty($_FILES["image"])) {
    $myFile = $_FILES["image"];

    if ($myFile["error"] !== UPLOAD_ERR_OK) {
        $sql="...
        mysqli_query($con,$sql);
    exit;
    }
    $name = preg_replace("/[^A-Z0-9._-]/i", "_", $myFile["name"]);
    $i = 0;
    $parts = pathinfo($name);
    while (file_exists(UPLOAD_DIR . $name)) {
        $i++;
        $name = $parts["filename"] . "-" . $i . "." . $parts["extension"];
    }
    $success = move_uploaded_file($myFile["tmp_name"],
        UPLOAD_DIR . $name);
    if (!$success) { 
    $sql="...
mysqli_query($con,$sql);
    exit;
    }
    else
    {
    chmod(UPLOAD_DIR . $name, 0644);
    $sql="...
    mysqli_query($con,$sql);
    exit;
    }


}
mysqli_close($con);

尽管这可能不是最好的方法,但它在基本的 php 网页上确实可以正常工作。但是,当我将它放入 jquery 移动网页时,它再次起作用,但似乎没有发布即时上传的文件。即使在找到很多文章告诉我将 data-ajax="false" 添加到我的表单之后。

任何帮助将不胜感激。提前致谢。

4

1 回答 1

1

在表单定义中使用 data-ajax="false" 关闭 Ajax 导航,因为您无法使用 Ajax 上传文件。

于 2014-01-07T15:17:12.150 回答