Home >Backend Development >PHP Tutorial >PHP realizes the production of simple blog_php example
Recently, I had time to look at some PHP code. I made a simple blog with reference to the PHP100 tutorial, and I will briefly record it here.
The first is the integrated environment. WAMP is selected here: http://www.wampserver.com/en/
First create a blog table through phpMyAdmin.
Pure interface operation, the process is relatively simple. It should be noted that id is the primary key, and the auto_increnent option is set, which means that the field will automatically increment when it is empty. Other fields are more casual, just pay attention to the type and length.
Create data connection
Create the conn.php file in the ./wamp/www/blog directory.
<?php @mysql_connect("127.0.0.1:3306","root","") or die("mysql数据库连接失败"); @mysql_select_db("test")or die("db连接失败"); mysql_query("set names 'gbk'"); ?>
The default user name of mysql is root, and the password is empty. The blog created here is in the test library, so it needs to be connected to the test library.
Add blog
<a href="index.php"><B>index</B></a> <a href="add.php"><B>add blog</B></a> <hr> <?php include("conn.php"); //引入连接数据库 if (!empty($_POST['sub'])) { $title = $_POST['title']; //获取title表单内容 $con = $_POST['con']; //获取contents表单内容 $sql= "insert into blog values(null,'0','$title',now(),'$con')"; mysql_query($sql); echo "insert success!"; } ?> <form action="add.php" method="post"> title :<br> <input type="text" name="title"><br><br> contents:<br> <textarea rows="5" cols="50" name="con"></textarea><br><br> <input type="submit" name="sub" value="submit"> </form>
Then, if it is judged that the content of name='sub' in the form is not empty, the content of the form will be obtained, and then the $sql statement will be executed. null means that the id is empty (incremented by itself), and now() means that it will be taken from the current day. , $title and $con take the content submitted by the user in the form. Finally, eche prompts for successful insertion.
The lower part is a simple HTML code, used to implement a blog form submission function.
Create the homepage of your blog
Create the index.php file in the ./wamp/www/blog/ directory.
<a href="index.php"><B>index</B></a> <a href="add.php"><B>add blog</B></a> <br><br> <form action="" method="get" style='align:"right"'> <input type="text" name="keys" > <input type="submit" name="subs" > </form> <hr> <?php include("conn.php"); //引入连接数据库 if (!empty($_GET['keys'])) { $key = $_GET['keys']; $w = " title like '%$key%'"; }else{ $w=1; } $sql ="select * from blog where $w order by id desc limit 5"; $query = mysql_query($sql); while ($rs = mysql_fetch_array($query)) { ?> <h2>title: <a href="view.php?id=<?php echo $rs['id']; ?>"><?php echo $rs['title']; ?></a> | <a href="edit.php?id=<?php echo $rs['id']; ?>">edit</a> | <a href="del.php?id=<?php echo $rs['id']; ?>">delete</a> | </h2> <li>date: <?php echo $rs['data']; ?></li> <!--截取内容展示长度--> <p>contents:<?php echo iconv_substr($rs['contents'],0,30,"gbk"); ?>...</p> <hr> <?php }; ?>
The first is a search form. Use if to determine whether the content of the search form is empty. If it is not empty, match the title of the article by entering the keyword and display the result; if it is empty, query all blog content and display each article in a loop. title, date, text. Clicking on the title will link to the detailed page of the blog. Each article provides "edit" and "delete" functions.
mysql_query() is used to execute sql statements. mysql_fetch_arry() generates an array from the returned data, so that each piece of data in the database can be operated like an array.
Then the text is displayed, and the first 30 characters of the text are extracted through the iconv_substr() function.
View the blog
Create the view.php file in the ./wamp/www/blog/ directory.
<a href="index.php"><B>index</B></a> <a href="add.php"><B>add blog</B></a> <hr> <?php include("conn.php"); //引入连接数据库 if (!empty($_GET['id'])) { $id = $_GET['id']; $sql ="select * from blog where id='$id' "; $query = mysql_query($sql); $rs = mysql_fetch_array($query); $sqlup = "update blog set hits=hits+1 where id='$id'"; mysql_query($sqlup); } ?> <h2>title: <?php echo $rs['title']; ?> </h1> <h3>date: <?php echo $rs['data']; ?> click number: <?php echo $rs['hits']; ?></h3> <hr> <p>contents:<?php echo $rs['contents']; ?></p>
An additional small feature is to display a simple counter, every time the page is refreshed, the number of clicks is incremented by 1.
Edit blog Create the edit.php file in the ./wamp/www/blog/ directory.
<a href="index.php"><B>index</B></a> <a href="add.php"><B>add blog</B></a> <hr> <?php include("conn.php"); //引入连接数据库 //获取数据库表数据 if (!empty($_GET['id'])) { $edit = $_GET['id']; $sql = "select * from blog where id='$edit'"; $query = mysql_query($sql); $rs = mysql_fetch_array($query); } //更新数据库表数据 if (!empty($_POST['sub'])) { $title = $_POST['title']; //获取title表单内容 $con = $_POST['con']; //获取contents表单内容 $hid = $_POST['hid']; $sql= "update blog set title='$title', contents='$con' where id='$hid' "; mysql_query($sql); echo "<script>alert('update success.');location.href='index.php'</script>"; } ?> <form action="edit.php" method="post"> <input type="hidden" name="hid" value="<?php echo $rs['id'];?>"> title :<br> <input type="text" name="title" value="<?php echo $rs['title'];?>"> <br><br> contents:<br> <textarea rows="5" cols="50" name="con" ><?php echo $rs['contents'];?></textarea><br><br> <input type="submit" name="sub" value="submit"> </form>
Delete blog
Create the del.php file in the ./wamp/www/blog/ directory.
<a href="index.php"><B>index</B></a> <a href="add.php"><B>add blog</B></a> <hr> <?php include("conn.php"); //引入连接数据库 if (!empty($_GET['id'])) { $del = $_GET['id']; //删除blog $sql= "delete from blog where id='$del' "; mysql_query($sql); echo "delete success!"; } ?>
The last step is to implement the blog deletion function, and query and display the blog through its ID.
Because all pages are not beautified using front-end styles, they are too ugly so I won’t post pictures. The function is quite perfect. Recorded here, it is regarded as a compilation of PHP learning.
==================================================== ======
In addition, although every language has its advantages and disadvantages, I still can’t help but complain about two disadvantages of PHP.
1. Symbols are difficult to write, such as “$”, “->”, and “=>”. Although these symbols do not increase the difficulty of understanding the code syntax. But it tastes disgusting. Every time you type the "$" symbol, you have to look at the keyboard and press the shift key to find where 4 is.
2. The mixing of php and html is not too elegant in my opinion.
The above is the entire content of this article. I hope it will be helpful to everyone’s study. I also hope that everyone will support Script Home.