Presentation is loading. Please wait.

Presentation is loading. Please wait.

Advance Database Management Systems Lab no. 5 PHP Web Pages.

Similar presentations


Presentation on theme: "Advance Database Management Systems Lab no. 5 PHP Web Pages."— Presentation transcript:

1 Advance Database Management Systems Lab no. 5 PHP Web Pages

2 Introduction So far we have considered static web pages. We used PHP scripts to write simple programs with (built-in) capability to perform computation Now, we’d like to build smarter pages which Respond to user’s actions Retrieve dynamic information Support conditional behavior

3 Problem: Handling user input We still don’t have a way to get input from the user. Note:PHP does not have its web controls as ASP has.

4 Getting User Input There can be two ways of getting Input data from user URL Paremeters and $_GET array Web Forms (HTML CONTROLS)

5 URL Parameters PHP has the capability to pull parameters out of the URL query string Parameters can be passed as text after the file name, e.g., http://localhost/test.php? name=john & age=2 Parameter names and values can be accessed as variables using special array named $_GET

6 URL Parameters Example Browser retrieves the URL: http://local host/test.php?name=john &age=2 in test.php <?php echo $_GET[“name”]; // displays john echo $_GET[“age”]; // displays 2 ?>

7 Web Forms (HTML Controls) We need a more elegant way of passing parameters to PHP pages HTML forms can be used to accept input from users which contain a set of input tags Text boxes, checkboxes, etc. Form pages can submit data to a PHP page Pass input values in query string

8 Creating web forms Form tag controls what is done with data action: Page to submit results to method: How to submit data, name: Used to refer to the form

9 Form Actions The form’s ACTION is the name of the PHP script (points to PHP page) When the user submits the form the web server executes the PHP script in results.php file

10 Form submission methods HTTP supports two methods for submitting form data GET Parameters are passed in URL string Parameters visible to user in browser window Easy to debug POST Parameters included in body of HTTP request Not visible to user Can handle larger data items

11 $_GET Function The built-in $_GET function is used to collect values from a form sent with method="get". Information sent from a form with the GET method is visible to everyone (it will be displayed in the browser's address bar) and has limits on the amount of information to send (max. 100 characters).

12 When to use method="get"? When using method="get" in HTML forms, all variable names and values are displayed in the URL. Note: This method should not be used when sending passwords or other sensitive information! However, because the variables are displayed in the URL, it is possible to bookmark the page. This can be useful in some cases. Note: The get method is not suitable for large variable values; the value cannot exceed 100 characters.

13 Form inputs Allow users to input data Generally have a name and a value Map to parameters when form is posted Text box Textarea (larger text box) Checkbox Radio button Menu Submit button

14 HTML Controls RECAP

15 Text input/Text Box One-line text input name: input name value: default value size: length (in characters) maxlength: Maximum number of characters to accept

16 Text area Larger, multiline text box Default text goes inside tags Name: input name Cols: width (in characters) Rows: number of rows

17 Checkbox Checkbox, allows for boolean choices Name: input name Value: value if checked (name=value) Checked: if included, box is checked by default

18 Select (pulldown or menu) Allows user to choose item from a dropdown menu I prefer coffee I prefer tea Will submit variable “beverage” with value “coffee” or “tea”

19 Radio button Presents multiple options, user chooses one Each item in a group has same name, different value Only one button can be checked by default Value of parameter fruit will be apple, papaya,mango

20 Hidden field Sometimes we want to pass data to forms without user’s input User’s password, current time Won’t be shown to user Will pass parameter “key=hello” to form

21 Submit button When clicked, submits form data to target Value: Label of submit button

22 Labeling form elements The most common way to add labels is simply to place text beside the form input Add me to mailing list: <input type=”checkbox" name=”addtolist" value=”true" checked=“checked” /> Save password: <input type=”checkbox" name=”savepw” value=”true" checked=“checked” />

23 Other PHP server variables $_POST Like $_GET, but for POST requests $_REQUEST Searches both GET and POST for parameters $_SERVER Stores additional information from server User’s IP address, host URL, etc

24 $_POST The built-in $_POST function is used to collect values from a form sent with method="post". Information sent from a form with the POST method is invisible to others and has no limits on the amount of information to send. Note: However, there is an 8 Mb max size for the POST method, by default (can be changed by setting the post_max_size in the php.ini file).

25 Name: Age: When the user clicks the "Submit" URL will change to welcome.php. in "welcome.php" file,we can now use the $_POST function to collect form data (the names of the form fields will automatically be the keys in the $_POST array): Welcome ! You are years old. $_POST Example

26 Information sent from a form with the POST method is invisible to others and has no limits on the amount of information to send. When to use method “POST”?

27 $_REQUEST The PHP built-in $_REQUEST function contains the contents of both $_GET, $_POST, and $_COOKIE. The $_REQUEST function can be used to collect form data sent with both the GET and POST methods. Example Welcome ! You are years old. $_REQUEST

28 $_SERVER When the variable has been assigned from the server $_SERVER

29 Example Test page Form demo <form action="results.php" method="get" name="hello"> Enter message: <input type="text" name="message" value="Hi“ />

30 Accessing form data //results.php <?php $user = $_GET[“username”]; echo “You entered “. $user; ?>

31 Form validation When we process forms, we can’t be sure that the user included correct information May have left fields blank May have put in improper information Never Trust User Input! We may want to validate the form input before using it PHP provides a number of functions to help us validate form input isset() is variable null? is_numeric() is variable a numeric type? is_string() is variable a string?

32 Validation example <?php // multiply a number by two // get parameter “num” from url string $num = $_GET[“num”]; // is $num a number? if not, throw an error if (!is_numeric($num)) { echo “Error!”; } else { echo $num*2; } ?>

33 Including libraries Place PHP file in same directory or subdirectory Simpler than Java, no packages or namespaces Essentially pastes included code into file

34 PHP Include File Server Side Includes (SSI) You can insert the content of one PHP file into another PHP file before the server executes it using two types of functions. include() generates a warning in case errors in included file, but the script will continue execution require() generates a fatal error, and the script will stop These two functions are used to create functions, headers, footers, or elements that will be reused on multiple pages.

35 Server side includes saves a lot of work. This means that you can create a standard header, footer, or menu file for all your web pages. When the header needs to be updated, you can only update the include file, or when you add a new page to your site, you can simply change the menu file (instead of updating the links on all your web pages).

36 Include example in math.php: <?php function mult($n1,$n2) { return $n1*$n2; } ?> in index.php: <?php include(“math.php”); echo mult(15,5); ?>


Download ppt "Advance Database Management Systems Lab no. 5 PHP Web Pages."

Similar presentations


Ads by Google