Home >Backend Development >PHP Tutorial >Five basic operation methods of PHP on text database_PHP tutorial
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 a total of 10 fields: customer IP, speaking time, customer name, customer EMAIL, customer homepage address, message 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."n";//Assign the data of all messages to the variable $str. The purpose of "|" is to use it for future data segmentation. spacer symbol.
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【 echo $name ?>】
//Display customer name
Published on: echo $datetime ?>//Display the time when the message was published
>//Display customer message emoticon pictures
echo $name ?>Say: echo $text; ?>//Display the content of customer messages
echo $reply ?>//Display reply content
Visit the homepage of echo $name ?>//Hyperlink to customer homepage
Send a message to echo $name ?>//Customer E-MAIL connection
echo $name ?>’s QQ number is echo $qq ?>//Display the customer’s QQ number
The IP address of echo $name ?> is echo $ip ?>" //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 that this is the last message)
{
break;//Jump out of the loop
}
$number = $number 1; //Add 1 to the array unit number