获取Array作为AJAX的响应

时间:2016-07-24 18:27:56

标签: php jquery mysql arrays ajax

这个主题有很多问题,但我是初学者,不能一起回答。

我正在尝试使用表单通过ajax更新MySQL数据库 - 然后将更新的数据库作为要在主页面中使用的数组返回(不刷新页面)。

我成功完成了第一部分,但没有管理第二部分 - 取回阵列。

我的第一部分代码:

HTML:

$("#form").submit(function(){

            event.preventDefault();

            var form = new FormData();
            form.append("id", $('#id').val());
            form.append("src", $('#src').val());
            form.append("title_en", $('#title_en').val());
            form.append("title_he", $('#title_he').val());
            form.append("exhibition_en", $('#exhibition_en').val());
            form.append("exhibition_he", $('#exhibition_he').val());
            form.append("subjects_en", $('#subjects_en').val());
            form.append("subjects_he", $('#subjects_he').val());
            form.append("keywords_en", $('#keywords_en').val());
            form.append("keywords_he", $('#keywords_he').val());
            form.append("height", $('#height').val());
            form.append("width", $('#width').val());
            form.append("sold", $('#sold').val());
            var settings = {
                "async": true,
                "crossDomain": true,
                "url": "update.php",
                "method": "POST",
                "dataType": 'json',
                "processData": false,
                "contentType": false,
                "mimeType": "multipart/form-data",
                "data": form
            } 

            $.ajax(settings).success(function(data) { 

                });
            });

PHP:

<?php
    $servername = "localhost";
    $username = "root";
    $password = "";
    $dbname = "chana_goldberg";

    // Create connection
    $conn = new mysqli($servername, $username, $password, $dbname);
    $conn->set_charset("utf8");

    // Check connection
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    } 


    $id = $_POST['id'];    
    $src = $_POST['src'];
    $title_en = $_POST['title_en'];
    $title_he = $_POST['title_he'];
    $exhibition_en = $_POST['exhibition_en'];
    $exhibition_he = $_POST['exhibition_he'];
    $subjects_en = $_POST['subjects_en'];
    $subjects_he = $_POST['subjects_he'];
    $keywords_en = $_POST['keywords_en'];
    $keywords_he = $_POST['keywords_he'];
    $height = $_POST['height'];
    $width = $_POST['width'];
    $sold = $_POST['sold'];

    $sql = "UPDATE paintings_catalog SET title_en='$title_en', title_he='$title_he', exhibition_en='$exhibition_en', exhibition_he='$exhibition_he', subjects_en='$subjects_en', subjects_he='$subjects_he', keywords_en='$keywords_en', keywords_he='$keywords_he', height='$height', width='$width', sold='$sold' WHERE id='$id'";
    $conn->query($sql);?>

1 个答案:

答案 0 :(得分:0)

就像那样:

$sql = "SELECT * FROM paintings_catalog WHERE id=".$id;
$ret = [];
if($res = $conn->query($sql)) {
   $ret = $res->fetch_assoc();
}

echo json_encode($ret);