3. Start with an example_PHP tutorial
3 PHP Practice
Many features of PHP are related to other software or tools. Using the PHP knowledge we have learned so far, we can try to build a simple interactive website. We can learn a lot through this process. Okay, let's now focus on the construction of a typical personal website.
3.1 Plan a site
Generally, a personal site includes a welcome page, a guestbook page, a bookmark link page, a counter, contact information, and even Photo collection and some music files and so on. Let’s start with a title page, a contact information page, and a resume page. We also need standard, universal page headers and footers.
Title page --front.html
Here we have a very simple html file:
My personal homepage--Welcome
My personal homepage
Welcome
Welcome
Welcome to my humble abode, although there is nothing here yet.
But I hope there will be more soon.
Copyright ? Myself, 1999
> ;
Contact information page--count.html
Similarly we have another one Simple page:
My personal homepage--contact information
My Personal Homepage
Contact Information
You can contact me at 1-800-PHP-INFO
Copyright ? Myself, 1999
> ;
3.2 HTML to PHP
As you can see from above, every page has the same header and footer. Writing the same information to each page like above is fine when the workload is light, but imagine how much effort you have to expend when there are more than 100 pages and you need to change their header or bottom for them all? What a tedious and boring task it is to manually change page after page! So we should write PHP header and bottom files for these pages, and then we just need to reference them in every HTML page. We will place these include files in a subdirectory called include. Below we will write the common content of these sites into the file.
Site-wide common variable settings: common.inc
// Site-wide common variables
$ MyEmail = "phptalk@tnc.org";
$MyEmailLink = "$MyEmail";
$MyName = "PHP Talk";
$MySiteName = $MyName."'s Home Page";
?>
General page header: header.inc
// Define the general page header
?>
echo "$MySiteName - $title"; ?>
echo "$MySiteName"; ?>
echo "$title"; ?>
Bottom of the general page: footer.inc
// Bottom of the general page
?>
Copyright ? by
echo "$MyName ($MyEmailLink)"; ?>
, 1999
New page front.php3:
include("include/common.inc");
$title = "Welcome";
include("include/ header.inc");
?>
Welcome to my humble abode, although there is nothing here yet.
But I hope there will be more soon.
include("include/footer.inc");
?>
New cont.php3:
include("include/common.inc");
$title = " Contact Information";
include("include/header.inc");
?>
You can pass 1 -800-PHP-INFO Contact me
include("include/footer.inc");
?>
Now you can guess the benefits of this arrangement. If you want to change the header or bottom of the page, you only need to change the corresponding file. If you want to change your e-mail address or even your name, just modify the common.inc file. It's also worth noting that you can include files with any file name or file extension into your file, and you can even include files from other sites.
3.3 Counter
Let’s add a counter to the homepage. This example has been told many times, but it is still useful to demonstrate how to read and write files and create your own functions. counter.inc contains the following code:
/*
A simple counter
*/
function get_hitcount($counter_file)
{
/* Return the counter to zero
In this way, if the counter has not been used, the initial value will be 1
Of course you can also set the initial value to 20000 to deceive people
*/
$count=0;
// If the file storing the counter already exists, read Get the content
if ( file_exists($counter_file) )
{
$fp=fopen($counter_file,"r");
// We only took the top 20, I hope your site will not be too popular
$count=0+fgets($fp,20);
// Due to the function fgets( ) returns a string, which we can automatically convert to an integer by adding 0
fclose($fp);
// The file operation is completed
}
//Increase the count value once
$count++;
//Write the new count value to the file
$fp=fopen($counter_file, "w");
fputs($fp,$count);
fclose($fp);
# Return count value
return ( $count);
}
?>
Then we change the front.php3 file to display this counter:
include("include/counter.inc");
// I put the counter value in the file counter.txt, read it out and output it
printf ("
n",
get_hitcount("counter.txt"));
include( "include/footer.inc");
?>
Check out our new front.php3
3.4 Feedback Form
Let’s add another feedback form for your viewers to fill out and e-mail to you. For example, we use a very simple method to implement it. We only need two pages: one to provide the viewer with an input form; the other to obtain the form data, process it, and mail it to you.
Getting form data in PHP is very simple.When a form is sent, each element contained in the form is assigned a corresponding value, and can be used like a reference to a general variable.
In process_form.php3, the variable $mytext is assigned the entered value - very simple! Similarly, you can get variable values from form elements such as list boxes, multi-select boxes, radio boxes, buttons, etc. The only thing you have to do is give each element in the form a name so that you can reference it later.
According to this method, we can generate a simple form containing three elements: name, e-mail address and message. When the visitor sends the form, the PHP page (sendfdbk.php3) that processes the form reads the data, checks whether the name is empty, and finally emails the data to you.
Form: form.php3
include("include/common.inc");
$ title = "Feedback";
include("include/header.inc");
?>
SIZE="20" MAXLENGTH= "30">
value="Your Email" NAME="email">
include("include/footer.inc");
?>
Process form: sendfdbk.php3
include("include/common.inc");
$title = "Feedback ";
include("include/header.inc");
if ( $name == "" )
{
// Now I hate anonymous comments!
echo "Duh ? How come you are anonymous?";
}
elseif ($name == "Your name")
{
// This viewer really doesn’t want to be named!
echo "Hello ? Your name is proposed to be replaced with
your actual name!";
}
else
{
// Output a polite thank you
echo "
Hello, $name.
Thank you for your feedback. BR>
$MyName
$MyEmailLink
";
// Finally mail out
mail($ MyEmail, "Feedback.","
Name : $name
E-mail : $email
Comment : $comment
");
}
include("include/footer.inc");
?>
3.5 Simple on-site search engine
PHP can call external programs. In a Unix environment we can use the program grep to implement a simple search engine. We can make it a little more complicated: use a page to output a form for users to enter search strings and output query results.
include("include/common.inc");
$title = "Search";
include("include/ header.inc");
?>
if ( ! empty($searchstr) )
{
// empty() is used To check whether the query string is empty
// If it is not empty, call grep query
echo "
n";
// Call grep to check Query all files in case-insensitive mode
$cmdstr = "grep -i $searchstr *";
$fp = popen( $cmdstr, "r" ); // Execute Command and output pipeline
$myresult = array(); // Store query results
while( $buffer = fgetss ($fp, 4096))
{
// grep returns this format: File name: the number of lines in the matching string
// Therefore we use the function split() to separate and process the data
list($fname, $ fline) = split(":",$buffer, 2);
// We only output the result of the first match
if ( !defined($myresult[$fname]) )
$myresult[$fname] = $fline;
}
// Now we store the results in the array, we can process and output them below
if ( count($myresult) )
{
echo "
- n";
-
$fname : $fline n";
while(list($fname,$fline) = each($myresult))
echo "
echo "
}
else
{
// If not Query results
echo "Sorry. Search on $searchstr
returned no results.
n";
}
pclose($fp);
}
?>
include("include/footer.inc" ; . Contains the current file name.
fgets() reads the file line by line, with a maximum length of 4096 (specified) characters.
fgetss() is similar to fgets(), except that it parses the output HTML tags.
split() has a parameter of 2, because we only need to split the output into two parts. Also need to omit ":".
each() is an array operation function, used to traverse the entire array more conveniently.
The functions of popen() and pclose() are very similar to fopen() and fclose(), except that pipeline processing is added.
Please note that the above code is not a good way to implement a search engine. This is just an example to help us learn PHP better. Ideally you should build a database of keywords and then search them.
http://www.bkjia.com/PHPjc/314675.html
www.bkjia.com
true
http: //www.bkjia.com/PHPjc/314675.html
TechArticle
3PHP Practice Many features of PHP are related to other software or tools. Using the PHP knowledge we have learned so far, we can try to build a simple interactive website. Take advantage of this...

PHP is used to build dynamic websites, and its core functions include: 1. Generate dynamic content and generate web pages in real time by connecting with the database; 2. Process user interaction and form submissions, verify inputs and respond to operations; 3. Manage sessions and user authentication to provide a personalized experience; 4. Optimize performance and follow best practices to improve website efficiency and security.

PHP uses MySQLi and PDO extensions to interact in database operations and server-side logic processing, and processes server-side logic through functions such as session management. 1) Use MySQLi or PDO to connect to the database and execute SQL queries. 2) Handle HTTP requests and user status through session management and other functions. 3) Use transactions to ensure the atomicity of database operations. 4) Prevent SQL injection, use exception handling and closing connections for debugging. 5) Optimize performance through indexing and cache, write highly readable code and perform error handling.

Using preprocessing statements and PDO in PHP can effectively prevent SQL injection attacks. 1) Use PDO to connect to the database and set the error mode. 2) Create preprocessing statements through the prepare method and pass data using placeholders and execute methods. 3) Process query results and ensure the security and performance of the code.

PHP and Python have their own advantages and disadvantages, and the choice depends on project needs and personal preferences. 1.PHP is suitable for rapid development and maintenance of large-scale web applications. 2. Python dominates the field of data science and machine learning.

PHP is widely used in e-commerce, content management systems and API development. 1) E-commerce: used for shopping cart function and payment processing. 2) Content management system: used for dynamic content generation and user management. 3) API development: used for RESTful API development and API security. Through performance optimization and best practices, the efficiency and maintainability of PHP applications are improved.

PHP makes it easy to create interactive web content. 1) Dynamically generate content by embedding HTML and display it in real time based on user input or database data. 2) Process form submission and generate dynamic output to ensure that htmlspecialchars is used to prevent XSS. 3) Use MySQL to create a user registration system, and use password_hash and preprocessing statements to enhance security. Mastering these techniques will improve the efficiency of web development.

PHP and Python each have their own advantages, and choose according to project requirements. 1.PHP is suitable for web development, especially for rapid development and maintenance of websites. 2. Python is suitable for data science, machine learning and artificial intelligence, with concise syntax and suitable for beginners.

PHP is still dynamic and still occupies an important position in the field of modern programming. 1) PHP's simplicity and powerful community support make it widely used in web development; 2) Its flexibility and stability make it outstanding in handling web forms, database operations and file processing; 3) PHP is constantly evolving and optimizing, suitable for beginners and experienced developers.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

SublimeText3 Chinese version
Chinese version, very easy to use

SublimeText3 Mac version
God-level code editing software (SublimeText3)

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

Dreamweaver Mac version
Visual web development tools

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool