> 백엔드 개발 > PHP 튜토리얼 > 怎么利用后台来发布文章后,在前台显示。

怎么利用后台来发布文章后,在前台显示。

WBOY
풀어 주다: 2016-06-23 14:01:35
원래의
1400명이 탐색했습니다.

每次手工在前台写代码 来添加文章,实在很麻烦,也很累人。我想在后台写个功能,输入标题,内容 就可以直接发表。  我想利用文件读取。然后利用正则来读取php文件的某个位置,然后添加文章,比如
我想在index.php显示文章。而index.php的内容为

<div style="float: left;height: 2%;padding-top: 1%;padding-left: 232px;padding-bottom: 4%;"><h1>文章作者??????????????文章标题?????????????文章时间</h1><hr></div><table class="article"><div><tr><th width="100"><a style="font-size:18px;text-decoration:none;" href="www.baidu.com">Black-Hole</a></th><td><a style="padding-left: 273px;" href="http://www.baidu.com">PHP代码</a></td><td><a style="padding-left:25%;" href="http://www.baidu.com">2014年2月28号</a></td></tr></div>
로그인 후 복사

我先在后台写个标题 内容 作者 时间。点击发布文章后,在写个正则读取index.php里的article">与
之间的内容。擦除内容,写入我刚刚写的 标题 内容 作者 时间。

这样又可以保证新帖子永远在第一位。又省去手工写代码来添加文章的麻烦。

因为 本人学php不到1年。所以,又很多地方不懂,望各位程序员照顾下新人,谢谢了


回复讨论(解决方案)

后台操作数据库,完成添加插入,删除,修改,查询操作,
前台读取数据库信息即可。

建议找个开源CMS学习学习。

这是很基础的东西。
需要用到数据库,可以查看mysql 的dbconnect,select,insert,update,delete语法。
写了个demo,可以插入数据库,从数据库中按时间倒序显示记录,希望对你有帮助。

dbname是 demo

连接数据库
$conn=@mysql_connect("localhost","root","") or die(mysql_error());
@mysql_select_db('demo',$conn) or die(mysql_error());

localhost 是服务器ip,本机用localhost
root是数据库用户名
密码为空。

db结构

CREATE TABLE `test` (  `id` int(10) unsigned NOT NULL auto_increment,  `name` varchar(100) NOT NULL,  `age` tinyint(4) unsigned NOT NULL,  `addtime` datetime NOT NULL,  PRIMARY KEY  (`id`)) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
로그인 후 복사
로그인 후 복사


db.php 用于显示记录
<?php	//打开数据库	function opendb(){		$conn=@mysql_connect("localhost","root","")  or die(mysql_error());		@mysql_select_db('demo',$conn) or die(mysql_error());		}	//关闭数据库	function closedb(){		@mysql_close() or die("?????出?!");	}    opendb();    echo '<meta http-equiv="content-type" content="text/html; charset=utf-8">';    $sqlstr = "select * from test order by addtime desc";    $query = mysql_query($sqlstr) or die(mysql_error());    while($thread=mysql_fetch_assoc($query)){        $result[] = $thread;    }    if($result){        foreach($result as $val){            echo $val['id'].' '.$val['name'].' '.$val['age'].' '.$val['addtime'].'<br>';        }    }?>
로그인 후 복사
로그인 후 복사


add.php 用于新增记录
<?php//打开数据库function opendb(){    $conn=@mysql_connect("localhost","root","")  or die(mysql_error());    @mysql_select_db('demo',$conn) or die(mysql_error());	}//关闭数据库function closedb(){    @mysql_close() or die("?????出?!");}opendb();$send = isset($_POST['send'])? $_POST['send'] : '';if($send=='true'){ // submit    $name = isset($_POST['name'])? $_POST['name'] : '';     $age = isset($_POST['age'])? $_POST['age'] : '';    $addtime = date('Y-m-d H:i:s');    if($name=='' || $age==''){        exit('name or age is empty');    }    $sqlstr = "insert into test(name,age,addtime) values('{$name}','{$age}','{$addtime}')";    mysql_query($sqlstr) or die(mysql_error());    echo 'insert success';}else{?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html> <head>  <meta http-equiv="conent" content="text/html;charset=utf-8">  <title> New Document </title>  <meta name="Generator" content="EditPlus"> </head> <body>  <form name="form1" method="post" action="add.php">  <p>name:<input type="text" name="name"></p>  <p>age:<input type="text" name="age"></p>  <p><input type="submit" value="submit"></p>  <input type="hidden" name="send" value="true">  </form> </body></html><? } ?>
로그인 후 복사
로그인 후 복사

这是很基础的东西。
需要用到数据库,可以查看mysql 的dbconnect,select,insert,update,delete语法。
写了个demo,可以插入数据库,从数据库中按时间倒序显示记录,希望对你有帮助。

dbname是 demo

连接数据库
$conn=@mysql_connect("localhost","root","") or die(mysql_error());
@mysql_select_db('demo',$conn) or die(mysql_error());

localhost 是服务器ip,本机用localhost
root是数据库用户名
密码为空。

db结构

CREATE TABLE `test` (  `id` int(10) unsigned NOT NULL auto_increment,  `name` varchar(100) NOT NULL,  `age` tinyint(4) unsigned NOT NULL,  `addtime` datetime NOT NULL,  PRIMARY KEY  (`id`)) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
로그인 후 복사
로그인 후 복사


db.php 用于显示记录
<?php	//打开数据库	function opendb(){		$conn=@mysql_connect("localhost","root","")  or die(mysql_error());		@mysql_select_db('demo',$conn) or die(mysql_error());		}	//关闭数据库	function closedb(){		@mysql_close() or die("?????出?!");	}    opendb();    echo '<meta http-equiv="content-type" content="text/html; charset=utf-8">';    $sqlstr = "select * from test order by addtime desc";    $query = mysql_query($sqlstr) or die(mysql_error());    while($thread=mysql_fetch_assoc($query)){        $result[] = $thread;    }    if($result){        foreach($result as $val){            echo $val['id'].' '.$val['name'].' '.$val['age'].' '.$val['addtime'].'<br>';        }    }?>
로그인 후 복사
로그인 후 복사


add.php 用于新增记录
<?php//打开数据库function opendb(){    $conn=@mysql_connect("localhost","root","")  or die(mysql_error());    @mysql_select_db('demo',$conn) or die(mysql_error());	}//关闭数据库function closedb(){    @mysql_close() or die("?????出?!");}opendb();$send = isset($_POST['send'])? $_POST['send'] : '';if($send=='true'){ // submit    $name = isset($_POST['name'])? $_POST['name'] : '';     $age = isset($_POST['age'])? $_POST['age'] : '';    $addtime = date('Y-m-d H:i:s');    if($name=='' || $age==''){        exit('name or age is empty');    }    $sqlstr = "insert into test(name,age,addtime) values('{$name}','{$age}','{$addtime}')";    mysql_query($sqlstr) or die(mysql_error());    echo 'insert success';}else{?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html> <head>  <meta http-equiv="conent" content="text/html;charset=utf-8">  <title> New Document </title>  <meta name="Generator" content="EditPlus"> </head> <body>  <form name="form1" method="post" action="add.php">  <p>name:<input type="text" name="name"></p>  <p>age:<input type="text" name="age"></p>  <p><input type="submit" value="submit"></p>  <input type="hidden" name="send" value="true">  </form> </body></html><? } ?>
로그인 후 복사
로그인 후 복사
  十分感谢

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