目次
PHP は Mysql データベースと組み合わせて、Mysql メッセージ ボード機能を実装します
ホームページ バックエンド開発 PHPチュートリアル PHP は Mysql データベースを組み合わせてメッセージ ボード機能を実装します。mysql メッセージ ボード_PHP チュートリアル

PHP は Mysql データベースを組み合わせてメッセージ ボード機能を実装します。mysql メッセージ ボード_PHP チュートリアル

Jun 20, 2018 am 09:23 AM
mysql mysqlデータベース php 伝言板


PHP は Mysql データベースと組み合わせて、Mysql メッセージ ボード機能を実装します

まずメッセージ ボードのレンダリングをお見せします:


最近、PHP とこんな基礎を使いたかった 掲示板の実装は基礎知識の整理でもあります。


掲示板とは何ですか?テキスト情報を記録および表示するために使用できるキャリア。


それでは本題に入り、この掲示板がどのように実装されたかについて話しましょう。


まず、ユーザーがメッセージを送信すると、関連するコンテンツがサーバーに保存され、読みたいときにすべてのメッセージがバックグラウンドで読み上げられ、最終的にブラウザーに表示され、ユーザーは見ることができます。メッセージ。


バックエンドには、データの読み取りと書き込みを容易にするツールが必要です。これらの作業を完了するために、mysql データベースを選択しました。

私は主に次の 3 つの php ファイルを作成しました:


conn.php データベースに接続します;

addmsg.php php はページからメッセージ関連のコンテンツを読み取り、それを保存します (Insert )Database;

listmsg.php データベースからメッセージの内容を読み取り、ページに表示します。

1. データベース テーブルの構造を確立する準備をします は、phpMyAdmin のテーブル構造です。以下のスクリーンショット:


テーブル作成構文

SQL CREATE TABLE 语法
CREATE TABLE 表名称
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
....
)
ログイン後にコピー

2.php は mysql データベースに接続し、データベースの 1 つを選択します 。私は以下の bbs データベース (ps の前に作成) を選択しました。使用するいくつかの PHP ライブラリ関数を紹介します。

①mysql_connect("localhost", "root", "")
ログイン後にコピー

php は mysql に接続します。パラメータは、mysql アドレス (localhost はローカル マシンを表します)、ユーザー名、パスワードです。


戻り値: 接続が失敗した場合は false を返し、接続を返します。識別子

②mysql_select_db($dbName, $conn);
ログイン後にコピー

mysql には多数のデータベースが存在する可能性があるため、次の操作ではデータベースの 1 つを選択する必要があります。


パラメータ: 1 つ目はデータベース名、2 つ目はリンク識別子です。ここでは、①に戻り値を入れることができます。つまり、①で mysql を使用することになります。


戻り値: 接続が失敗した場合は false、接続が成功した場合は true。

③mysql_query(query,connection)
ログイン後にコピー

パラメータ: クエリは、mysql に実行させたいステートメントを表します


connection オプション、SQL 接続識別子は上記と同じです


戻り値: mysql_query() は、SELECT、SHOW、EXPLAIN、またはDESCRIBE ステートメントの識別子。クエリが正しく実行されなかった場合は FALSE を返します。


他のタイプの SQL ステートメントの場合、mysql_query() は正常に実行された場合は TRUE を返し、エラーが発生した場合は FALSE を返します。


この戻り値の個人的な要約: この関数が実行に失敗した場合は false を返しますが、正常に実行された場合は、それが SELECT、SHOW、EXPLAIN、または DESCRIBE ステートメントであるかどうかによって異なります。リソース識別子が返され、他のステートメントは true を返します ;


ここまで言って、掲示板のコンテキストが出てきました

コードから始めましょう

conn.php

 <span style="font-family:Comic Sans MS;font-size:14px;"><?php 
include("head.php"); 
$dbName = "bbs"; 
$conn = @ mysql_connect("localhost", "root", "") or die("数据库链接错误"); 
$flag = mysql_select_db($dbName, $conn); 
mysql_query("set names &#39;GBK&#39;"); //使用GBK中文编码; 
function toHtmlcode($content) 
{ 
return $content = str_replace("\n","<br>",str_replace(" ", " ", $content)); 
} 
?></span>
ログイン後にコピー

toHtmlcode カスタム関数は、文字列 ( n) を入力するものです。 HTML では改行に置き換えます

、HTML ではスペースをスペースに置き換えます ( )
関数の 1 つは次のように紹介されています

文法

str_replace(find,replace,string,count)
ログイン後にコピー
参数描述
find必需。规定要查找的值。
replace必需。规定替换 find 中的值的值。
string必需。规定被搜索的字符串。
count可选。一个变量,对替换数进行计数。

addmsg.php

<span style="font-family:Comic Sans MS;font-size:14px;"><?php 
// 引用之前写好的连接数据库文件 
include("conn.php"); 
if(@$_POST[&#39;submit&#39;]){ 
$sql = "insert into message (id,user,title,content,lastdate)" . 
"values ( &#39;&#39;,&#39;$_POST[userName]&#39;,&#39;$_POST[title]&#39;,&#39;$_POST[content]&#39;,now())"; 
mysql_query($sql); 
echo "添加成功"; 
} 
?> 
<SCRIPT language=javascript> 
function CheckPost() 
{ 
if (myform.userName.value=="") 
{ 
alert("请填写用户名"); 
myform.user.focus(); 
return false; 
} 
if (myform.title.value.length<5) 
{ 
alert("标题不能少于5个字符"); 
myform.title.focus(); 
return false; 
} 
if (myform.content.value=="") 
{ 
alert("必须要填写留言内容"); 
myform.content.focus(); 
return false; 
} 
} 
</SCRIPT> 
<form action="addmsg.php" method="post" name = "myform" onsubmit="return CheckPost();"> 
用名:<input type="text" size="10" name="userName" /><br/> 
标题:<input type="text" name="title" /><br/> 
内容:<textarea name="content" cols="60" rows="9" ></textarea><br/> 
<input type="submit" name="submit" value="提交留言" /> 
</form> 
</span>
ログイン後にコピー

include 是引入conn.php,类似于c语言中include

$_POST 变量是一个数组,此变量用于收集来自 method="post" 的表单中的值,post发出的键值对存于此$_POST数组中$_POST['submit'] 取键submit的值,如果触发submit,也就是CheckPost返回为true时,会post值,显然$_POST['submit']不为空,非空即为真,那么就执行if里面的插入语句。使留言内容保存在mysql数据库中。

listmsg.php

<span style="font-family:Comic Sans MS;font-size:14px;"><?php 
include("conn.php"); 
?> 
<table width=500 border="0" align="center" cellpadding="5" cellspacing="1" bgcolor="#add3ef"> 
<?php 
$sql = "SELECT * FROM message order by lastdate desc"; 
$query = mysql_query($sql); 
while($row = mysql_fetch_array($query)){ 
?> 
<tr bgcolor="#eff3ff"> 
<td><b><big> 
标题:<?= $row[&#39;title&#39;]?></big><b/> <b><sub> 
用户:<?= $row[&#39;user&#39;]?></sub></b></td> 
</tr> 
<tr bgColor="#ffffff"> 
<td>内容:<?= toHtmlcode($row[&#39;content&#39;])?></td> 
</tr> 
<?php 
} 
?> 
</table> 
</span>
ログイン後にコピー

php与html代码混编看起来还是比较乱的。

php从mysql中获取留言内容,并把它显示在页面上,我这里显示在table里。主要代码就上面这些。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

MySQL:初心者向けのデータ管理の容易さ MySQL:初心者向けのデータ管理の容易さ Apr 09, 2025 am 12:07 AM

MySQLは、インストールが簡単で、強力で管理しやすいため、初心者に適しています。 1.さまざまなオペレーティングシステムに適した、単純なインストールと構成。 2。データベースとテーブルの作成、挿入、クエリ、更新、削除などの基本操作をサポートします。 3.参加オペレーションやサブクエリなどの高度な機能を提供します。 4.インデックス、クエリの最適化、テーブルパーティション化により、パフォーマンスを改善できます。 5。データのセキュリティと一貫性を確保するために、バックアップ、リカバリ、セキュリティ対策をサポートします。

NAVICATでデータベースパスワードを取得できますか? NAVICATでデータベースパスワードを取得できますか? Apr 08, 2025 pm 09:51 PM

NAVICAT自体はデータベースパスワードを保存せず、暗号化されたパスワードのみを取得できます。解決策:1。パスワードマネージャーを確認します。 2。NAVICATの「パスワードを記憶する」機能を確認します。 3.データベースパスワードをリセットします。 4.データベース管理者に連絡してください。

Navicatプレミアムの作成方法 Navicatプレミアムの作成方法 Apr 09, 2025 am 07:09 AM

NAVICATプレミアムを使用してデータベースを作成します。データベースサーバーに接続し、接続パラメーターを入力します。サーバーを右クリックして、[データベースの作成]を選択します。新しいデータベースの名前と指定された文字セットと照合を入力します。新しいデータベースに接続し、オブジェクトブラウザにテーブルを作成します。テーブルを右クリックして、データを挿入してデータを挿入します。

NAVICATでSQLを実行する方法 NAVICATでSQLを実行する方法 Apr 08, 2025 pm 11:42 PM

NAVICATでSQLを実行する手順:データベースに接続します。 SQLエディターウィンドウを作成します。 SQLクエリまたはスクリプトを書きます。 [実行]ボタンをクリックして、クエリまたはスクリプトを実行します。結果を表示します(クエリが実行された場合)。

NavicatでMySQLへの新しい接続を作成する方法 NavicatでMySQLへの新しい接続を作成する方法 Apr 09, 2025 am 07:21 AM

手順に従って、NAVICATで新しいMySQL接続を作成できます。アプリケーションを開き、新しい接続(CTRL N)を選択します。接続タイプとして「mysql」を選択します。ホスト名/IPアドレス、ポート、ユーザー名、およびパスワードを入力します。 (オプション)Advanced Optionsを構成します。接続を保存して、接続名を入力します。

NAVICATは、MySQL/Mariadb/PostgreSQLおよびその他のデータベースに接続できません NAVICATは、MySQL/Mariadb/PostgreSQLおよびその他のデータベースに接続できません Apr 08, 2025 pm 11:00 PM

NAVICATがデータベースとそのソリューションに接続できない一般的な理由:1。サーバーの実行ステータスを確認します。 2。接続情報を確認します。 3.ファイアウォール設定を調整します。 4.リモートアクセスを構成します。 5.ネットワークの問題のトラブルシューティング。 6.許可を確認します。 7.バージョンの互換性を確保します。 8。他の可能性のトラブルシューティング。

MySQL:簡単な学習のためのシンプルな概念 MySQL:簡単な学習のためのシンプルな概念 Apr 10, 2025 am 09:29 AM

MySQLは、オープンソースのリレーショナルデータベース管理システムです。 1)データベースとテーブルの作成:createdatabaseおよびcreateTableコマンドを使用します。 2)基本操作:挿入、更新、削除、選択。 3)高度な操作:参加、サブクエリ、トランザクション処理。 4)デバッグスキル:構文、データ型、およびアクセス許可を確認します。 5)最適化の提案:インデックスを使用し、選択*を避け、トランザクションを使用します。

NavicatのローカルMySQLに接続する方法 NavicatのローカルMySQLに接続する方法 Apr 09, 2025 am 07:45 AM

NAVICATを使用してローカルMYSQLデータベースに接続するには:接続を作成し、接続名、ホスト、ポート、ユーザー名、およびパスワードを設定します。接続をテストして、パラメーターが正しいことを確認します。接続を保存します。接続リストから新しい接続を選択します。接続するデータベースをダブルクリックします。

See all articles