> 백엔드 개발 > PHP 튜토리얼 > PHP는 간단한 게시판 기능을 구현합니다(소스코드 첨부)

PHP는 간단한 게시판 기능을 구현합니다(소스코드 첨부)

烟雨青岚
풀어 주다: 2023-04-08 19:58:01
앞으로
10798명이 탐색했습니다.

PHP는 간단한 게시판 기능을 구현합니다(소스코드 첨부)

php에서는 간단한 게시판 기능을 구현했습니다.

1. 원리

쉽게 말하면 데이터베이스를 생성하고 데이터를 추가하여 프론트엔드에 표시하는 것입니다. 내 프로그램은 단순히 메시지를 남긴 다음 표시하는 것입니다.

먼저 메시지의 첫 페이지를 작성하고 작성자, 제목, 내용을 작성하세요.

2. 인터페이스 :

PHP는 간단한 게시판 기능을 구현합니다(소스코드 첨부)

3. 메시지 표시 인터페이스 :

PHP는 간단한 게시판 기능을 구현합니다(소스코드 첨부)

4. 메시지 추가 페이지

rreee

( 2) 메시지의 백그라운드 처리, 작성자, 제목 및 내용을 구축된 데이터베이스에 저장

<!DOCTYPE HTML>
    <HTML>
<Head>
    <meta  http-equiv="CONTENT-TYPE" ; content="text/html"  ; charset="UTF-8">
    <title>留言</title>
    <style type="text/css">
     .message{
         margin-top:0px;
     }
     h1{
         margin-top:200px;
     }
    </style>
</Head>
<Body>
   <h1 align="center">留言板</h1>
   <div class="message">
       <form name="addform" id="addform" method="post" action="message_handle.php">
           <table type="text" align="center" border="1px,solid">
               <input type="hidden" id="id" name="id" />
            <tr>
               <td>标题</td>
               <td><input type="text" name="title" id="title"/></td>
            </tr>
            <tr>
                <td>作者</td>
                <td><input type="text" name="author" id="author"/> </td>
            </tr>
            <tr>
                <td>内容</td>
                <td><textarea name="message" id="message" cols="60" role="15"></textarea></td>
            </tr>
            <tr>
                <td><input type="submit" name="sumbit"/></td>
                <td><input type="reset" name="reset"/></td>
            </tr>
           </table>
       </form>
   </div>
</Body>
</HTML>
로그인 후 복사

(3) 다음은 메시지를 표시하는 페이지 코드입니다

<?php
header("CONTENT-TYPE:text/html;charset=UTF-8");
define("HOST","127.0.0.1");
define("USERNAME","root");
define("PASSWORD","");
if($con=new mysqli(HOST,USERNAME,PASSWORD,"test")){
    echo $con->error;
}
if($con->select_db("messageboard")){
    echo $con->error;
}
if($con->query("SET NAMES utf8")){
    echo $con->error;
}
$id=$_POST["id"];
$title=$_POST["title"];
$author=$_POST["author"];
$message=$_POST["message"];
$time=date(&#39;y-m-d h:m:s&#39;);
$sql="insert into messageboard(id,title,author,message,dateline) values(&#39;$id&#39;,&#39;$title&#39;,&#39;$author&#39;,&#39;$message&#39;,&#39;$time&#39;)";
if($str=$con->query($sql)){
    echo "<script>alert(&#39;留言成功&#39;);window.location.href=&#39;show_message.php&#39;</script>";
}
else {
    echo "<script>alert(&#39;留言失败&#39;);window.location.href=&#39;messageboard.php&#39;</script>";
}
?>
로그인 후 복사

5. 처음에는 표시 페이지에 데이터가 표시되지 않았습니다. 원인을 오랫동안 검색한 결과 SQL에서 쿼리 메서드가 잘못 작성된 것으로 나타났습니다.

<?php
header("CONTENT-TYPE:text/html;charset=UTF-8");
define("HOST","127.0.0.1");
define("USERNAME","root");
define("PASSWORD","");
if($con=new mysqli(HOST,USERNAME,PASSWORD,"test")){
    echo $con->error;
}
if($con->select_db("messageboard")){
    echo $con->error;
}
if($con->query("SET NAMES utf8")){
    echo $con->error;
}
$sql="select * from messageboard ORDER BY dateline DESC ";
$str=$con->query($sql);
if($str && mysqli_num_rows($str)){
    while($row= mysqli_fetch_assoc($str)){
        $data[]=$row;
    }
}
?>
<!DOCTYPE HTML>
<HTML>
<Head>
    <meta  http-equiv="CONTENT-TYPE" ; content="text/html"  ; charset="UTF-8">
    <title>留言板</title>
    <style type="text/css">
    </style>
</Head>
<Body>
<div>
    <?php
    if(empty($data)){
        echo "当前没有留言";
    }
    else{
    foreach($data as $value) {
    ?>
    <table cellpadding="2" cellspacing="8" align="center" border="1px,solid">
        <tr>
            <td>标题</td>
            <td><?php echo $value[&#39;title&#39;]; ?></td>
        </tr>
        <tr>
            <td>作者</td>
            <td><?php echo $value[&#39;author&#39;]; ?></td>
        </tr>
        <tr>
            <td>内容</td>
            <td><?php echo $value[&#39;message&#39;]; ?></td>
        </tr>
        <tr>
            <td><?php echo $value[&#39;dateline&#39;];;?></td>
        </tr>
    </table>
</div>
<?php
 }
}
?>
</Body>
</HTML>
로그인 후 복사

조건이 있어야 할 위치를 사용해야 합니다. 질문해 보세요. 예:

select * from message where dateline desc;
로그인 후 복사
내 프로그램은 이전 페이지에서 여기에 데이터를 전송하지 않기 때문에 모든 데이터를 시간별로 정렬하고 나열하려면 다음 방법만 사용할 수 있습니다.
select * from message where dateline=$date;
로그인 후 복사
읽어주셔서 감사합니다. 위 코드에 부족한 점이 있으면 지적해주세요.

이 기사는 https://blog.csdn.net/jeak2015/article/details/53440522

추천 튜토리얼: "

PHP Tutorial

"

에서 복제되었습니다.

위 내용은 PHP는 간단한 게시판 기능을 구현합니다(소스코드 첨부)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:csdn.net
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿