ホームページ バックエンド開発 PHPチュートリアル PHP+MySQL で簡単なゲストブックを作成する_PHP チュートリアル

PHP+MySQL で簡単なゲストブックを作成する_PHP チュートリアル

Jul 21, 2016 pm 03:42 PM
php+mysql 主要 ページネーション 作る 関数 そして 返事 増加 見せる 比較する メッセージ 単純 ページ

メッセージ表示ページ: 前の例と比較して、ページングとメッセージ返信の機能が追加されています

メインコード:
install/index.php: プログラムインストールページ

コードをコピー コードは次のとおりです:

if($_GET["action"]!=1)
{
?>

<表の境界線="1">

MySQL 主机名:



MySQL用户名:



MySQL秘密コード:



データ库名:



留言本每页记录数:



管理员账号:



管理员密コード:



留言本标题:








}else{
@set_time_limit(1000);
$lockfile = "install.lock";
$host="ローカルホスト";
$user="ルート";
$パスワード="";
$database="ruizhi_メッセージボード";
$ページ番号=10;
$admin_name="管理者";
$admin_password="123456";
$boardname="RUIZHINET留言本";
if($_POST["ホスト"]!=""){
$host=$_POST["ホスト"];
}
if($_POST["ユーザー"]!=""){
$user=$_POST["ユーザー"];
}
if($_POST["パスワード"]!=""){
$password=$_POST["パスワード"];
}
if($_POST["データベース"]!=""){
$database=$_POST["データベース"];
}
if($_POST["pagenum"]!=""){
$pagenum=$_POST["pagenum"];
}
if($_POST["管理者名"]!=""){
$管理者名=$_POST["管理者名"];
}
if($_POST["admin_password"]!=""){
$admin_password=$_POST["admin_password"];
}
if($_POST["ボード名"]!=""){
$ボード名=$_POST["ボード名"];
}
if(file_exists($lockfile)){
exit("已经インストール过了,如果要重新インストール请先删除install/install.lock");
}
$conn=mysql_connect($host,$user,$password);
if($conn){
$sql_drop_database="存在する場合はデータベースを削除 `".$database."`";
$sql_create_database="データベースの作成`".$database."`";
$sql_create_table_messageboard="CREATE TABLE `messageboard` (
`id` int(11) NOT NULL auto_increment、
`author` varchar(15) NOT NULL、
`title` varchar(30) NOT NULL、
`smiles` varchar (30) NOT NULL、
`content` mediatext、
`photo` varchar(30) NOT NULL、
`addtime` int(11) デフォルト NULL、
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET= gbk AUTO_INCREMENT=1";
$sql_create_table_reply="CREATE TABLE `reply` (
`id` int(11) NOT NULL auto_increment、
`msgid` int(11) NOT NULL、
`content` mediatext、
`addtime` int(11) デフォルト NULL ,
主キー (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=gbk AUTO_INCREMENT=1";
if(mysql_query($sql_drop_database,$conn)){
if(mysql_query($sql_create_database,$conn)){
mysql_select_db($database,$conn);
if(mysql_query($sql_create_table_messageboard,$conn) && mysql_query($sql_create_table_reply,$conn)){
$config_file="../config.php";
$config_strings="$config_strings.="$boardname="".$boardname."";n";
$config_strings.="$host="".$host."";n";
$config_strings.="$user="".$user."";n";
$config_strings.="$password="".$password."";n";
$config_strings.="$database="".$database."";n";
$config_strings.="$pagenum="".$pagenum."";n";
$config_strings.="$admin_name="".$admin_name."";n";
$config_strings.="$admin_password="".$admin_password."";n";
$config_strings.="$conn=mysql_connect($host,$user,$password);n";
$config_strings.="mysql_select_db($database,$conn);n";
$config_strings.="?>";
if($fp=fopen($config_file,"wb")){
if(fwrite($fp,$config_strings)){
if($fp2 = fopen($lockfile, 'w'))
{
fwrite ($fp2,'1212');
fclose($fp2);
}
echo "インストール成功!配置文件:config.php,您可手工修正文件";
echo "n进入系统首页";
}else{
exit("文件写入失败");
}
fclose($fp);
}
}else{
exit(" CREATE TABLE を実行できません语句:".$sql_create_table);
}
}else{
exit(" CREATE DATABASE を実行できません语句:".$sql_create_database);
}
}else{
exit(" DROP DATABASE を実行できません语句:".$sql_drop_database);
}
}else{
exit("接続データベース库失败,请检查MySQL 主机名、用户名和密码");
}
}

生成されたconfig.php文件:
复制代码代码如下:

$boardname="RUIZHINET留言本";
$host="ローカルホスト";
$user="ルート";
$パスワード="";
$database="ruizhi_メッセージボード";
$pagenum="10";
$admin_name="管理者";
$admin_password="管理者";
$conn=mysql_connect($host,$user,$password);
mysql_select_db($database,$conn);
?>

index.php:程序显示页面
复制代码代码如下:

if(!$_GET["page"]){
$page=1;
}else{
$page=$_GET["page"]
}
$sql="SELECT ID FROM メッセージボード";
$result=mysql_query($sql,$conn);
$row_num=mysql_num_rows($result);
$page_count=ceil($row_num/$pagenum);
echo "現在 ".$row_num" があります. "メッセージ";
echo " ".$page_count."ページ表示";
echo " 現在のページは ".$page.";
?>
if ($row_num==0){
echo "まだメッセージがありません"
?>
$offset= ( $page-1)*$pagenum;
$sql2="ID DESC LIMIT による SELECT * FROM メッセージボードの順序
$result2=mysql_query($sql2,$conn); ($result2)){
$offset++;
echo "";
echo "".";
echobase64_decode($row[title])." - ".base64_decode($row[author])."月 d 日 ",$row[addtime])."] ";
if(isset($_SESSION["admin_name"]) && $_SESSION["admin_name"]!=""){
echo "< =del.php?id=".$row["id"].">削除| ";
echo "返信";
}
echo "";
echo "".base64_decode ($row ["コンテンツ"])."";
if($row["photo"]!="NONE")
{
echo "< td align= left>";
}
$sql3="SELECT * FROM Reply WHERE msgid=$row[id] ORDER BY id DESC";
$result3=mysql_query($sql3,$conn);
while($row3=mysql_fetch_array($result3)){
echo " align=left bgcolor=#99CCFF>返信: ".date("Y年m月d日",$row3[addtime]);
if(isset($_SESSION["admin_name"]) && $_SESSION[ "admin_name" ]!=""){
echo "削除"
}
echo " ";
echo "".base64_decode($row3[content])."";
}
}
?>
if($page_count>1){
$prev_page=$page+1;
if($page<=1){
echo "ページ | ";
}else{
echo "最初のページ ";
}
if($prev_page< ;1){
echo "前のページ| ";
}else{
echo "前のページ $page_count){
echo "次のページ| ";
}else{
echo " | "; }
if($page>=$page_count){
echo "最後のページ";
}else{
echo "
最後のページ< /a>";
}
}
?>

}
?>
if(isset($_SESSION["admin_name"]) && $ _SESSION["admin_name"]!=""){
?>

終了管理

}else{
?>

< /p>


保存.php: メッセージを保存します



コードをコピーします

コードは次のとおりです:


if(!$_POST["author"] || !$_POST["content"])
{
echo "n";
echo "メッセージの名前または内容を入力しませんでした。2 秒後にホームページに戻ってください。";
関数ランダム($length)
{
$hash = 'IMG-';
$chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz';
$max = strlen($chars) - 1; ) * 1000000; for( $i = 0; $ i {
$hash .= $chars[mt_rand(0, $max)]
}
return $hash
}
function fileext;ファイル名)
{
return substr( strrchr($filename, '.'), 1)
}
if($_FILES["upfile"]["name"]!=""){
$uploaddir="upfile /";
$type=array ("jpg","gif","bmp","jpeg","png");
if(!in_array(strto lower(fileext($_FILES['upfile']['name '])),$type) )
{
echo "n";
$text=implode(",", $type);
echo "次の種類のファイルのみをアップロードできます: ",$text,"
"
}
else
{
$filename=explode(") ,$_FILES['upfile']['name ']);
do
{
$filename[0]=random(10);
$uploadfile=$ Uploaddir.$randname;
} while(file_exists( $uploadfile));
if (move_uploaded_file($_FILES['upfile']['tmp_name'],$uploadfile)){
echo "画像が正常にアップロードされました"; =1;
}
else{
echo " 画像のアップロードに失敗しました。 ";
$imgflag=0;
}
}
}
$author=base64_encode($_POST["author"]);
$content=base64_encode(ereg_replace("rn","
",htmlspecialchars( $_POST["コンテンツ"])));
$smiles=base64_encode($_POST["スマイル"]);
if($_POST["タイトル"]){
$title=base64_encode($_POST["タイトル" ]);
}else{
$title=base64_encode("無題");
$addtime=time();
$photo=base64_encode($randname); else{
$photo="NONE";
}
//データを保存
$sql="メッセージボードに挿入(author,title,smiles,content,photo,addtime) VALUES('$author','$title' , '$smiles','$content','$photo',$addtime)";
mysql_query($sql,$conn);
echo "n";
echo "メッセージありがとうございます。2 秒後にホームページに戻ります";
?>
savereply.php: 返信を保存
if( $_SESSION ["admin_name"]) && $_SESSION["admin_name"]!="")
{
if(!$_POST["content"])
{
echo "n";
echo "返信内容が入力されていません。2 秒以内にホームページに戻ってください";
exit();
}else{
$ msgid=$_POST["msgid"] ;
$content=base64_encode(ereg_replace("rn","
",htmlspecialchars($_POST["content"])));
//データを保存
$sql= "INSERT INTO Reply(msgid,content,addtime) VALUES($msgid,'$content',$addtime)"
mysql_query($sql,$conn); meta http-equiv="refresh" content ="2;url=index.php">n";
echo "メッセージありがとうございます。2 秒後にホームページに戻ります";
}
}
? >






http://www.bkjia.com/PHPjc/320898.html

www.bkjia.com

本当

http://www.bkjia.com/PHPjc/320898.html

技術記事
メッセージ表示ページ: 前の例と比較して、ページングとメッセージ返信の機能が追加されています。 メイン コード: install/index.php: プログラムのインストール ページのコピー コードは次のとおりです。 ?php if($_GET["acti.. .

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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)

ddrescue を使用して Linux 上のデータを回復する ddrescue を使用して Linux 上のデータを回復する Mar 20, 2024 pm 01:37 PM

DDREASE は、ハード ドライブ、SSD、RAM ディスク、CD、DVD、USB ストレージ デバイスなどのファイル デバイスまたはブロック デバイスからデータを回復するためのツールです。あるブロック デバイスから別のブロック デバイスにデータをコピーし、破損したデータ ブロックを残して正常なデータ ブロックのみを移動します。 ddreasue は、回復操作中に干渉を必要としないため、完全に自動化された強力な回復ツールです。さらに、ddasue マップ ファイルのおかげでいつでも停止および再開できます。 DDREASE のその他の主要な機能は次のとおりです。 リカバリされたデータは上書きされませんが、反復リカバリの場合にギャップが埋められます。ただし、ツールに明示的に指示されている場合は切り詰めることができます。複数のファイルまたはブロックから単一のファイルにデータを復元します

vivox100sとx100の違い:性能比較と機能分析 vivox100sとx100の違い:性能比較と機能分析 Mar 23, 2024 pm 10:27 PM

vivox100s と x100 携帯電話はどちらも vivo の携帯電話製品ラインの代表的なモデルであり、それぞれ異なる時代における vivo のハイエンド技術レベルを代表するものであるため、2 つの携帯電話にはデザイン、性能、機能に一定の違いがあります。この記事では、消費者が自分に合った携帯電話をより適切に選択できるように、これら 2 つの携帯電話を性能比較と機能分析の観点から詳しく比較します。まずはvivox100sとx100の性能比較を見てみましょう。 vivox100s には最新の機能が搭載されています。

セルフメディアとは一体何でしょうか?その主な特徴と機能は何ですか? セルフメディアとは一体何でしょうか?その主な特徴と機能は何ですか? Mar 21, 2024 pm 08:21 PM

インターネットの急速な発展に伴い、セルフメディアという概念が人々の心に深く根付いてきました。では、セルフメディアとは一体何でしょうか?その主な特徴と機能は何ですか?次に、これらの問題を 1 つずつ検討していきます。 1. セルフメディアとは何ですか? We-media は、その名前が示すように、あなたがメディアであることを意味します。これは、個人またはチームがインターネット プラットフォームを通じてコン​​テンツを独自に作成、編集、公開、配布できる情報媒体を指します。新聞、テレビ、ラジオなどの従来のメディアとは異なり、セルフメディアはよりインタラクティブでパーソナライズされており、誰もが情報の制作者および発信者になることができます。 2. セルフメディアの主な特徴と機能は何ですか? 1. 敷居が低い: セルフメディアの台頭により、メディア業界への参入の敷居が低くなり、煩わしい機材や専門チームは必要なくなりました。

元のコメントは削除されましたが、返信はまだ残っていますか?私のコメントを削除した後も他の人は見ることができますか? 元のコメントは削除されましたが、返信はまだ残っていますか?私のコメントを削除した後も他の人は見ることができますか? Mar 23, 2024 pm 05:56 PM

ソーシャルメディアが情報で溢れる世界では、人々はプラットフォームに投稿するコンテンツや他の人との交流方法にますます注目を集めています。ある投稿にコメントを残した場合、元の投稿者がそのコメントを削除した場合、そのコメントは存続するかどうかが激しく議論されています。 1. 元のコメントは削除されましたが、返信はまだ残っていますか?まず、ソーシャル メディア プラットフォームはユーザー情報とインタラクションの処理方法において非常に柔軟であることを明確にする必要があります。元のコメントが削除されても、直接のつながりがないように見えても、投稿の下に返信が残ることがよくあります。これは、元のコメントが消えたとしても、後続の読者は返信を参照し、それらの返信に基づいて情報を推測できることを意味します。したがって、元のコメントを削除しても、やり取りの痕跡は完全に消去されません。

小紅書アカウント管理ソフトウェアの機能は何ですか?小紅書アカウントを操作するにはどうすればよいですか? 小紅書アカウント管理ソフトウェアの機能は何ですか?小紅書アカウントを操作するにはどうすればよいですか? Mar 21, 2024 pm 04:16 PM

小紅書が若者の間で人気になるにつれ、ますます多くの人がこのプラットフォームを使用して、自分の経験や人生の洞察のさまざまな側面を共有し始めています。複数の小紅書アカウントを効果的に管理する方法が重要な問題となっています。この記事では、Xiaohongshu アカウント管理ソフトウェアの機能のいくつかについて説明し、Xiaohongshu アカウントをより適切に管理する方法を探ります。ソーシャルメディアが成長するにつれて、多くの人が複数のソーシャルアカウントを管理する必要があることに気づきます。これは小紅書ユーザーにとっても課題です。小紅書アカウント管理ソフトウェアの中には、コンテンツの自動公開、スケジュールされた公開、データ分析、その他の機能など、ユーザーが複数のアカウントをより簡単に管理できるようにするものがあります。これらのツールを通じて、ユーザーはアカウントをより効率的に管理し、アカウントの露出と注目を高めることができます。さらに、Xiaohongshu アカウント管理ソフトウェアには、

PPTでフィルムの動き効果を作成する具体的な方法 PPTでフィルムの動き効果を作成する具体的な方法 Mar 26, 2024 pm 04:00 PM

1. PPT を起動し、新しい空の文書を作成し、すべてのテキスト ボックスを選択して削除します。 2. [図形の挿入] コマンドを実行し、ドキュメント内で四角形をドラッグし、図形を黒で塗りつぶします。 3. 長方形をドラッグして長くし、[図形の挿入] コマンドを実行して小さな正方形をドラッグし、塗りつぶしの色を白に設定します。 4. 小さな正方形をフィルムの両側に上下が均等になるように 1 つずつコピーして貼り付け、ctrl+a ですべて選択した後、右クリックして [グループ] を選択します。 5. [挿入-図] コマンドを実行し、ポップアップ ダイアログ ボックスで挿入する図を見つけ、クリックして開き、図のサイズと位置を調整します。 6. 手順 5 を繰り返して、残りの画像を挿入して設定し、フィルム画像を形成します。 7. フィルムを選択し、アニメーション追加コマンドを実行します。

TikTokコメントへの面白い返信文を書くにはどうすればいいですか?コメントに返信するメリットは何ですか? TikTokコメントへの面白い返信文を書くにはどうすればいいですか?コメントに返信するメリットは何ですか? Mar 21, 2024 pm 06:01 PM

このプラットフォームでは、興味深い短いビデオを見るだけでなく、興味深いコメントを閲覧することも多くのユーザーにとって楽しい経験となっています。 Tiktokの面白いコメント返信は笑いを誘うだけでなく共感を呼び、時にはコンテンツに華を添えます。 1.Douyinのコメントに対する面白い返信文を書くにはどうすればよいですか? 1. 時事問題のホットスポットを統合する: 時事問題のホットスポットはみんなの注目の的であり、それをコメントや返信に組み込むことで、すぐに他の人の興味を引くことができます。たとえば、Douyin で人気のダンス動画について、「これは私の国で流行中に流行した『ソーシャル シェイク』ですか? とてもエネルギッシュですね!」とコメントできます。このようなコメントはユーモラスで適切であり、人々に理解させることができます。心が微笑みます。誇張の使用は、ユーモアのある解説ではよく使われる手法です。オブジェクトや状況を適度に誇張することで、レビューをより興味深くし、レビューをより面白くすることができます。

Xianyu にメッセージを残す方法 Xianyu にメッセージを残してプライベートにチャットする方法 Xianyu にメッセージを残す方法 Xianyu にメッセージを残してプライベートにチャットする方法 Mar 23, 2024 am 09:10 AM

Xianyu APP はスーパー中古取引ソフトウェアです。誰もがここで商品を自由に選択したり、自分の商品を販売用に公開したりできます。問題ありません。すべてがここで実現できます。ここで使用する場合 Xianyu APP を使用する場合, 誰もがより多くの情報を入手し、商品の販売や購入をより効果的に行うために、メッセージを残してタイムリーにコミュニケーションする必要があります。比較的便利で、Xianyu にメッセージを残す方法がまだわからない人を対象としています。友達の場合, ここで具体的な Xianyu メッセージのチュートリアルをお届けしましたので、お役に立てれば幸いです。 Xianyu メッセージのチュートリアル: 1. まず、Xianyu を開きます。 2. 次に、インターフェースに入り、製品をクリックします。 3. 表示されるインターフェイスで、上にスライドしてクリックします。

See all articles