Home  >  Article  >  Backend Development  >  Technical principles of generating HTML with PHP_PHP tutorial

Technical principles of generating HTML with PHP_PHP tutorial

WBOY
WBOYOriginal
2016-07-21 14:52:01768browse

1) Create a new database in MYSQL and name it database (can be customized), create a new table and name it news (because it is a news release, just give it a name that is easy to remember, it can be customized) ), and then create these field names:


id (auto-increment, this is the key, type: INT)
title (as the name suggests, news title, the type can be TEXT)
content (news content, type can be TEXT)
path (HTML file path, type can be TEXT)

2) Create conn.php


This is the PHP file that connects to the database. You can put the statements to connect the data in this file separately. In the future, multiple files that need to connect to the database can directly reference this file.


3) Design a form for adding news add.form. The simple source code is as follows:


//Submit to add.php
News title:

News content:






4) Create an HTML template, save it as model.htm, and add.php can be in the same directory.


Sample source code:




The title of this news:{title}
Content of this news:{content}




The content within { } curly brackets is the content to be replaced. The design of the entire static template can be based on your own ideas, but the content to be replaced within { } must be included, such as {title}, {content} above; Kaka~ To put it simply, after designing a good-looking news template, just put the tags to be replaced, such as {title}, {content}, etc. where needed.

5) Detailed explanation of add.php source code


require_once(“conn.php”); //Reference conn.php and connect to the database
$title=$_POST[“title”];
$content=$_POST[“content”]; //Get form variables

//The following creates a text document, and its value is automatically counted
$countfile="count.txt";
if(!file_exists($countfile))
{
fopen($countfile,"w"); //If this file does not exist, it will automatically create one
}
$fp=fopen($countfile,"r");
$num=fgets($fp,20);
$num=$num+1; //The value is automatically increased by one each time
fclose($fp);
$fp=fopen($countfile,"w");
fwrite($fp,$num); //Update its value
fclose($fp);
//Use the automatically counted value above to obtain the HTML path $path
$houzui=”.html”;
$path=$num.$houzui;
//The path formed in this way grows automatically, such as 1.html, 2.html, 3.html………. Adding a piece of news will automatically add 1

//The following uses SQL statements to add data to the table news

$sql=”insert into news (title,content,path) values ​​(‘”.$title.”’,’”.$content.”’,’”.$path.”’)”;
$query=mysql_query($sql);
//The following is the key point, replace the {title}, {content} tags in the template with the data obtained from the form

$fp=fopen(“model.htm”,”r”) //Read-only open template
$str=fread($fp,filesize(“mode.htm”));//Read the content in the template
$str=str_replace(“{title}”,$title,$str);
$str=str_replace(“{content}”,$content,$str);//Replace content
fclose($fp);

$handle=fopen($path,”w”); //Open news path in writing mode
fwrite($handle,$str); //Write the replaced content into the generated HTML file
fclose($handle);
//Finishing work:

echo "View the news just added";
OK, the entire sample source code for generating HTML ends here. The key is to use the replacement method.
$str=str_replace("{replaced content}",$replaced content,$str);

Therefore, to summarize the above approach: first design the news template, use { } to put the content that needs to be replaced into the corresponding position in the template, then design the form, and then the final form handler, put the variables obtained from the form Just replace the corresponding content in the template, so that different HTML will be generated every time; if you need to modify the content of the HTML, the same is true. After obtaining the modified form content, first update the database with the update statement, and then replace the HTML in the template again. The content is enough; if you want to delete it, first delete the content to be deleted in the table, and then use unlink($path) to delete the physical HTML file.

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/371664.htmlTechArticle1) Create a new database in MYSQL and name it database (can be customized), create a new table and name it news (because it is a news release, just give it a name that is easy to remember and can be customized),...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn