当前位置: 首页 > 知识库问答 >
问题:

我正在尝试使用ajax php和jquery上传图像,我在这里做错了什么

柳正志
2023-03-14
$(document).ready(function(){
    $("#log").click(function(){
        var name = $("#name").val();
        var email = $("#email").val();
        var img = $("#img").val();

        $.ajax({
            url:"ajax.php",
            type:"POST",
            async:false,
            data:{
                "postD" :1,
                "nameD" : name,
                "emailD" : email,
                "imgD" : img

            },
            success:function(data){

                $("#name").val('');
                $("#email").val('');
                $("#img").val('');
            }
        });
}); 
});


function displaydata(){
    $.ajax({
        url:"ajax.php",
        type:"POST",
        async:false,
        data:{
            "displayP":1
        },
        success:function(data){
            $("#datafromDb").html(data);
        }
    });

}

<?php
include("db.php");

$sql = "
CREATE TABLE IF NOT EXISTS temptable (
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(20) NOT NULL,
email VARCHAR(20) NOT NULL,
PRIMARY KEY(id)
);
";

mysqli_query($connect, $sql);

if (isset($_POST['postD'])){
        if(!empty($_POST['nameD']) && !empty($_POST['emailD'])&& !empty($_FILES['imgD'])) {


    $emailP = $_POST['emailD'];
    $nameP = $_POST['nameD'];
    $imgP = $_FILES['imgD']['name'];
    $tmpname = $_FILES['imgD']['tmp_name'];
    $folder = "upload/";

    move_uploaded_file($tmpname, $folder.$imgP);


$insert = "INSERT INTO `inserteddata` (`name`, `email`,`img`) 
                                VALUES('{$nameP}','{$emailP}','{$imgP}')";
    $qry = mysqli_query($connect, $insert);
    if($qry) {
        echo "inserted";
    }

        }else {
            echo "make sure all fields are filled";
        }

}

if(isset($_POST['displayP'])){
    $sel = "SELECT * FROM `inserteddata`";
    $res = mysqli_query($connect, $sel);

    while($row=mysqli_fetch_array($res)) {
        echo "Name = ".$row['name']."<br><br><br>";

    }
}


?>

<?php
$connect = mysqli_connect("localhost", "root", "", "ajaxinsert");
if(!$connect) {
    echo "database connection error".mysqli_error();
}else {

    echo "connected successfuly<br><br><br>";
}
?>

 <!DOCTYPE html>
<html>
<head>
<title>ajax insert</title>
<script type="text/javascript" src="jquery-3.2.1.js"></script>
<script type="text/javascript" src="ajax.js"></script>



</head>
<body>

<div id="datafromDb">
<script type="text/javascript">
document.write(displaydata());
</script>
</div>
  <br>

  <br>

  <form enctype="multipart/form-data" action="" method="post">
  <input type="text"  id="name"><br><br>
  <input type="email"   id="email"><br><br>
  <input type="file"   id="img"  name="img"><br><br>
  <input type="submit" value="Login" >
  <a href="" id="log" >add</a>


</body>
</html> 

我正在尝试使用ajax php和jquery上传图像,我在这里做错了什么。应在不刷新页面的情况下上载图像。我试过上面的代码。如果你看到任何问题,请帮忙!!

问题是我想将上传的文件移动到上传文件夹并将图像名称作为BLOB插入数据库。

共有1个答案

宗政和韵
2023-03-14

您可以使用FormData对象,但需要用普通Javascript编写代码,因为我认为JQuery还不支持它。请阅读此了解更多信息https://developer.mozilla.org/en-US/docs/Web/API/FormData/Using_FormData_Objects

 类似资料:
  • 我正在尝试使用Alamofire4.8.2将一组图像上传到服务器 以下是函数: 在下面的行中获取错误: 无法使用类型为“(UIImage,withName:String,fileName:String,mimeType:String)”的参数列表调用“append”

  • 我试图发布一个新的条目到MongoDB,我知道这个问题是我在服务器文件中调用我的路由的地方,但我不知道如何解决这个问题。我需要能够测试在邮递员的API和张贴到数据库。 我得到以下错误: /users/ryan/desktop/leasequery/operations-backend/node_modules/express/lib/router/index.js:458抛出新的TypeError

  • 我正在尝试使用着色器(感兴趣的点是负责输出最终顶点位置的顶点着色器)正确地平移网格点并将其投影到窗口表面。 模型(四边形)由以下顶点表示:[-0.5f,0.5f,0f](V0),[-0.5f,-0.5f,0f](V1),[0.5f,-0.5f,0f](V2),[0.5f,0.5f,0]。 我有以下两种方法来创建透视投影矩阵: 这个方法可以在Transformations类中找到,它创建并返回透视投

  • 我不知道我在这里有什么错误,但它不会编译。我得到的错误消息是/"fe"而没有"if"/ /not一个语句//没有"if"/ 我正在按照我作业中的样本所显示的方式来做,我仍然会遇到这个错误。请有人帮我学数学。PI。我完全迷路了。

  • 我想授予从Android Studio启用和禁用蓝牙的权限。我还假装使用蓝牙的其他功能作为设备列表,并连接到以前的pared设备等等。 由于starActivityForResult已被弃用,我很难用午餐来吃弹出式活动,该活动要求用户提供折扣。 这是我的货单 这是我的躁动 这是我的XML

  • 问题内容: 我正在尝试遵循Zed Shaw的《困难方法学习Python》指南。我需要在Powershell中使用python。我在中安装了Python 2.7.3 。每当我在Powershell中键入python时,都会出现一个错误,指出“ python”一词无法识别为cmdlet,函数,脚本文件或可操作程序的名称。我也输入了以下内容: 提供了建议的解决方案,但是在Powershell中输入pyt