Home  >  Article  >  Backend Development  >  Detailed explanation of PHP script database functions (Part 2)_PHP tutorial

Detailed explanation of PHP script database functions (Part 2)_PHP tutorial

WBOY
WBOYOriginal
2016-07-21 16:04:01794browse

Use PHP to save files to the database
The database is the center of data organization and storage. What will be processed may also be various data, including programs, files, reports, and even audio and video data. Because through the browser, individual users can only fill in a small part of their resume. Therefore, here we demonstrate the function of uploading a user's resume. Other types of data can follow this example.

The first is the information collection page. Let the user select files to upload. The html code of this page is as follows:

 〈!-- begin of post.htm--〉

 〈p〉 〈/p〉

 


 〈p〉〈b〉Resume submission〈/b〉〈/p〉

 〈p〉 Name: 〈br〉

 〈input type="text" name="Name" size="20"〉〈/p〉

 

Personal profile: 〈br〉

 〈textarea rows="2" name="Intro" cols="20"〉〈/textarea〉〈/p〉

 

Resume file: 〈br〉

 〈input type="file" name="ResuFile"〉〈/p〉

 〈p〉〈input type="submit" value="Submit" name="B1"〉〈/p〉

〈/form〉

〈!-End of post.htm--〉

Note that the ENCTYPE keyword must not be omitted, otherwise the file will not be uploaded correctly.

Here, we redesign the code for inserting records into the database:

 〈?

 //begin of file insert.php

if( $ResuFile != "none")

// Make sure the user selects the file

{

$Size = filesize($ResuFile);

/ /Determine the file size

 $mFileData = addslashes(fread(fopen($ResuFile, "r"), $Size));

 //Read the file and process the content

unlink($ResuFile);

//Delete upload temporary files

}

$LinkID=@mysql_connect("localhost", "root", " ") or die("Cannot connect to the database server! The database server may not be started, or the username and password are wrong!");

 $DBID = @mysql_select_db("ResumeDB",$LinkID) or die ("Error selecting database, the database you specified may not exist!");

 $query = "insert into Resume(Name,Intro,ResuFile) values('$Name', '$Intro', '$mFileData')";

 $result = @mysql_query("$query",$LinkID); //Execute the query and insert the file into the database

 if(! $result)

echo "Data insertion failed!";

else

echo "File uploaded successfully!";

@mysql_close($LinkID);

  //end of file insert.php

 ?〉

With the above foundation, it should be very simple to write a program to read data from the database. What needs to be noted is the method in which the files are sent to the client. The server must send header information to the browser indicating that the data to be sent is a word document. If MSWord is installed on the user's computer, the browser will automatically call word to display the document.

We can set a hyperlink to download this Word file:

 〈?

 //begin of file show.php

 $LinkID= @mysql_connect("localhost", "root", "") or die("Cannot connect to the database server! The database server may not be started, or the username and password are wrong!");

 $DBID = @mysql_select_db("ResumeDB",$LinkID) or die("Error selecting database, maybe the database you specified does not exist!");

 $query = "insert into Resume(Name,Intro,ResuFile) values('$Name', '$Intro', '$mFileData')";

 $result = @mysql_query("$query",$LinkID);

 //Execute query , insert the file into the database

 $query= "select ID,Name,Intro from Resume";

 //Generate SQL statement

 $result = mysql_query($query, $LinkID); //Execute, save the result set to the variable $result

 $num= mysql_num_rows($result); //Get the number of record rows returned by the query

if($num == 0)

 {

echo "No records found";

exit();

 }

while( $row=mysql_fetch_array($result)) //Get the next row of data from the result set into the array $row

 {

  echo $row["ID"]." ".$row ["Name"]." ".$row["Intro"]." ";

  echo "〈a href= "download.php?ID=".$row["ID"]." "〉View Word document〈/a〉〈br〉";

 }

 //end of file show.php

 ? 

  Visit In the file show.php, what the user sees is a list of personal brief information. Click "View Word Document" to see the detailed resume of the corresponding member.

The Word document is displayed using the following file:

 〈?

  // begin of file download.php

$LinkID=@mysql_connect( "localhost", "root" , "") or die("Cannot connect to the database server! The database server may not be started, or the username and password are wrong!");

 $DBID = @mysql_select_db( "ResumeDB",$LinkID) or die("Error in selecting database, maybe the database you specified does not exist!");

 $query = "select ResuFile from Resume where ID=$ID";

 //$ID is the variable passed by the call

 $result = @mysql_query("$query",$LinkID);

 //Execute the query and read the file from the database Content

 if(mysql_num_rows($result) 〈 1 )

 {

  echo "The corresponding file was not found!";

  exit();

 }

 $row = mysql_fetch_array($result);

 $mFileData = $row["ResuFile"];

 //Read individuals The content of the resume (data in Word file format)

 header("Content-type: application/msword");

 //Send header information, indicating that the data to be sent is a word document

echo $mFileData;

//Send document data

//end of file download.php

?〉

At this point, We have implemented functions such as personal resume submission, database storage, and information browsing, and have basically completed the framework function of "talent information exchange".

It should be noted that file uploading and database storage through PHP is a prominent technical problem. Many websites about PHP continue to have this kind of problem. These operations are highly dependent on the platform and environment settings. Different platform configurations may cause operation failure. The running platform and compilation parameters of the above program are attached at the end of this article for reference.

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/316147.htmlTechArticleUse PHP to save files to the database. The database is the center of data organization and storage. What will be processed may also be various types of data, including programs, files, reports, and even audio and video data...
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