Introduction to php web programming - get and post

931 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
931
On SlideShare
0
From Embeds
0
Number of Embeds
51
Actions
Shares
0
Downloads
61
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Introduction to php web programming - get and post

  1. 1. Introduction to PHP Web programming Week 11, day2
  2. 2. Web programming
  3. 3. PHP with HTML • You can embed PHP code inside html: <html> <body> <h1> <?php $str_one = "Helloo World!"; echo $str_one; ?> </h1> </body> </html> • Or you can call html from php: <?php echo "<html><body><h2>Helloo Baabtra</h2></body></html>”; ?>
  4. 4. Client - Server communication with Form Data
  5. 5. When you submit the form- all form element data(username and password ) will be send to the file ‚registration.php‛ which is residing on your server HTML Form Example
  6. 6. HTML Form Example Action specifies where to send the form data? Normally we specify a page which resides on server so that all form data will be sent to that page. In this example when you click submit button data you entered will be send to “registation.php”
  7. 7. HTML Form Example We can send data to server in two ways GET or POST.
  8. 8. Form action and methods •There are two methods that we can send form data from client to server • GET • Allows you to send data as part of the query string.That means data will be appended with the url •http://example.org/index.php?list=user&orderby=name&direction=asc • POST Allows the client to send along a data payload, for example, if you are posting an HTTP form, the payload could consist of the form data, while if you are uploading a file, the payload would consist of the file itself. Payload will be with HTTP request so that it will not be visible to the user
  9. 9. Comparison • Data sent will be shown in the URL • Size of Data can be send is limiter normally ~2kb but its browser dependant • Cannot be used to send binary data like image or document • Bookmarking is possible with GET method • Data will not be shown with the browser • No restrictions on size of data • Can be used to send files • Book marking is not possible with POST method GET POST
  10. 10. How will you get that data in ‚registration.php‛ ??? • All the form data sent via Get method will be stored in a super global Array $_GET • Eg: http://example.org/index.php?list=user&orderby=name&direction=asc echo $_GET*’list’+; • You can create arrays by using array notation... Eg: http://example.org/index.php?list=user&order[by]=column&order[dir]=asc •and then access them using the following syntax: echo $_GET*’order’+*’by’+; echo $_GET*’order’+*’direction’+;
  11. 11. How will you get that data in ‚registration.php‛ ??? • Similarly all the form data sent via POST method will be stored in a super global array $_POST •Eg: echo $_POST*‘name’+; // will output baabtra echo $_POST*‘email’+; // will output info@baabtra.com
  12. 12. When You Don’t Know How Data Is Sent • If you want to receive data send by client browser but you don’t know the method they used to send (GET or POST), you can do this by using $_REQUEST[] super global array • ie. $_REQUEST[] will contain what ever data you send in any method either GET or POST. • Eg: echo $_REQUEST*‘name’+;
  13. 13. Try this • Create a HTML form as below . Try both Get and POST methods • Up on clicking submit button it should display what user have entered localhost/test/Registration.php Baabtra info@baabtra.com localhost/test/Registration.php
  14. 14. Managing File uploads
  15. 15. File Uploading • File uploads are an important feature for many Web applications; • A file can be uploaded through a ‚multi-part‛ HTTP POST transaction. <form enctype="multipart/form-data" action="index.php‚ method="post"> <input type="hidden" name="MAX_FILE_SIZE" value="50000" /> <input type="file" name="filedata" /> <input type="submit" value="Send file" /> </form>
  16. 16. File Uploading • File uploads are an important feature for many Web applications; • A file can be uploaded through a ‚multi-part‛ HTTP POST transaction. <form enctype="multipart/form-data" action="index.php‚ method="post"> <input type="hidden" name="MAX_FILE_SIZE" value="50000" /> <input type="file" name="filedata" /> <input type="submit" value="Send file" /> </form> is an encoding type that allows files to be sent through a POST. Quite simply, without this encoding the files cannot be sent through POST.
  17. 17. File Uploading • File uploads are an important feature for many Web applications; • A file can be uploaded through a ‚multi-part‛ HTTP POST transaction. <form enctype="multipart/form-data" action="index.php‚ method="post"> <input type="hidden" name="MAX_FILE_SIZE" value="50000" /> <input type="file" name="filedata" /> <input type="submit" value="Send file" /> </form> MAX_FILE_SIZE value is used to define the maximum file size allowed (in this case, 50,000 bytes)
  18. 18. File Uploading • File uploads are an important feature for many Web applications; • A file can be uploaded through a ‚multi-part‛ HTTP POST transaction. <form enctype="multipart/form-data" action="index.php‚ method="post"> <input type="hidden" name="MAX_FILE_SIZE" value="50000" /> <input type="file" name="filedata" /> <input type="submit" value="Send file" /> </form> Tip :You can limit the amount of data uploaded by a POST operation by modifying number of configuration directives in php.ini, such as post_max_size, max_input_time and upload_max_filesize.
  19. 19. How will you receive the file at server side? • Once a file is uploaded to the server, PHP stores it in a temporary location and makes it available to the script; It is up to the script to move the file to a safe location. The temporary copy is automatically destroyed when the script ends. • Inside your script, uploaded files will appear in the $_FILES super global multi dimensional array. This array will have the following keys – name : The original name of the file – type : The MIME type of the file provided by the browser – size : The size (in bytes) of the file – tmp_name : The name of the file’s temporary location – error : The error code associated with this file. A value of UPLOAD_ERR_OK indicates a successful transfer
  20. 20. Built in functions for file upload() • is_uploaded_file(filename) : returns true if the file has uploaded to the temporary location in server • Accepts and argument ‚filename‛ which refers to the name of the file in servers temporary position.ie it will be $_FILE*‘filename’+*‘tmp_name’+ • move_uploaded_file(source,destination) : to move an uploaded file to a different location • Source refers to its current location which obviously is in the temporary location in the server ie $_FILE*‘filename’+*‘tmp_name’+ • Destination refers to where to move the file along with its name eg. ‚images/profilePics/‛. $_FILE*‘filename’+*‘name’+
  21. 21. form enctype="multipart/form-data" action=‚register.php‚ method="post"> <input type="file" name="filedata" /> <input type="submit" value="Send file" /> </form> Example – File Upload Index.html
  22. 22. <?php echo $_FILE*‘filedata’+*‘name’+; // prints the name of file uploaded echo $_FILE*‘filedata’+*‘size’+; // prints the size of file uploaded is_uploaded_file($_FILE*‘filedata’+*‘tmp_name’+) { $target=‚images/‛.$_FILE*‘filedata’+*‘name’+; move_upload_file($_FILE*‘filedata’+*‘tmp_name’+,$target); } ?> Example – File Upload Register.php
  23. 23. Questions? ‚A good question deserve a good grade…‛
  24. 24. End of day
  25. 25. Contact Us Emarald Mall (Big Bazar Building) Mavoor Road, Kozhikode, Kerala, India. Ph: + 91 – 495 40 25 550 NC Complex, Near Bus Stand Mukkam, Kozhikode, Kerala, India. Ph: + 91 – 495 40 25 550 Start up Village Eranakulam, Kerala, India. Email: info@baabtra.com

×