PHP realizes data display, addition, modification, deletion and query of text database_PHP tutorial

WBOY
Release: 2016-07-13 17:37:44
Original
760 people have browsed it

PHP implements the five basic operations of data display, adding, modifying, deleting and querying text databases
I use a guestbook program as an example to explain how PHP implements the five basic operations of data display, addition, modification, deletion, and query on text databases.

This text database has 10 fields in total: customer IP, speaking time, customer name, customer EMAIL, customer homepage address, message emoticon picture name, customer QQ, customer image picture, message content, and administrator reply content.

1. Add data program segments.
$date=date("Y-m-d H:i:s");//Get the system time
$ip = $HTTP_SERVER_VARS[REMOTE_ADDR]; //Get the speaking IP address
$text=encode($gb_text);//Remove the spaces after the message content.
$fp=fopen("gb.dat","a");//Open the gb.dat text file in write-only mode, with the file pointer pointing to the end of the file.
$str =$ip."|".$date."|".$gb_name."|".$gb_email."|".$gb_home."|".$face."|".$gb_qq."| ".$head."|".$text."|".$reply." ";//Assign the data of all messages to the variable $str. The purpose of "|" is to use it as the data interval symbol when dividing data in the future.
fwrite($fp,$str);//Write data to file
fclose($fp);//Close the file


showmessage("Message successful!","index.php","3");//The message is successful and will automatically return to the main interface after 3 seconds.
Among them, $gb_name, $gb_email, $gb_home, $face, $gb_qq, $head, $gb_text, and $reply are the data passed from the speech form.
2. Data display program segment
if (file_exists("gb.dat")){//Check whether the file exists
$array=file("gb.dat");//Read the entire contents of the file into the array $array
$arr=array_reverse($array);//Reverse the data in $array (that is, the last row is the first row, and so on) and read into each unit of array $arr ($arr[0].. .).
$num=count($array);//Get the number of information in the array $array (one line per information)
if ($num>0){//If the number of information is greater than zero (that is, the text database is not empty)
$total=ceil($num/$pagesize);//Calculate the total number of pages (take the largest integer, that is, round up any decimal point, $pagesize is the preset number of information displayed on each page)
if($page<1){//If the current page number is less than 1
$page=1;//Then the assigned value is 1
}
$number=($page-1)*$pagesize;//Calculate the digital number of the first message currently displayed (the digital number starts from zero, mainly to achieve the purpose of corresponding to the array unit number)
for($i=0;$i<=$pagesize-1;$i++){//Enter the loop

$row=explode("|",$arr[$number]);//Use "|" as the delimiter to split the data of every $number unit in the array $arr, and assign these data to the array $rom
list($ip,$datetime,$name,$email,$home,$face,$qq,$head,$text,$reply)=$row;//Assign the unit data in the array $row to brackets in order Variables in
?
>//Display customer image picture


Nickname【
//Display customer name
Published on: //Display the time when the message was published


>//Display customer message emoticon pictures
Say://Display the content of customer messages


//Display reply content


" target="_blank">Visit's homepage// Hyperlink to customer homepage
Send a message to//Connect the customer’s E-MAIL to the network manager u home www. bitscn.net
’s QQ number is //Display the customer’s QQ number
The IP address of is " //Display the customer’s IP address
reply//Connection statement for message reply
Delete//Message deletion statement (use the customer message time $datetime as the deletion identifier)


if ($number == $num-1)//If the unit number of the array is equal to the total number of messages minus one (because the unit number starts with zero, this means this is the last message)
{
break;//Jump out of the loop
}
$number = $number + 1; //Add 1 to the array unit number
}//Loop end character
}
if ($page <> 1)//If the current page number is not equal to 1
{
$back = $page - 1;//Decrease the current page number by 1, and assign this value to the variable $back
echo "First page";//Display the link to the first page
echo " Previous page" ;The current page number is equal to $back and its link is displayed

}
if ($page <> $total)//If the current page number is not equal to the total page number (the last page number)
{
$next = $page + 1; //Add 1 to the current page number and assign it to the variable $next
echo " Next page" ;//Show the next page link
echo " Last page"; Show last page link
}
echo "Number of pages: $page / $total";//Display the current page number and display the last page number
echo "There are $num messages in total";//Display message number information
}
else {
echo "

There are currently no messages!
";//The information displayed if the file content is empty
}
else {
echo "
The data file is lost, please contact the administrator! Or leave a message to re-create the data file!
";//If the file does not exist, the information displayed
}
3. Data modification program segment
$list=file("gb.dat");//Read the entire gb.dat file into the array $list. Each element of the array is a message ($list[0] is the data of the first message, $list[ 1] is the data of the first message... The network administrator has www.bitscn.net
$n=count($list);//Calculate the total number of messages in the $list content and assign it to the variable $n
if ($n>0){ //If the number of messages is greater than 0
$fp=fopen("gb.dat","w");//Open the file gb.dat
in write-only mode $gb_reply=encode($gb_reply);
for ($i=0;$i<$n;$i++) {//Enter loop
if(eregi($ttime,$list[$i])){//Compare the string matching time $ttime sent to send a message with the content in the array unit $list
$f=explode("|",$list[$i]);//If a match is found, use "|" as the delimiter to cut the message information $list[$i] (the $ith message), And assign these data to the array $f
$f[9]=$gb_reply;//Replace $f[9] (the last piece of data in the message) with $gb_reply (reply content).
$list[$i]=$f[0]."|".$f[1]."|".$f[2]."|".$f[3]."|".$f[ 4]."|".$f[5]."|".$f[6]."|".$f[7]."|".$f[8]."|".$f[ 9]." "; //Replace the contents of array unit $list[$i] with array $f plus the separator "|" (where $f[9] is the modified new data).
break;//Jump out of the loop
}
}//Loop end character
}
FOR($i=0;$i<=$n;$i++){//Enter the loop
fwrite($fp,$list[$i]);//Create each unit of the array $list into one line and write it to the file gb.dat
}//Loop end character
fclose($fp);//Close the file
showmessage("Reply successfully!","index.php");//Reply successfully and automatically return to the main interface.
4. Data deletion program segment
$list=file("gb.dat");//Read the entire gb.dat file into the array $list. Each element of the array is a message ($list[0] is the data of the first message, $list[ 1] is the data of the first message....
$n=count($list);//Calculate the total number of messages in the $list content and assign it to the variable $n
if ($n>0){//If the number of messages is greater than 0
$fp=fopen("gb.dat","w");//Open the file gb.dat
in write-only mode for ($i=0;$i<$n;$i++) {//Enter loop
if(eregi($ttime,$list[$i])){//Match and compare the time $ttime sent to send a message with the string in the array $list[$i]
$list[$i]="";//If the match is successful, clear $list[$i] (to achieve the purpose of deletion)
break;//Jump out of the loop
}
}//Loop end character
FOR($i=0;$i<=$n;$i++){//Enter the loop
fwrite($fp,$list[$i]);//Create each unit of the array $list into one line and write it to the file gb.dat
} //Loop terminator
fclose($fp);//Close the file
showmessage("Deleted successfully!","index.php");//Deleted successfully, automatically returns to the main interface.

}

5. Data query program segment

Search keywords:





www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/486542.htmlTechArticleI use a method to implement the five basic operations of data display, adding, modifying, deleting and querying text databases in PHP The guestbook program is used as an example to illustrate how PHP implements text databases...
source:php.cn
Statement of this Website
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!