当前位置: 首页 > 面试题库 >

如何使用Ajax将输入文件数据值发送到php页面

段干博明
2023-03-14
问题内容

我想要做的是每当用户选择图片并单击按钮时,它将把图像移动到特定的文件夹,并将链接保存到数据库的user_image列。

我的问题是,单击“提交”按钮后,图片的实际名称未保存在数据库列中。示例Oppa/upload/多数民众赞成在数据库中保存的值没有图片文件名。

我认为photo.php没有收到文件的值,任何人都可以帮助我解决它。

<input type='file' id="imageInput" name="imageInput" accept="image/*" />
<button  id="changePicture" name="changePicture">Submit</button>

脚本:

var data = {};
        data.imageInput = $('#imageInput').val();
        data.email = $('#email').val();

        $.ajax({
            type: "POST",
            url: "Oppa/view/photo.php",
            data: data,
            cache: false,
            success: function (response) {

            if (Number(response) == 1)
                {
                   $("#dialog-confirm-changedImage").dialog("open");
                }
            }
        });
            return false;

photo.php

<?php
include_once('../dbc/database.php');

$db = new Connection();
$db = $db->dbConnect();
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);


$email = isset($_POST['email']) ? $_POST['email'] : "";

$image = addslashes(file_get_contents($_FILES['imageInput']['tmp_name']));
$image_name = addslashes($_FILES['imageInput']['name']);
$image_size = getimagesize($_FILES['imageInput']['tmp_name']);

move_uploaded_file($_FILES["imageInput"]["tmp_name"], "Oppa/upload/" . $_FILES["imageInput"]["name"]);
$location = "Oppa/upload/" . $_FILES["imageInput"]["name"];


if(!empty($_POST['email'])) {

        $q = "UPDATE tbl_user SET user_image = '$location' WHERE user_email= :email ";
        $query = $db->prepare($q);
        $query->bindParam(':email', $email);
        $results = $query->execute();
        echo "1";
}

?>

问题答案:

看看这个http://malsup.com/jquery/form/#ajaxSubmit。

包括该插件jquery.form.js,然后尝试。

$('#FormID').ajaxSubmit({ //FormID - id of the form.
        type: "POST",
        url: "Oppa/view/photo.php",
        data: $('#FormID').serialize(),
        cache: false,
        success: function (response) {

        if (Number(response) == 1)
            {
               $("#dialog-confirm-changedImage").dialog("open");
            }
        }
    });

这应该工作。我将其用于Ajax图片上传。

谢谢。



 类似资料:
  • 问题内容: 我的问题是可以使用ajax(jquery)将图像上传到服务器吗 以下是我的ajax脚本,无需重新加载页面即可发送文本 是否可以修改它以发送图像? 问题答案: 这可行。 是您要找的东西吗?

  • 问题内容: 我发现了无数关于如何使用jQuery和Ajax从json文件中检索数据的教程,但是没有关于如何将 数据发布到json文件中的* 教程。 *。 如果有人可以向我展示或给我发送有关如何执行此操作的小脚本,那就太好了。我到处都在搜索如何执行此操作,但是没有运气。我见过有人这样做的例子,但他们似乎忘记了分享我没有看到的重要信息。我使用ajax检索数据json文件没有问题。如果有人可以告诉我我是

  • 我有一个表单html,然后我有两个输入(输入文本和输入文件),我的问题是输入文本无法发送帖子上传php。我使用jquery ajax发布数据 upload.php 类型

  • 问题内容: 我想以json格式向php发送一些数据,并在php中进行一些操作。我的问题是我无法通过Ajax将json数据发送到我的php文件。请帮助我该怎么做。我已经尝试过这种方式.. 在PHP中,我使用: 在php文件中添加print_r($ _ POST)时,它在firebug中显示array(0){}。 问题答案: 输了。您没有将JSON发送到服务器,而是发送了普通的POST查询(恰好包含J

  • 问题内容: 我想发送一个用JavaScript构造的数组,其中包含多个select的选定值。有没有一种方法可以使用ajax将此数组发送到php脚本? 问题答案: 您可以使用XML或JSON发回到服务器。您的javascript将必须构造该帖子,在XML的情况下,则需要您在javascript中创建它。JSON不仅轻巧,而且更易于在javascript中制作。签出JSON- PHP 来解析JSON。

  • 我试图从summernote编辑器中捕获数据,并通过ajax将其发送到php文件。 我正在使用load()传递一些参数集到一个PHP文件,它完美地工作;但我明白了Summernote数据是由HMTL标签组成的,它将需要大量的努力来验证Summernote数据的传输。相反,我决定使用$. ajax()进行另一个ajax调用。每次我发送数据,load()ajax调用工作,但$. ajax()不工作,相