PHP 개발 소규모 포럼 튜...LOGIN

PHP 개발 소규모 포럼 튜토리얼 데이터베이스 구축

데이터베이스 생성

'mybbs'라는 데이터베이스를 생성합니다

코드는 다음과 같습니다

<?php
header("Content-type:text/html;charset=utf-8");    //设置编码
$servername = "localhost";
$username = "root";
$password = "root";
// 创建连接
$conn = mysqli_connect($servername, $username, $password);
mysqli_set_charset($conn,'utf8'); //设定字符集
// 检测连接
if (!$conn) {
    die("连接失败: " . mysqli_connect_error());
}
// 创建数据库
$sql = "CREATE DATABASE mybbs";
if (mysqli_query($conn, $sql)) {
    echo "数据库创建成功";
} else {
    echo "数据库创建失败: " . mysqli_error($conn);
}
mysqli_close($conn);
?>

그런 다음 포럼 섹션 테이블 'forums'를 생성합니다

이 테이블에는 우리가 게시한 내용이 저장됩니다. 포럼

필드INT65020050id포럼 이름포럼 소개포럼 테마 포럼 생성 시간

코드는 다음과 같습니다

<?php
header("Content-type:text/html;charset=utf-8");    //设置编码
$servername = "localhost";
$username = "root";
$password = "root";
$dbname = "mybbs";
// 创建连接
$conn = mysqli_connect($servername, $username, $password, $dbname);
mysqli_set_charset($conn,'utf8'); //设定字符集
// 检测连接
if (!$conn) {
    die("连接失败: " . mysqli_connect_error());
}
// 使用 sql 创建数据表
$sql = "CREATE TABLE forums (
 id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
 `forum_name` varchar(50) NOT NULL,
  `forum_description` varchar(200) NOT NULL,
  `subject` varchar(50) NOT NULL,
  `last_post_time` datetime NOT NULL
 );";
if (mysqli_query($conn, $sql)) {
    echo "数据表 forums 创建成功";
} else {
    echo "创建数据表错误: " . mysqli_error($conn);
}
mysqli_close($conn);
?>

사용자 테이블 "member" 테이블을 생성하여 사용자를 저장하지 않으면 포럼과 게시물을 게시할 수 없습니다.

필드 이름idforum_name
forum_description
varchar
varchar

varchar

datetime

필드 길이
필드 설명
<?php
header("Content-type:text/html;charset=utf-8");    //设置编码
$servername = "localhost";
$username = "root";
$password = "root";
$dbname = "mybbs";
// 创建连接
$conn = mysqli_connect($servername, $username, $password, $dbname);
mysqli_set_charset($conn,'utf8'); //设定字符集
// 检测连接
if (!$conn) {
    die("连接失败: " . mysqli_connect_error());
}
// 使用 sql 创建数据表
$sql = "CREATE TABLE member (
 id INT(11) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
 `username` varchar(50) NOT NULL,
  `password` varchar(50) NOT NULL,
  `email` varchar(50) NOT NULL,
  `log_time` datetime NOT NULL
);";
if (mysqli_query($conn, $sql)) {
    echo "数据表 member 创建成功";
} else {
    echo "创建数据表错误: " . mysqli_error($conn);
}
mysqli_close($conn);
?>
다음은 포스트 테이블'tiopic'를 생성합니다 author 작성자 게시된 게시물
필드 이름 id username
password email log_time
field typeINT
varchar
varchar
varchar
datetime
필드 길이 11 0 생성 코드는 다음과 같습니다
'tiopic' 저장 필드

title 게시물 제목 content 게시물 내용


last_post_time 게시물이 게시된 시간

reply_author 게시물에 응답한 사람 reply 게시물의 답글 내용

  • reply_time 게시물에 답글을 올리는 시간

  • 코드는 다음과 같습니다

    <?php
    header("Content-type:text/html;charset=utf-8");    //设置编码
    $servername = "localhost";
    $username = "root";
    $password = "root";
    $dbname = "mybbs";
    // 创建连接
    $conn = mysqli_connect($servername, $username, $password, $dbname);
    mysqli_set_charset($conn,'utf8'); //设定字符集
    // 检测连接
    if (!$conn) {
        die("连接失败: " . mysqli_connect_error());
    }
    // 使用 sql 创建数据表
    $sql = "CREATE TABLE tiopic (
     id INT(11) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
     `author` varchar(50) NOT NULL,
      `title` varchar(100) NOT NULL,
      `content` text NOT NULL,
      `last_post_time` datetime NOT NULL,
      `reply_author` varchar(50) DEFAULT NULL,
      `reply` text,
      `reply_time` datetime DEFAULT NULL
    );";
    if (mysqli_query($conn, $sql)) {
        echo "数据表 tiopic 创建成功";
    } else {
        echo "创建数据表错误: " . mysqli_error($conn);
    }
    mysqli_close($conn);
    ?>
  • 팁: 이 튜토리얼은 단순한 포럼 원리를 보여주기 때문에 게시된 내용은 다음과 같습니다. 게시물과 답변 게시물의 내용이 합쳐집니다. 진정한 완전한 포럼 답변을 위해서는 PHP 재귀를 사용해야 합니다. 예, 게시물에 답변할 때 새 내용이 이전 내용을 덮어쓰게 됩니다. 학습자가 이 과정을 마친 후 더욱 완전한 포럼을 만들 수 있기를 바랍니다

  • 다음 섹션
<?php header("Content-type:text/html;charset=utf-8"); //设置编码 $servername = "localhost"; $username = "root"; $password = "root"; // 创建连接 $conn = mysqli_connect($servername, $username, $password); mysqli_set_charset($conn,'utf8'); //设定字符集 // 检测连接 if (!$conn) { die("连接失败: " . mysqli_connect_error()); } // 创建数据库 $sql = "CREATE DATABASE mybbs"; if (mysqli_query($conn, $sql)) { echo "数据库创建成功"; } else { echo "数据库创建失败: " . mysqli_error($conn); } mysqli_close($conn); ?>
코스웨어