使用 XAMPP 通过 jQuery 内部服务器错误 500 的 Ajax POST

我正在尝试构建一个简单的登录页面,该页面利用 jQuery Ajax 使用数据库和表,并在本地开发环境中保存了用户名和密码:Mac 上的 XAMPP。

我承认我对 Ajax 有点生疏,也许这是最大的问题,所以请善待: 每次我点击提交 Ajax 请求时,我都会在 Chrome 的控制台中收到一个 jquery-3.6.0.min.js:2 POST http://localhost:8080/checkUser.php 500 (Internal Server Error)checkUser.php 与 HTML 表单包含在同一文件夹中。

我已经通过 php 测试了我与数据库的连接,所以我觉得问题出在 javascript 中,由于某种原因无法连接到 Ajax URL

感谢您提供的任何帮助。对于这段代码的长度,我深表歉意。我将发布我的代码:

基本 HTML 表单

<div class="container">
<div id="div_login">
  <h1>Login</h1>
  <div id="message"></div>
  <div>
    <input type="text" class="textbox" id="txt_uname" name="txt_uname" placeholder="username">
  </div>
  <div>
    <input type="password" class="textbox" id="txt_pwd" name="txt_pwd" placeholder="Password">
  </div>
  <div>
    <input type="button" value="Submit" name="but_submit" id="but_submit">
  </div>
</div>

我的 jQuery Ajax 调用

$(document).ready(function() {
  $("#but_submit").click(function() {
    var username = $("#txt_uname").val().trim();
    var password = $("#txt_pwd").val().trim();
    if (username != "" && password != "") {
      $.ajax({
        url: 'checkUser.php',type: 'post',data: {
          username: username,password: password
        },success: function(response) {
          var msg = "";
          if (response == 1) {
            window.location = "home.php";
          } else {
            msg = "Invalid username and password!";
          }
          $("#message").html(msg);
        }
      });
    }
  });
});

我的checkUser.php

<?php
session_start();
$host = "localhost";
$user = "root";
$password = "";
$dbname = "users";

$con = mysqli_connect($host,$user,$password,$dbname);
if (!$con) {
    die("Connection failed: " . mysqli_connect_error());
}

$uname = mysqli_real_escape_string($con,$_POST['username']);
$password = mysqli_real_escape_string($con,$_POST['password']);

if ($uname != "" && $password != "") {
    $sql_query = "select count(*) as cntUser from users where username='".$uname."' and password='".$password."'";
    $result = mysqli_query($con,$sql_query);
    $row = mysqli_fetch_array($result);

    $count = $row['cntUser'];

    if ($count > 0) {
        $_SESSION['uname'] = $uname;
        echo 1;
    } else {
        echo 0;
    }
}

Chrome 引发内部服务器错误 500

使用 XAMPP 通过 jQuery 内部服务器错误 500 的 Ajax POST

henryjiangyun 回答:使用 XAMPP 通过 jQuery 内部服务器错误 500 的 Ajax POST

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/1098.html

大家都在问