首页 > 解决方案 > 在不附加的js文件中添加两个ajax

问题描述

我对这段代码有这个问题我希望它附加到 id 但它似乎不起作用请我需要帮助

function getUrlParam(name) {
var results = new RegExp('[\\?&]' + name + '=([^&#]*)').exec(window.location.href);
return (results && results[1]) || 'error';
}

var id = getUrlParam('user');

$(document).ready(function(){
  var url = new URL(window.location.href);
  var c = url.searchParams.get("user");
  var loop_v;
  var row_v;
  var user_id = id;
   $.ajax({  
        url:"activity-post.php",  
        type: 'post', 
        data:{user:user_id},  
        dataType: 'json',  
        success:function(data)
        {  
            for (var i = 0; i < data.length; i++) {
                $('#user_videos').append('<video class="video" playsinline controls><source src="'+data[i]+'" type="video/mp4" /></video>');
            }
        }
    })
         $.ajax({  
            url:"activity-post.php",  
            type: 'post', 
            data:{user_files:user_id},  
            dataType: 'json',  
            success:function(response)
            {  
                alert(response.length);
                for (var i = 0; i < response.length; i++) {
                    $('#user_media_mob').append('<div><img src="'response[i]'" class="img-fluid" alt="Responsive image"></div>');
                }
            }
        })
   })

但是代码似乎不起作用但是如果我删除第二个 ajax 它工作正常但是如果我添加第二个 ajax 到 ajax 停止工作

这是我的 php 代码

session_start();
require('php-includes/connect.php');
require('php-includes/functions.php');
$user_img = array();
$user_data = array();
if (isset($_POST['user'])) {
  if ($_POST['user'] == 'error') {
    $user_id = $_SESSION['user_id'];
  }else{
    $user_id = mysqli_real_escape_string($con, test_input($_POST['user']));
 }
    $query = mysqli_query($con,"select * from post_media where user_id='$user_id' AND media_type='vid'");
        if(mysqli_num_rows($query)>0){
            $row_count = mysqli_num_rows($query);
        $remain = $row_count%3;
            while($row = $query->fetch_assoc()) {
                if ($row["media_type"] == 'vid') {
                    array_push($user_img, $row["media_url"]);
                }
            }
        }
        echo json_encode($user_img);
  }

  if (isset($_POST['user_files'])) {
     if ($_POST['user_files'] == 'error') {
         $get_user_id = $_SESSION['user_id'];
     }else{
         $get_user_id = mysqli_real_escape_string($con, test_input($_POST['user_files']));
     }
     $query = mysqli_query($con,"select * from post_media where user_id='$get_user_id' AND media_type='img' OR media_type='doc'");
      if(mysqli_num_rows($query)>0){
        $row_count = mysqli_num_rows($query);
        $remain = $row_count%3;
            while($row = $query->fetch_assoc()) {
                array_push($user_data, $row["media_url"]);
            }
        }
        echo json_encode($user_data);

   }

它旨在附加给定 id 中的值,但根本没有响应

标签: phpjqueryajax

解决方案


您的第二个 ajax 块包含语法错误(它缺少+的左侧和右侧response[i]):

改变:

$('#user_media_mob').append('<div><img src="'response[i]'" class="img-fluid" alt="Responsive image"></div>');

到:

$('#user_media_mob').append('<div><img src="'+response[i]+'" class="img-fluid" alt="Responsive image"></div>');

推荐阅读