写出数据库连接文件代码link.php
时间: 2024-09-25 09:11:12 浏览: 46
在PHP中创建一个用于管理数据库连接的基本链接文件link.php,通常会使用mysqli或PDO扩展来操作MySQL数据库。这里是一个简单的例子,假设我们使用mysqli:
```php
<?php
// 数据库配置信息
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
} else {
echo "连接成功";
}
// 关闭连接时使用
function close_connection() {
global $conn;
if (!empty($conn)) {
$conn->close();
}
}
// 示例函数可以调用关闭连接
close_connection();
?>
相关问题
使用layui写一个查询姓名的功能,要求连接数据库
好的,以下是使用layui和php连接数据库并实现查询姓名的示例代码:
1. HTML代码
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>查询姓名</title>
<link rel="stylesheet" href="layui/css/layui.css">
</head>
<body>
<div class="layui-container">
<div class="layui-row">
<div class="layui-col-md-offset3 layui-col-md6">
<div class="layui-card">
<div class="layui-card-header">查询姓名</div>
<div class="layui-card-body">
<form class="layui-form" action="">
<div class="layui-form-item">
<label class="layui-form-label">姓名</label>
<div class="layui-input-block">
<input type="text" name="name" placeholder="请输入姓名" autocomplete="off"
class="layui-input">
</div>
</div>
<div class="layui-form-item">
<div class="layui-input-block">
<button class="layui-btn" lay-submit lay-filter="search">查询</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<script src="layui/layui.js"></script>
<script>
layui.use(['form', 'layer'], function () {
var form = layui.form;
var layer = layui.layer;
//监听表单提交
form.on('submit(search)', function (data) {
//发送ajax请求
$.ajax({
url: "search.php",//请求地址
type: "POST",//请求方式
data: data.field,//提交的数据
success: function (res) {
//弹出查询结果
layer.alert(res, {icon: 1});
}
});
return false;//阻止表单跳转
});
});
</script>
</body>
</html>
```
2. PHP代码(search.php)
```php
<?php
//连接数据库
$link = mysqli_connect('localhost', 'root', '123456', 'test');
if (!$link) {
die('连接失败: ' . mysqli_connect_error());
}
//接收表单提交的数据
$name = $_POST['name'];
//查询数据
$sql = "SELECT * FROM user WHERE name = '$name'";
$result = mysqli_query($link, $sql);
if (!$result) {
die('查询失败: ' . mysqli_error($link));
}
//处理查询结果
if (mysqli_num_rows($result) > 0) {
$row = mysqli_fetch_assoc($result);
$output = '姓名:' . $row['name'] . '<br>年龄:' . $row['age'] . '<br>性别:' . $row['gender'];
} else {
$output = '未查询到相关信息!';
}
//关闭数据库连接
mysqli_close($link);
//输出查询结果
echo $output;
```
注意:在实际使用时,需要根据实际情况修改连接数据库的参数和查询语句。
用PHP js html写一个web在线聊天程序有账号系统并说明每个文件的使用方式且给出源代码
好的,下面是用 PHP、JS 和 HTML 编写的一个基本的 Web 在线聊天程序,包含账号系统。这个程序由以下几个文件组成:
1. index.php:这是程序的首页,包含登录和注册页面。当用户访问这个页面时,如果已经登录,则跳转到 chat.php 页面;如果没有登录,则显示登录和注册表单。
```php
<?php
session_start();
if(isset($_SESSION['user_id'])){ // 如果已经登录,则跳转到聊天页面
header("Location: chat.php");
exit;
}
require 'config.php'; // 数据库配置文件
$message = '';
// 处理注册表单提交
if(!empty($_POST['register'])){
$username = trim($_POST['username']);
$password = trim($_POST['password']);
// 验证表单输入是否合法
if(empty($username) || empty($password)){
$message = '用户名和密码不能为空!';
} else {
// 检查用户名是否已经被注册
$query = $pdo->prepare("SELECT * FROM users WHERE username = ?");
$query->execute([$username]);
$user = $query->fetch();
if($user){
$message = '用户名已经被注册,请选择其他用户名!';
} else {
// 将用户信息插入到数据库中
$password_hash = password_hash($password, PASSWORD_DEFAULT);
$query = $pdo->prepare("INSERT INTO users (username, password) VALUES (?, ?)");
$query->execute([$username, $password_hash]);
$message = '注册成功!请登录。';
}
}
}
// 处理登录表单提交
if(!empty($_POST['login'])){
$username = trim($_POST['username']);
$password = trim($_POST['password']);
// 验证表单输入是否合法
if(empty($username) || empty($password)){
$message = '用户名和密码不能为空!';
} else {
// 检查用户名和密码是否匹配
$query = $pdo->prepare("SELECT * FROM users WHERE username = ?");
$query->execute([$username]);
$user = $query->fetch();
if($user && password_verify($password, $user['password'])){
// 登录成功,将用户信息存储到 session 中
$_SESSION['user_id'] = $user['id'];
$_SESSION['username'] = $user['username'];
header("Location: chat.php");
exit;
} else {
$message = '用户名或密码错误!';
}
}
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>在线聊天室 - 登录/注册</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div class="container">
<h1>在线聊天室</h1>
<h2>登录/注册</h2>
<div class="message"><?php echo $message; ?></div>
<div class="form-container">
<form method="post">
<h3>登录</h3>
<input type="text" name="username" placeholder="用户名" required>
<input type="password" name="password" placeholder="密码" required>
<button type="submit" name="login">登录</button>
</form>
<form method="post">
<h3>注册</h3>
<input type="text" name="username" placeholder="用户名" required>
<input type="password" name="password" placeholder="密码" required>
<button type="submit" name="register">注册</button>
</form>
</div>
</div>
</body>
</html>
```
2. chat.php:这是程序的聊天页面。当用户登录后,会跳转到这个页面。这个页面包含一个聊天窗口和一个输入框。当用户输入聊天内容时,会通过 Ajax 发送请求到 send.php 文件,并将聊天内容存储到数据库中。同时,这个页面会每隔一段时间通过 Ajax 请求获取最新的聊天记录,并将其显示在聊天窗口中。
```php
<?php
session_start();
if(!isset($_SESSION['user_id'])){ // 如果没有登录,则跳转到登录页面
header("Location: index.php");
exit;
}
require 'config.php'; // 数据库配置文件
$user_id = $_SESSION['user_id'];
$username = $_SESSION['username'];
// 处理发送聊天信息的逻辑
if(!empty($_POST['message'])){
$message = trim($_POST['message']);
// 将聊天信息存储到数据库中
$query = $pdo->prepare("INSERT INTO messages (user_id, username, message) VALUES (?, ?, ?)");
$query->execute([$user_id, $username, $message]);
exit;
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>在线聊天室 - <?php echo $username; ?></title>
<link rel="stylesheet" type="text/css" href="style.css">
<script src="jquery.min.js"></script>
<script>
$(function(){
// 发送聊天信息
$('#message-form').on('submit', function(e){
e.preventDefault();
var message = $('#message').val();
if(message){
$.ajax({
url: 'send.php',
method: 'post',
data: {message: message},
success: function(){
$('#message').val('');
}
});
}
});
// 获取最新的聊天记录
function getMessages(){
$.ajax({
url: 'messages.php',
success: function(data){
$('#messages').html(data);
}
});
}
setInterval(getMessages, 1000); // 每隔一秒钟获取一次最新的聊天记录
});
</script>
</head>
<body>
<div class="container">
<h1>在线聊天室</h1>
<h2><?php echo $username; ?></h2>
<div class="chat-container">
<div id="messages"></div>
<form id="message-form">
<input type="text" id="message" placeholder="请输入聊天内容">
<button type="submit">发送</button>
</form>
</div>
<a href="logout.php" class="logout">退出登录</a>
</div>
</body>
</html>
```
3. send.php:这个文件负责将用户发送的聊天内容存储到数据库中。当用户发送聊天内容时,会通过 Ajax 发送请求到这个文件。
```php
<?php
require 'config.php'; // 数据库配置文件
session_start();
if(isset($_SESSION['user_id'])){
$user_id = $_SESSION['user_id'];
$username = $_SESSION['username'];
$message = trim($_POST['message']);
// 将聊天信息存储到数据库中
$query = $pdo->prepare("INSERT INTO messages (user_id, username, message) VALUES (?, ?, ?)");
$query->execute([$user_id, $username, $message]);
}
```
4. messages.php:这个文件负责返回最新的聊天记录。当 chat.php 页面每隔一段时间通过 Ajax 请求这个文件时,会返回最新的聊天记录并将其显示在聊天窗口中。
```php
<?php
require 'config.php'; // 数据库配置文件
$query = $pdo->prepare("SELECT * FROM messages ORDER BY id DESC LIMIT 10"); // 获取最新的10条聊天记录
$query->execute();
$messages = $query->fetchAll(PDO::FETCH_ASSOC);
foreach($messages as $message){
echo '<div class="message">';
echo '<span class="username">' . $message['username'] . ':</span>';
echo '<span class="text">' . $message['message'] . '</span>';
echo '</div>';
}
```
5. logout.php:这个文件负责处理用户退出登录的逻辑。当用户点击退出登录按钮时,会将 session 中的用户信息清空,并跳转回 index.php 页面。
```php
<?php
session_start();
session_destroy();
header("Location: index.php");
exit;
```
6. config.php:这个文件包含数据库的连接信息。
```php
<?php
$host = 'localhost';
$dbname = 'chat';
$username = 'root';
$password = '';
$pdo = new PDO("mysql:host=$host;dbname=$dbname", $username, $password);
```
以上就是这个 Web 在线聊天程序的基本文件和使用方式。需要注意的是,这个程序还有许多细节需要完善,例如输入验证、安全性等方面,需要根据实际情况进行改进。
阅读全文