使用Dropdown动态显示内容(与数据库连接)
Display content dynamically with Dropdown (with connection to DB)
我对这方面很陌生,我只是尝试用Javascript、PDO和PHP进行AJAX请求,以创建一个动态反应的下拉函数,从而显示新内容。。由于我在这里的知识非常有限,我通过结合从各种页面和视频中获得的代码片段创建了它。错误为:
Parse error: syntax error, unexpected 'endforeach' (T_ENDFOREACH) in /var/www/xxx/html/listing.php on line 22
这是我的listing.php页面,其中应该显示下拉列表和新内容:
<!DOCTYPE html>
<html>
<head>
<title>listing</title>
<meta charset="UTF-8">
<meta name="description" content="">
<meta name="author" content="">
<meta name="keywords" content="">
<link href=".css" type="text/css" rel="stylesheet">
<link href="favicon.ico" type="image/x-icon" rel="shortcut icon">
</head>
<body>
<select name="user" id="user-select">
<option value="">Choose a user</option>
<?php foreach ($subjects->fetchAll() as $user); ?>
<option value="<?php echo $user['subject_id']; ?>"><?php echo $user['subject']; ?></option>
<?php endforeach; ?>
</select>
<div id="user-profile"></div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script src="js/global.js"></script>
这是global.js文件:
$('#user-select').on('change', function() {
var self = $(this);
$.ajax({
url: 'https://www.xxx.de/partials/user.php',
type: 'GET',
data: { user: self.val() },
success: function(data){
$('#user-profile').html(data);
}
});
});
以及partials/user.php,它包含到数据库的连接:
<?php
$dsn = "xxx";
$user = "xxx";
$pw = "xxx";
try {
$pdo = new PDO($dsn, $user, $pw);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
}
if (isset($_GET['user'])) {
$userQuery = "
SELECT
subjects.subject_id,
subjects.subject,
FROM subjects
WHERE subjects.subject_id = :subject_id
";
$user = $pdo->prepare($userQuery);
$user->execute(['subject_id' => $_GET['user']]);
$selectedUser = $user->fetch(PDO::FETCH_ASSOC);
print_r($selectedUser);
}
?>
任何帮助都是感激的,我感谢任何提示!
愚蠢的错误。。我只是忘记了在listing.php页面上包含连接来填充foreach循环。->
在listing.php之前!DOCTYPE html开始:
<?php
$dsn = "xxx";
$user = "xxx";
$pw = "xxx";
try {
$pdo = new PDO($dsn, $user, $pw);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
}
$usersQuery = "SELECT fach_id, fach FROM faecher";
$users = $pdo->query($usersQuery);
?>
尝试替换;with:在php foreach语句中
<?php foreach ($subjects->fetchAll() as $user): ?>
相关文章:
- 如何检查monodb数据库连接
- 使用 node.js 设置 Microsoft Access 数据库连接
- 从另一个选择框并使用数据库连接填充选择框
- HTML网站中的数据库连接方式,应该在chrome和Firefox中支持
- Nodejs 实现数据库连接 (mysql) 的最佳方式
- 英特尔 XDK 将 mySQL 数据库连接到应用程序
- 使用节点单元编写带有数据库连接/驱动程序的单元测试
- 将标题标签与数据库连接并使其自动刷新,就像在Facebook标题中一样
- 如何为每个 Web 套接字仅使用一个数据库连接
- 在 AngularJS 中使用数据库 - 我应该在哪里编写数据库连接代码
- 如何在节点.js中关闭数据库连接
- 使用 JScript 在 global.asa 中创建数据库连接
- 如何捕获数据库连接状态或 ping 连接
- 如何在 Javascript 中编写数据库连接
- Ajax 调用返回“找不到类”错误,即使已定义数据库连接也是如此
- 导出 MONGO 数据库连接到模型.js文件
- 打开和关闭 IndexedDB 数据库连接的频率
- 最佳数据库连接数(node-mysql)
- 数据库连接在ajax调用中不起作用-laravel
- 使用Dropdown动态显示内容(与数据库连接)