백엔드 개발 PHP 튜토리얼 PHP+MySQL 制作简单的留言本_PHP教程

PHP+MySQL 制作简单的留言本_PHP教程

Jul 21, 2016 pm 03:42 PM
php+mysql 기본 쪽수 매기기 만들다 기능 그리고 회신하다 증가하다 보여주다 비교하다 메시지 ~의 단순한 페이지

 

留言显示页面:比上一个例子增加了分页和留言回复的功能

主要代码:
install/index.php:程序安装页面

复制代码 代码如下:

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






































MySQL主机名:
MySQL用户名:
MySQL密码:
数据库名称:
留言本每页记录数:
管理员账号:
管理员密码:
留言本标题:


}else{
@set_time_limit(1000);
$lockfile = "install.lock";
$host="localhost";
$user="root";
$password="";
$database="ruizhi_messageboard";
$pagenum=10;
$admin_name="admin";
$admin_password="123456";
$boardname="RUIZHINET留言本";
if($_POST["host"]!=""){
$host=$_POST["host"];
}
if($_POST["user"]!=""){
$user=$_POST["user"];
}
if($_POST["password"]!=""){
$password=$_POST["password"];
}
if($_POST["database"]!=""){
$database=$_POST["database"];
}
if($_POST["pagenum"]!=""){
$pagenum=$_POST["pagenum"];
}
if($_POST["admin_name"]!=""){
$admin_name=$_POST["admin_name"];
}
if($_POST["admin_password"]!=""){
$admin_password=$_POST["admin_password"];
}
if($_POST["boardname"]!=""){
$boardname=$_POST["boardname"];
}
if(file_exists($lockfile)){
exit("已经安装过了,如果要重新安装请先删除install/install.lock");
}
$conn=mysql_connect($host,$user,$password);
if($conn){
$sql_drop_database="DROP DATABASE IF EXISTS `".$database."`";
$sql_create_database="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` mediumtext,
`photo` varchar(30) NOT NULL,
`addtime` int(11) default 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` mediumtext,
`addtime` int(11) default NULL,
PRIMARY KEY (`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="localhost";
$user="root";
$password="";
$database="ruizhi_messageboard";
$pagenum="10";
$admin_name="admin";
$admin_password="admin";
$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 messageboard";
$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 "暂时没有留言";
}else{
?>


$offset=($page-1)*$pagenum;
$sql2="SELECT * FROM messageboard ORDER BY id DESC LIMIT $offset,$pagenum";
$result2=mysql_query($sql2,$conn);
while($row=mysql_fetch_array($result2)){
$offset++;
echo "";
echo "";
echo "";
if($row["photo"]!="NONE")
{
echo "";
}
$sql3="SELECT * FROM reply WHERE msgid=$row[id] ORDER BY id DESC";
$result3=mysql_query($sql3,$conn);
while($row3=mysql_fetch_array($result3)){
echo "";
echo "";
}
}
?>
if($page_count>1){
$prev_page=$page-1;
$next_page=$page+1;
if($pageecho "第一页 | ";
}else{
echo "第一页 | ";
}
if($prev_pageecho "上一页 | ";
}else{
echo "上一页 | ";
}
if($next_page>$page_count){
echo "下一页 | ";
}else{
echo "下一页 | ";
}
if($page>=$page_count){
echo "最后一页";
}else{
echo "最后一页";
}
}
?>
";
echo $offset.".PHP+MySQL 制作简单的留言本_PHP教程";
echo base64_decode($row[title])." - ".base64_decode($row[author])." [".date("Y年m月d日",$row[addtime])."] ";
if(isset($_SESSION["admin_name"]) && $_SESSION["admin_name"]!=""){
echo "删除 | ";
echo "回复";
}
echo "
".base64_decode($row["content"])."
PHP+MySQL 制作简单的留言本_PHP教程
回复:".date("Y年m月d日",$row3[addtime]);
if(isset($_SESSION["admin_name"]) && $_SESSION["admin_name"]!=""){
echo "删除";
}
echo "
".base64_decode($row3[content])."

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

退出管理


}else{
?>

登陆管理


}
?>

saveadd.php:保存留言
复制代码 代码如下:

if(!$_POST["author"] || !$_POST["content"])
{
echo "\n";
echo "你没有填写留言姓名或内容,2秒钟返回首页";
exit();
}else{
$imgflag=0;
function random($length)
{
$hash = 'IMG-';
$chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz';
$max = strlen($chars) - 1;
echo (double)microtime() * 1000000;
for($i = 0; $i {
$hash .= $chars[mt_rand(0, $max)];
}
return $hash;
}
function fileext($filename)
{
return substr(strrchr($filename, '.'), 1);
}
if($_FILES["upfile"]["name"]!=""){
$uploaddir="upfile/";
$type=array("jpg","gif","bmp","jpeg","png");
if(!in_array(strtolower(fileext($_FILES['upfile']['name'])),$type))
{
echo "\n";
$text=implode(",",$type);
echo "您只能上传以下类型文件: ",$text,"
";
exit();
}
else
{
$filename=explode(".",$_FILES['upfile']['name']);
do
{
$filename[0]=random(10);
$randname=implode(".",$filename);
$uploadfile=$uploaddir.$randname;
} while(file_exists($uploadfile));
if (move_uploaded_file($_FILES['upfile']['tmp_name'],$uploadfile)){
echo "上传图片成功";
$imgflag=1;
}
else{
echo "上传图片失败!";
$imgflag=0;
}
}
}
$author=base64_encode($_POST["author"]);
$content=base64_encode(ereg_replace("\r\n","
",htmlspecialchars($_POST["content"])));
$smiles=base64_encode($_POST["smiles"]);
if($_POST["title"]){
$title=base64_encode($_POST["title"]);
}else{
$title=base64_encode("无标题");
}
$addtime=time();
if($imgflag==1){
$photo=base64_encode($randname);
}else{
$photo="NONE";
}
//保存数据
$sql="INSERT INTO messageboard(author,title,smiles,content,photo,addtime) VALUES('$author','$title','$smiles','$content','$photo',$addtime)";
mysql_query($sql,$conn);
echo "\n";
echo "谢谢您的留言,2秒钟返回首页";
}
?>
savereply.php:保存回复
if(isset($_SESSION["admin_name"]) && $_SESSION["admin_name"]!="")
{
if(!$_POST["content"])
{
echo "\n";
echo "你没有填写回复内容,2秒钟返回首页";
exit();
}else{
$msgid=$_POST["msgid"];
$content=base64_encode(ereg_replace("\r\n","
",htmlspecialchars($_POST["content"])));
$addtime=time();
//保存数据
$sql="INSERT INTO reply(msgid,content,addtime) VALUES($msgid,'$content',$addtime)";
mysql_query($sql,$conn);
echo "\n";
echo "谢谢您的留言,2秒钟返回首页";
}
}
?>

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/320898.htmlTechArticle留言显示页面:比上一个例子增加了分页和留言回复的功能 主要代码: 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 Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

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 휴대폰은 모두 in vivo 휴대폰 제품군의 대표적인 모델입니다. 두 휴대폰은 각각 서로 다른 시대의 vivo 첨단 기술 수준을 대표하므로 디자인, 성능, 기능 면에서 일정한 차이가 있습니다. 이번 글에서는 소비자들이 자신에게 꼭 맞는 휴대폰을 선택할 수 있도록 두 휴대폰을 성능비교와 기능분석 측면에서 자세히 비교해보겠습니다. 먼저 vivox100s와 x100의 성능 비교를 살펴보겠습니다. vivox100s에는 최신 기술이 탑재되어 있습니다.

셀프미디어란 정확히 무엇인가? 주요 특징과 기능은 무엇입니까? 셀프미디어란 정확히 무엇인가? 주요 특징과 기능은 무엇입니까? Mar 21, 2024 pm 08:21 PM

인터넷의 급속한 발전으로 셀프미디어라는 개념은 사람들의 마음속에 깊이 뿌리내렸습니다. 그렇다면 셀프미디어란 정확히 무엇인가? 주요 특징과 기능은 무엇입니까? 다음에는 이러한 문제를 하나씩 살펴보겠습니다. 1. 셀프미디어란 정확히 무엇인가? We-media는 이름에서 알 수 있듯이 당신이 미디어라는 뜻입니다. 개인이나 팀이 인터넷 플랫폼을 통해 콘텐츠를 독립적으로 생성, 편집, 출판 및 전파할 수 있는 정보 매체를 말합니다. 신문, 텔레비전, 라디오 등과 같은 전통적인 미디어와 달리 셀프 미디어는 더욱 상호작용적이고 개인화되어 있어 모든 사람이 정보의 생산자이자 전파자가 될 수 있습니다. 2. 셀프미디어의 주요 특징과 기능은 무엇입니까? 1. 낮은 문턱: 셀프미디어의 등장으로 미디어 산업에 진출하기 위한 문턱이 낮아졌습니다. 더 이상 번거로운 장비와 전문팀이 필요하지 않습니다.

원래 댓글이 삭제됐는데 답글이 아직 남아있나요? 내가 댓글을 삭제한 후에도 다른 사람들이 내 댓글을 계속 볼 수 있나요? 원래 댓글이 삭제됐는데 답글이 아직 남아있나요? 내가 댓글을 삭제한 후에도 다른 사람들이 내 댓글을 계속 볼 수 있나요? Mar 23, 2024 pm 05:56 PM

소셜 미디어가 정보로 넘쳐나는 세상에서 사람들은 자신이 플랫폼에 게시하는 콘텐츠와 다른 사람들과 상호 작용하는 방식에 점점 더 많은 관심을 기울이고 있습니다. 특정 게시물에 댓글을 남겼을 때, 작성자가 이를 삭제하면 해당 댓글이 계속 존재할 수 있는지가 뜨거운 논란이 되고 있습니다. 1. 원래 댓글이 삭제됐는데 댓글이 아직도 남아있나요? 첫째, 소셜 미디어 플랫폼이 사용자 정보와 상호 작용을 처리하는 방식에 있어 매우 유연하다는 점을 분명히 해야 합니다. 원래 댓글이 삭제되더라도 직접 연결되지 않은 것처럼 보이더라도 답변이 게시물 아래에 남아 있는 경우가 많습니다. 즉, 원래 댓글이 사라졌더라도 후속 독자는 여전히 답변을 보고 해당 답변을 기반으로 일부 정보를 추론할 수 있습니다. 따라서 원본 댓글을 삭제해도 상호작용의 흔적이 완전히 사라지지는 않습니다.

Xiaohongshu 계정 관리 소프트웨어의 기능은 무엇입니까? Xiaohongshu 계정을 운영하는 방법은 무엇입니까? Xiaohongshu 계정 관리 소프트웨어의 기능은 무엇입니까? Xiaohongshu 계정을 운영하는 방법은 무엇입니까? Mar 21, 2024 pm 04:16 PM

Xiaohongshu가 젊은이들 사이에서 인기를 끌면서 점점 더 많은 사람들이 이 플랫폼을 사용하여 자신의 경험과 인생 통찰력의 다양한 측면을 공유하기 시작했습니다. 여러 Xiaohongshu 계정을 효과적으로 관리하는 방법이 중요한 문제가 되었습니다. 이 글에서는 Xiaohongshu 계정 관리 소프트웨어의 일부 기능에 대해 논의하고 Xiaohongshu 계정을 더 잘 관리하는 방법을 살펴보겠습니다. 소셜 미디어가 성장함에 따라 많은 사람들이 여러 소셜 계정을 관리해야 한다는 사실을 깨닫게 되었습니다. 이는 Xiaohongshu 사용자에게도 어려운 과제입니다. 일부 Xiaohongshu 계정 관리 소프트웨어는 자동 콘텐츠 게시, 예약 게시, 데이터 분석 및 기타 기능을 포함하여 사용자가 여러 계정을 보다 쉽게 ​​관리할 수 있도록 도와줍니다. 이러한 도구를 통해 사용자는 자신의 계정을 보다 효율적으로 관리하고 계정 노출과 관심을 높일 수 있습니다. 또한 Xiaohongshu 계정 관리 소프트웨어에는

PPT에서 필름 움직임 효과를 만드는 구체적인 방법 PPT에서 필름 움직임 효과를 만드는 구체적인 방법 Mar 26, 2024 pm 04:00 PM

1. PPT를 시작하고 새 빈 문서를 만든 다음 모든 텍스트 상자를 선택하고 삭제합니다. 2. Insert-Shape 명령을 실행하고 문서에서 직사각형을 드래그한 다음 도형을 검정색으로 채웁니다. 3. 직사각형을 드래그하여 늘린 다음, Insert-Shape 명령을 실행하고, 작은 정사각형을 드래그한 후 채우기 색상을 흰색으로 설정합니다. 4. 필름 양면에 상단과 하단이 고르게 분포되도록 작은 사각형을 하나씩 복사하여 붙여넣습니다. Ctrl+A로 모두 선택한 후 마우스 오른쪽 버튼을 클릭하고 그룹을 선택합니다. 5. 삽입-그림 명령을 실행하여 팝업 대화 상자에서 삽입할 그림을 찾아 클릭하여 열고 그림의 크기와 위치를 조정합니다. 6. 필름 사진을 만들기 위해 5단계를 반복하여 나머지 사진을 삽입하고 설정합니다. 7. 영화를 선택하고 애니메이션 추가 명령을 실행합니다.

Xianyu에 메시지를 남기는 방법 Xianyu에 메시지를 남기고 비공개로 채팅하는 방법 Xianyu에 메시지를 남기는 방법 Xianyu에 메시지를 남기고 비공개로 채팅하는 방법 Mar 23, 2024 am 09:10 AM

Xianyu APP는 누구나 여기에서 자유롭게 제품을 선택하거나 자신의 제품을 판매할 수 있는 훌륭한 중고 거래 소프트웨어입니다. 여기에서 Xianyu APP를 사용하면 모든 것을 얻을 수 있습니다. 더 많은 정보를 얻고 상품을 더 잘 판매하거나 구매하는 데 도움이 되도록 모든 사람이 적시에 메시지를 남겨야 합니다. Xianyu에 메시지를 남기는 방법을 아직 모르는 사람들에게 적합합니다. 이제 구체적인 Xianyu 메시지 튜토리얼을 가져왔습니다. 이것이 도움이 되기를 바랍니다. Xianyu 메시지 튜토리얼: 1. 먼저 Xianyu를 엽니다. 2. 그런 다음 인터페이스로 들어가서 제품을 클릭하십시오. 3. 그런 다음 나타나는 인터페이스에서 위로 밀어서 클릭하세요.

TikTok 댓글에 흥미로운 답장 문장을 작성하는 방법은 무엇입니까? 댓글에 답하면 어떤 이점이 있나요? TikTok 댓글에 흥미로운 답장 문장을 작성하는 방법은 무엇입니까? 댓글에 답하면 어떤 이점이 있나요? Mar 21, 2024 pm 06:01 PM

이 플랫폼에서는 흥미로운 짧은 동영상을 보는 것 외에도 흥미로운 댓글을 탐색하는 것도 많은 사용자에게 즐거운 경험이 되었습니다. 재미있는 틱톡 댓글은 웃음을 유발할 뿐만 아니라 공감을 불러일으키고 때로는 콘텐츠에 반짝임을 더해주는 답글입니다. 1. Douyin 댓글에 흥미로운 답변 문장을 작성하는 방법은 무엇입니까? 1. 시사 핫스팟 통합: 시사 핫스팟은 모두의 관심의 초점입니다. 이를 댓글과 답글에 통합하면 다른 사람들의 관심을 빠르게 불러일으킬 수 있습니다. 예를 들어, Douyin의 인기 댄스 동영상에서 다음과 같이 댓글을 달 수 있습니다. "이게 우리나라에서 유행했던 '사회적 동요'인가요? 정말 활력이 넘칩니다. 이런 댓글은 유머러스하고 적절하며 사람들이 이해할 수 있습니다." 내 마음은 웃는다. 과장을 사용하는 것은 유머러스한 논평에서 흔히 사용되는 기법입니다. 사물이나 상황을 적당히 과장함으로써 리뷰를 더욱 흥미롭게 만들고

See all articles