嗨,如果我问一个简单的问题,我是JS和道歉的新手。关于该主题的讨论似乎很多,但是我仍然无法理解所提供的解决方案。
我想确定MySQL数据库中的记录数。该数据库是通过php连接的(我已确认连接有效,并返回了正确的结果)。我想在js中返回此变量。我的php是(connect.php):
<?php
// connect to database
$conn = mysqli_connect('localhost', 'user_name', 'password', 'dbtable');
// check connection
if(!$conn){
echo 'Connection error: ' . mysqli_connect_error();
}
$sql="select count('1') from pdfdata";
$result=mysqli_query($conn,$sql);
$row=mysqli_fetch_array($result);
echo json_encode($row[0]);
?>
我的js(index.html)是:
<!DOCTYPE <!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Page Title</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<script type="text/javascript" src="//code.jquery.com/jquery-2.1.0.min.js"></script>
</head>
<body>
<script language="JavaScript">
$(document).ready(function(){
$.ajax({
url: "connect.php",
method: "GET",
success: the_function,
});
function the_function(response){
console.log(response);
}
});
// have either 'response' or 'the_function' available here (outside of the function)
</script>
</body>
</html>
我希望'the_function'的结果在函数外部可用。它将按原样正确写入函数内部的控制台,但是如果我在函数上方将“ response”作为变量创建,然后将其写入函数下面的控制台,则结果为“未定义”。
我确定我确实缺少一些基础;感谢您的协助。