0% found this document useful (0 votes)
87 views

PHP File Handling: Dr. Jenila Livingston L.M. VIT Chennai

The document discusses PHP file handling and file uploading. It covers opening, reading, writing, and closing files. The key steps for file uploading are: 1) Create an HTML form with enctype="multipart/form-data", 2) Specify upload directories and files in PHP, 3) Use move_uploaded_file() to upload the file. Validation checks include verifying the file size and type, and that the file does not already exist.

Uploaded by

Yukti Satheesh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
87 views

PHP File Handling: Dr. Jenila Livingston L.M. VIT Chennai

The document discusses PHP file handling and file uploading. It covers opening, reading, writing, and closing files. The key steps for file uploading are: 1) Create an HTML form with enctype="multipart/form-data", 2) Specify upload directories and files in PHP, 3) Use move_uploaded_file() to upload the file. Validation checks include verifying the file size and type, and that the file does not already exist.

Uploaded by

Yukti Satheesh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 24

PHP File Handling

Dr. Jenila Livingston L.M.


VIT Chennai
File Handling
• This involves 4 tasks
1. Opening a file
2. Reading data from a file
• Displaying the read data
3. Writing contents to another file
4. Closing a file
5. File Uploading

Dr.L.M. Jenila Livingston 2


1. Opening a file
• $fp = fopen(‘filename’,’mode’);
• Eg $fp = fopen(‘c:\abc.txt’,’r’);
– This opens a file abc.txt in read only mode
• Available modes:
– r – read only
– w – write only
– r+ / w+ - read write
– a – append – adding to the end
– x- write by creating new file
Dr.L.M. Jenila Livingston 3
File modes and description

Dr.L.M. Jenila Livingston 4


File modes and description

Dr.L.M. Jenila Livingston 5


File modes and description

Dr.L.M. Jenila Livingston 6


fopen
• <?php
• $myfile = fopen("abbr.txt", "r") or die("Unable
to open file!");
• echo '<b>'.
fread($myfile,filesize("abbr.txt")).'</b>';
• fclose($myfile);
• ?>

Dr.L.M. Jenila Livingston 7


2. Reading a file
• Several methods are available
– fread(filepointer,no of bytes to read)
– fgetc(filepointer) – Reads character by character
– fgets(filepointer) – Reads line by line
• The read content can be stored in a variable
• $data = fread($fp,10) – this reads 10 characters from
file pointed by file pointer $fp and stores in $data
• If we want to read characters till end, we need to use
a loop with condition checking for End of File

Dr.L.M. Jenila Livingston 8


Reading a File – fgets()
• The fgets() function is used to read a single
line from a file.
<?php
$myfile = fopen("abbr.txt", "r") or die("Unable to
open file!");
echo fgets($myfile);
fclose($myfile);
?>
Dr.L.M. Jenila Livingston 9
feof()
<?php
$myfile = fopen("abbr.txt", "r") or die("Unable to
open file!");
while(!feof($myfile)) {
echo fgets($myfile) . "<br>";
}
fclose($myfile);
?>
Dr.L.M. Jenila Livingston 10
3. Writing to file
• We can use echo $data, to print the contents read
from the file to browser
• Or we can open another file in write mode and put
the contents to that file using either of these
methods
– fwrite(filepoiner,data);
– fputc(filepointer,char); - writes character by character
– fputs(filepointer,line); - writes line by line
• Eg - fwrite($fpw,$data);

Dr.L.M. Jenila Livingston 11


Writing a file – fwrite()
• The fwrite(filename, text to be written)
function is used to write to a file.
$myfile = fopen("newfile.txt", "w") or
die("Unable to open file!");
$txt = "File Concepts\n";
fwrite($myfile, $txt);
fclose($myfile);

Dr.L.M. Jenila Livingston 12


4. Closing a file
• feof(fp) – Checks for end of file.
• Returns –1 if EOF is reached. Otherwise
returns 0
• To close a file use fclose(filepointer) method
• Eg. fclose($fp);
– This closes the file pointed by $fp.

Dr.L.M. Jenila Livingston 13


file_exists and filesize()

<?php
if (file_exists("abbr.txt"))
echo 'file exists';
else
echo 'filedoes not exist';
echo filesize("abbr.txt");
?>
Dr.L.M. Jenila Livingston 14
<?php Delete a file
if (file_exists("abbr.txt"))
echo 'file exists';
else
echo 'filedoes not exist';
echo filesize("abbr.txt");
unlink("abbr.txt");
if (file_exists("abbr.txt"))
echo 'not deleted';
else
echo 'got deleted';
?> Dr.L.M. Jenila Livingston 15
File Uploading
In your "php.ini" file, search for the file_uploads
directive, and set it to On:

file_uploads = On

Dr.L.M. Jenila Livingston 16


Five Variables
1. $_FILES['file']['name'] − the actual name of the
uploaded file.
2. $_FILES['file']['tmp_name'] − the uploaded file
in the temporary directory on the web server.
3. $_FILES['file']['size'] − the size in bytes of the
uploaded file.
4. $_FILES['file']['type'] − the MIME type of the
uploaded file.
5. $_FILES['file']['error'] − the error code associated
with this file upload.
Dr.L.M. Jenila Livingston 17
File Uploading - Steps
Step 1: Create The HTML Form
Some rules to follow for the HTML form :
• Make sure that the form uses method="post"
• The form also needs the following attribute: enctype="multipart/form-data".
It specifies which content-type to use when submitting the form

Step 2: Create The Upload File PHP Script


• $target_dir = "uploads/" - specifies the directory where the file is going to be
placed
• $target_file specifies the path of the file to be uploaded
• $imageFileType holds the file extension of the file

Step 3: Upload the file


move_uploaded_file – upload file
Dr.L.M. Jenila Livingston 18
Create HTML form (fileup.php)
<html><body>
<form action="fileup1.php" method="post"
enctype="multipart/form-data">
Select File to Upload:
<BR><input type="file" name="fileToUpload"
id="fileToUpload">
<BR><input type="submit" value="Upload
Image" name="submit">
</form> Dr.L.M. Jenila Livingston 19
File upload (fileup1.php)
<?php
$target_dir = "e:/uploads/";

$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);

move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file);

echo "The file". basename( $_FILES["fileToUpload"]["name"]). " has been


uploaded successfully";?>

?>

Dr.L.M. Jenila Livingston 20


Check if file already exists
• if (file_exists($target_file)) {
• echo "Sorry, file already exists.";}

Dr.L.M. Jenila Livingston 21


Limit File Size
• // Check file size
if ($_FILES["fileToUpload"]["size"] > 500000) {
echo "Sorry, your file is too large.";
}

Dr.L.M. Jenila Livingston 22


Limit File Type
• // Allow certain file formats
$imageFileType =
pathinfo($target_file,PATHINFO_EXTENSION);
• if($imageFileType != "jpg" && $imageFileType
!= "png" && $imageFileType != "jpeg"
&& $imageFileType != "gif" ) {
echo "Sorry, only JPG, JPEG, PNG & GIF files
are allowed.";
}
Dr.L.M. Jenila Livingston 23
Reference
• https://www.w3schools.com/php/php_file_up
load.asp

Dr.L.M. Jenila Livingston 24

You might also like