Presentation is loading. Please wait.

Presentation is loading. Please wait.

9/4/2015CS346 PHP1 CHAPTER 2 Using Variables. 9/4/2015CS346 PHP2 Objectives  How to store and access data in PHP variables  How to create and manipulate.

Similar presentations


Presentation on theme: "9/4/2015CS346 PHP1 CHAPTER 2 Using Variables. 9/4/2015CS346 PHP2 Objectives  How to store and access data in PHP variables  How to create and manipulate."— Presentation transcript:

1 9/4/2015CS346 PHP1 CHAPTER 2 Using Variables

2 9/4/2015CS346 PHP2 Objectives  How to store and access data in PHP variables  How to create and manipulate numeric and string variables  How to create HTML input forms  How to pass data from HTML forms to PHP scripts

3 9/4/2015CS346 PHP3 Using PHP Variables  All variables are preceded by the $ special symbol

4 9/4/2015CS346 PHP4 Selecting Variable Names  Variable name in PHP may contain any set of characters except: The first character must be a dollar sign ($) The first character must be a dollar sign ($) The second character must be a letter or an underscore character (_) The second character must be a letter or an underscore character (_) The other characters can be letter, digit, underscore or ASCII character from 127 to 255 The other characters can be letter, digit, underscore or ASCII character from 127 to 255  Note: Select descriptive variable names. For example $counter is more descriptive than $c or $ctr

5 9/4/2015CS346 PHP5 Combining Variables and the print Statement  To print out the value of $x, write the following PHP statement: print ("$x"); print ("$x");  The following code will output “Bryant is 6 years old”. $age=6; print ("Bryant is $age years old.");

6 9/4/2015CS346 PHP6 A Full Example... A Full Example... 1. 1. 2. Variable Example 2. Variable Example 3. 3. 4. <?php 5. $first_num = 12; 6. $second_num = 356; 7. $temp = $first_num; 8. $first_num = $second_num; 9. $second_num = $temp; 10. print ("first_num= $first_num 10. print ("first_num= $first_num second_num=$second_num"); 11. ?> 11. ?>

7 9/4/2015CS346 PHP7 A Full Example... A Full Example... The previous code can be executed at http://localhost/mod2/firstnum2-1.php http://localhost/mod2/firstnum2-1.php

8 9/4/2015CS346 PHP8 Using Arithmetic Operators Using Arithmetic Operators  Use operators + for addition and – for subtraction to build mathematical expressions.  For example <?php $apples = 12; $oranges = 14; $total_fruit = $apples + $oranges; print ("The total number of fruit is $total_fruit"); ?>  These PHP statements would output “The total number of fruit is 26.”

9 9/4/2015CS346 PHP9 Common PHP Numeric Operators

10 9/4/2015CS346 PHP10 A Full Example 1. 1. 2. Variable Example 2. Variable Example 3. 3. 4. <?php 5. $columns = 20; 6. $rows = 12; 7. $total_seats = $rows * $columns; 8. 9. $ticket_cost = 3.75; 10. $total_revenue = $total_seats * $ticket_cost; 11. 12. $building_cost = 300; 13. $profit = $total_revenue - $building_cost; 14. 15. print ("Total Seats are $total_seats "); 16. print ("Total Revenue is $total_revenue "); 17. print ("Total Profit is $profit"); 18. ?> 18. ?>

11 9/4/2015CS346 PHP11 A Full Example... A Full Example... The previous code can be executed at http://localhost/mod2/numops2-2.php http://localhost/mod2/numops2-2.php

12 9/4/2015CS346 PHP12 WARNING: Using Variables with Undefined Values Undefined variables have no value (called a null value) PHP may not generate an error for a variable with a null value and may complete the expression evaluation. Error message turned off – see php.ini For example, the following PHP script will output x= y=4. C:\wamp\bin\php\php5.3.0\php.ini <?php $y = 3; $y=$y + $x + 1; // $x has a null value print ("x=$x y=$y"); ?>

13 9/4/2015CS346 PHP13 WARNING: Using Variables with Undefined Values  Simillarly  http://localhost/ch29/data.php http://localhost/ch29/data.php  http://cs346.cs.uwosh.edu/huen/ch29/data.php http://cs346.cs.uwosh.edu/huen/ch29/data.php  See text  http://cs346.cs.uwosh.edu/huen/ch29/data.php.txt http://cs346.cs.uwosh.edu/huen/ch29/data.php.txt

14 9/4/2015CS346 PHP14 Shortcut: Automatic Increment/Decrement Operators  Increment or decrement a value by 1: ++ and -- <?php $x=0; $y=2; $x=0; $y=2; print “x=“; print “x=“; print ++$x; print ++$x; --$y; --$y; print “ and now y=$y”; print “ and now y=$y”;?> WHH WHH

15 9/4/2015CS346 PHP15 Writing Expressions  Operator precedence rules define the order in which the operators are evaluated. For example, $x = 5 + 2 * 6;  Since multiplication evaluated before addition operations, this expression evaluates to 17.

16 9/4/2015CS346 PHP16 PHP Precedence Rules  PHP follows the precedence rules: First it evaluates operators within parentheses First it evaluates operators within parentheses Next it evaluates multiplication and division operators. Next it evaluates multiplication and division operators. Finally it evaluates addition and subtraction operators. Finally it evaluates addition and subtraction operators.

17 9/4/2015CS346 PHP17 PHP Precedence Rules  For example, the first 2 statements evaluate to 80 while the last to 180. $x = 100 - 10 * 2; $x = 100 - 10 * 2; $y = 100 - (10 * 2); $y = 100 - (10 * 2); $z = (100 - 10) * 2; $z = (100 - 10) * 2;

18 9/4/2015CS346 PHP18 A Full Example 1. 1. 2. Expression Example 2. Expression Example 3. 3. 4. <?php 5. $grade1 = 50; 6. $grade2 = 100; 7. $grade3 = 75; 8. $average = ($grade1 + $grade2 + $grade3) / 3; 9. print ("The average is $average"); 10. ?> 10. ?>

19 9/4/2015CS346 PHP19 A Full Example... A Full Example... The previous code can be executed at http://localhost/mod2/average2-3.php http://localhost/mod2/average2-3.php

20 9/4/2015CS346 PHP20 Working with PHP String Variables  Character strings are used in scripts to hold data such as customer names, addresses, product names, and descriptions.  Consider the following example. $name="Christopher"; $name="Christopher"; $preference="Milk Shake"; $preference="Milk Shake";  $name is assigned “Christopher” and the variable $preference is assigned “Milk Shake”.

21 9/4/2015CS346 PHP21 WARNING: Be Careful Not to Mix Variable Types  Be careful not to mix string and numeric variable types.  For example, you might expect the following statements to generate an error message, but they will not. Instead, they will output “ y=1 ”. <?php $x ="banana"; $sum = 1 + $x; print ("y=$sum"); ?>

22 9/4/2015CS346 PHP22 Using the Concatenate Operator  The concatenate operator combines two separate string variables into one.  For example, $fullname = $firstname. $lastname;  $fullname will receive the string values of $firstname and $lastname connected together.  For example, $firstname = "John"; $lastname = "Smith"; $fullname = $firstname. $lastname; print ("Fullname=$fullname");

23 9/4/2015CS346 PHP23 TIP; An Easier Way to Concatenate Strings  You can also use double quotation marks to create concatenation directly  For example, $Fullname2 = "$FirstName $LastName";$Fullname2 = "$FirstName $LastName"; This statement has the same effect asThis statement has the same effect as $Fullname2 = $FirstName. " ". $LastName;$Fullname2 = $FirstName. " ". $LastName;

24 9/4/2015CS346 PHP24 The strlen() Function  The strlen() function returns the length of its string argument

25 9/4/2015CS346 PHP25 The strlen() Function Example <?php $comments = "Good Job"; $comments = "Good Job"; $len = strlen($comments); $len = strlen($comments); print ("Length=$len"); print ("Length=$len"); ?> ?> This PHP script would output “Length=8”.

26 9/4/2015CS346 PHP26 The trim() Function  This function removes any blank characters from the beginning and end of a string. For example, consider the following script: <?php <?php $in_name = " Joe Jackson "; $in_name = " Joe Jackson "; $name = trim($in_name); $name = trim($in_name); print ("name=$name$name"); print ("name=$name$name"); ?> ?>  This script will output “name=Joe JacksonJoe Jackson”

27 9/4/2015CS346 PHP27 strtolower() and strtoupper()  Return the input string in all uppercase or all lowercase letters, respectively.  For example, <?php $inquote = "Now Is The Time"; $lower = strtolower($inquote); $upper = strtoupper($inquote); print ("upper=$upper lower=$lower"); ?>  The above would output “upper=NOW IS THE TIME lower=now is the time”.

28 9/4/2015CS346 PHP28 The substr() Function Substr has the following general format: Substr has the following general format:

29 9/4/2015CS346 PHP29 The substr() Function  The substr() function enumerates character positions starting with 0 (not 1), For example, in the string “Homer”, the “H” would be position 0, the “o” would be position 1, the “m” position 2, and so on. For example, in the string “Homer”, the “H” would be position 0, the “o” would be position 1, the “m” position 2, and so on.  For example, the following would output “Month=12 Day=25”. <?php $date = "12/25/2002"; $month = substr($date, 0, 2); $day = substr($date, 3, 2); print ("Month=$month Day=$day"); ?>

30 9/4/2015CS346 PHP30 The substr() Function  As another example: It does not include the third argument (and thus returns a substring from the starting position to the end of the search string). <?php $date = "12/25/2002"; $year = substr($date, 6); print ("Year=$year"); ?>  The above script segment would output “Year=2002”.

31 9/4/2015CS346 PHP31 TIP: Negative Starting value as a substr() Argument  If second argument of substr() is negative, the starting position will be counted from the right end instead of left.  For example, the substr() extracts a substring starting 4 characters from the end of the string. <!php $filename = “mydoc.html” $filename = “mydoc.html” $suffix = substr( $filename, -4); $suffix = substr( $filename, -4); print (“suffix=$suffix”); print (“suffix=$suffix”);?>

32 9/4/2015CS346 PHP32  HTML Forms are not part of PHP language but important way to send data to scripts Creating HTML Input Forms Text Box Radio Buttons Check Box Select Box Text Area Submit/Reset button

33 9/4/2015CS346 PHP33 Starting And Ending HTML Forms  You can create HTML forms by using the HTML and tags.

34 9/4/2015CS346 PHP34 Starting And Ending HTML Forms  You can create HTML forms by using the HTML and tags http://localhost/program.php <!-- Form element inserted here  </form>

35 9/4/2015CS346 PHP35 Creating Form Buttons  You can create submit and reset buttons by placing the following within & tags.  The submit button will be labeled “Click To Submit”. The reset button will be labeled “Erase and Restart”.

36 9/4/2015CS346 PHP36 Another Full Script Example 1.<html> 2. A Simple Form 2. A Simple Form 3.<body> 4.<form action="http://localhost/form.php” method="post" > method="post" > 5. Click submit to start our initial PHP program. 6. 6. 7. 7. 8. 8. 9. 9.

37 9/4/2015CS346 PHP37 A Full Example... A Full Example... The previous code can be executed at http://localhost/mod1/form.htmlhttp://localhost/mod1/form.html or http://localhost/mod1/form.html http://cs346.cs.uwosh.edu/huen/mod1/form.html

38 9/4/2015CS346 PHP38 name argument for the Submit Button Form Element  Submit button may take a name argument, when multiple submit buttons exist on a form  Use: to enable the receiving script to identify which button the user has clicked.

39 9/4/2015CS346 PHP39 Creating Text Input Boxes  Text input boxes create a form element for receiving a single line of text input.  Will be 15 characters wide accepting a maximum of 20 characters. Will set a variable named fname with value of whatever the end- user enter.

40 9/4/2015CS346 PHP40 Creating Password Boxes  Password boxes similar to text boxes except asterisks are displayed (instead of text input).  Will be 15 characters wide accepting a maximum of 20 characters. Will set a variable named pass1 with value of whatever the end- user enter.

41 9/4/2015CS346 PHP41 Warning: Password Boxes Not Secure  When the user submits the form, any data input is sent in clear text (nonencrypted) just like any other HTML form field.  Someone with network access could, therefore, read the password being transferred.  For this reason, most Web applications do not use this approach to receive and transmit passwords.

42 9/4/2015CS346 PHP42 Creating Text Areas  The following creates a text area containing 4 rows and 50 columns.  The words “Your comments here” are the default text.The variable name Comments will be available to the form-handling script.

43 9/4/2015CS346 PHP43 Creating Radio Buttons  Radio buttons are small circles that can select by clicking them with a mouse. Only one within a group can be selected at once.  The name argument must be the same for all radio buttons operating together. The value argument sets the variable value that will be available to the form-processing script.

44 9/4/2015CS346 PHP44 Creating Check Boxes  Check boxes are small boxes on a form that create a check mark when the user clicks them.  The above create four independent check boxes; that is, all four check box elements can be selected and each will set a value for a different variable name.

45 9/4/2015CS346 PHP45 Creating Check Boxes  Might want to create a set of check boxes that use the same name argument.  The value received by the form-processing script would be a comma-separated list of all items checked.

46 9/4/2015CS346 PHP46 Creating Selection Lists  Creates a box with a scrolling list of one or more items that user can highlight and select.  This HTML code creates four options formatted in a scrolling list. Only two of these options are displayed at the same time, and the user can select more than one option. Multiple selections are sent to the form-processing script as a comma-separated list.

47 9/4/2015CS346 PHP47 Receiving Form Input into PHP Scripts (OLD and INSECURE)  To receive HTML form input into a PHP script: Use a PHP var name that matches the variable defined in the form element’s name argument. Use a PHP var name that matches the variable defined in the form element’s name argument.  For example, if form uses the following:  Then form-handling PHP script could use a variable called $contact. If the user clicks the radio button, then $contact would = Yes If the user clicks the radio button, then $contact would = Yes

48 9/4/2015CS346 PHP48 Full Example  Suppose HTML form uses the following: Enter email address:  The php script may use $email to refer to the value of email from the browser in a user request $email to refer to the value of email from the browser in a user request

49 9/4/2015CS346 PHP49 HTML file: Enter email address: May we contact you? Yes No

50 9/4/2015CS346 PHP50 Response from PHP <html> Receiving Input Receiving Input <body> Thank You: Got Your Input. Thank You: Got Your Input. <?php print (" Your email address is $email"); print (" Your email address is $email"); print (" Contact preference is $contact"); print (" Contact preference is $contact"); ?> ?>

51 9/4/2015CS346 PHP51 A Full Example... A Full Example... The previous code can be executed at http://localhost/m06/6-0form_global_on.html http://localhost/m06/6-0form_global_on.html http://localhost/m06/6-0form_global_on.html And http://localhost/m06/6-0/form_global_on.php http://localhost/m06/6-0/form_global_on.phphttp://localhost/m06/6-0/form_global_on.php

52 9/4/2015CS346 PHP52 Register_Globals?  Since PHP 4.2.1, the default PHP configuration requires a different mechanism to receive input for security reasons (than the one just shown) PHP configuration option to turn REGISTER_GLOBALS OFF (new default) or PHP configuration option to turn REGISTER_GLOBALS OFF (new default) or ON in the php.ini configuration file. ON in the php.ini configuration file.  If your site has REGISTER_GLOBALS OFF you must use a different mechanism to receive HTML Form Variables.

53 9/4/2015CS346 PHP53 How can you tell if Register_Globals is OFF?  Enter the following PHP script and run it. Search through the output for REGISTER_GLOBALS and see if it is set to OFF or ON. Search through the output for REGISTER_GLOBALS and see if it is set to OFF or ON.  OR: search for REGISTER_GLOBALS in the file php.ini on your server  If it is off, how do you receive input data?  Research for a solution


Download ppt "9/4/2015CS346 PHP1 CHAPTER 2 Using Variables. 9/4/2015CS346 PHP2 Objectives  How to store and access data in PHP variables  How to create and manipulate."

Similar presentations


Ads by Google