Ajax成功:返回的数组始终为false

时间:2019-09-10 02:35:18

标签: php arrays ajax

通过mySQL表中的JSON(和php),我找到了与给定关键字匹配的所有数据集。然后,我想使用返回数组中的URL附加到HTML元素。

$.ajax({
        url:    'actions/del_and_find_pixa_keywords.php',
        type:   'POST',
        data:   {
            keyword: pixaKeyword.val()              
        },
        success: function(data){
            pixaSearchResults.empty();
            data.forEach(function(i,v){
                pixaSearchResults.append('<a href="'+v.preview_url+'" target="_blank"><img src="'+v.large_img_url+'" alt="'+v.keyword+'" class="fn_pixaImgResults cms_width100" data-large-url=""></a>');
            });


        },
        error: function(){
            alert("an error occurred");
        }
    });

这是php位:

$keyword = $_POST['keyword']??false;

if ($keyword){
    // return keywords and urls
    $results = find_matching_keywords($keyword);
    return($results);
}

SQL查询有效。如果我在上面的PHP中将它作为foreach循环回显,然后在ajax成功中进行console.log记录,那么我可以看到数组的内容。

使用上面的ajax和php代码,我在控制台中收到一条错误消息:

Uncaught TypeError: data.forEach is not a function

但是我需要像上面的$ .ajax代码中那样将数据作为数组才能遍历它。

0 个答案:

没有答案