SlideShare a Scribd company logo
SEG3560 Introduction to E-Commerce (Fall 2005)                            Tutorial – Php



                          SEG 3560 Introduction to E-Commerce
                                    Tutorial 4 – PHP
PHP Introduction
PHP (Hypertext Preprocessor), unlike Java Script which is a client-side HTML-embedded
script language, is a server-side HTML-embedded script language.

The functions of PHP are exactly the same as CGI. However, CGI is a stand-alone
component, while PHP is embedded inside HTML. More about PHP could be referred to the
official web site: http://www.php.net

PHP Basic
To declare a PHP section within an HTML document, just use the tag “<?” and “?>” and
change the file extension from “.html” (or “.htm”) to “.php”.

Example:




                             http://www.se.cuhk.edu.hk/~s3560_30/1.php

        <html>
        <head>
        <title>PHP Introduction</title>
        </head>

        <body>

        <?
         print("SEG 3560 Introduction to E-Commerce<br>");
         print("Tutorial 2<br>");
         print("A simple PHP demonstration<br>");

        echo "Hello World<br><br>";
        ?>

        </body>
        </html>




                                                                                 Page 1
SEG3560 Introduction to E-Commerce (Fall 2005)                                      Tutorial – Php



You could declare the PHP section in anywhere within the whole html document.

Example:




                             http://www.se.cuhk.edu.hk/~s3560_30/2.php

        <html>
        <head><title>PHP Introduction</title></head>

        <?
         print("<body link="#0000FF" vlink="#800080" alink="#FF0000">");
        ?>

        <?
        mail('xxx@xx.cuhk.edu.hk', 'Email Heading', 'Dear all, Testing only. By abc');
        ?>


        <p align="center"><img border="0" src="name_1.gif"
        width="478" height="86"></p>

        <?
         print("<p align="center"><font face="Arial">Click
                <a href="http://www.se.cuhk.edu.hk/~seg3560">here</a>
                to link to the ");
        ?>

        <b><font size="5" color="#FF0000">course web site</font></b>.</font> </p>

        </body>
        </html>




                                                                                           Page 2
SEG3560 Introduction to E-Commerce (Fall 2005)                               Tutorial – Php



PHP and Email

To send email using PHP automatically, use the mail function within PHP:
   mail(“email_address”, “heading”, “body”)

Example:
   <?
     mail(“abc@se.cuhk.edu.hk”, “Email Heading”, “Dear all, Testing only. By abc”)
   ?>




                                                                                     Page 3
SEG3560 Introduction to E-Commerce (Fall 2005)                              Tutorial – Php



Data Types and Variables
Every variable must begin with the symbol “$”. PHP support integer, double, string, and
array.

Example:




                             http://www.se.cuhk.edu.hk/~s3560_30/3.php

          <html>
          <head><title>PHP Introduction</title></head>

          <?
           $course="SEG".'3560';    // string
           $code=3450+110; // integer operation
           $num[0]=1;        // array
           $num[1]=2;        // array

           print("This course is $course $code<br>");
           print("This is tutorial $num[1]");
          ?>

          </body>
          </html>




                                                                                   Page 4
SEG3560 Introduction to E-Commerce (Fall 2005)                                       Tutorial – Php



Note that in PHP, you do not need to declare the data type. The data type of the variable will
be changed according to what you have stored in it.

Example:




                             http://www.se.cuhk.edu.hk/~s3560_30/4.php
        <html>
        <head>
        <title>PHP Introduction</title>
        </head>

        <?
         $variable = "SEG 3560";                 // initialize $variable to string
         print("The value is '$variable' (String)<br>");

         $variable = 10;                         // change it to integer
         print("The value is '$variable' (Integer)<br>");

         $variable = $variable + 10.1;          // change it to double
         print("The value is '$variable' (Double)<br>");

         $variable = "10.1 php" + $variable; // perform an operation
         print("The value is '$variable' (Double)<br>");
        ?>

        </body>
        </html>

However, it is a good practice that you do not change the data type of the variable frequently.




                                                                                            Page 5
SEG3560 Introduction to E-Commerce (Fall 2005)                               Tutorial – Php



PHP and Form

Consider the following form:




                           http://www.se.cuhk.edu.hk/~s3560_30/form.php
     <html>
     <head><title>Form</title></head>
     <body>
     <form method="POST"
      action="http://www.se.cuhk.edu.hk/~s3560_30/receive.php">

     <p>Username: <input type="text" name="USER" size="20"><br>
        Password: <input type="password" name="PSWD" size="20"></p>

     <p>I would like to learn:<br>
        <input type="checkbox" name="C1" value="Y">PHP
        <input type="checkbox" name="C2" value="Y">CGI
        <input type="checkbox" name="C3" value="Y">ASP
        <input type="checkbox" name="C4" value="Y">JAVA SCRIPT</p>

     <p>Sex: <input type="radio" value="B" name="SEX">M
         <input type="radio" value="G" name='SEX' checked >F

          Year of Study:
          <select size='1' name='YR'>
             <option>Year 1</option><option>Year 2</option><option>Year 3</option>
          </select></p>


                                                                                     Page 6
SEG3560 Introduction to E-Commerce (Fall 2005)                                Tutorial – Php



     <p>Comment about this course:<br>
        <textarea rows="3" name="COMMENT" cols="28"></textarea></p>

     <p><input type="submit" value="Submit" name="B1">
          <input type="reset" value="Reset" name="B2"></p>
     </form>
     </body>
     </html>




We could write the following PHP document to perform checking and displaying the result:




                                                                                     Page 7
SEG3560 Introduction to E-Commerce (Fall 2005)           Tutorial – Php



      <html>
      <head><title>Receive The Form</title><head>

      <body>
      <p><b><u><font face="Arial" color="#FF0000">
       You have enter the following information:
      </font></u></b></p>

      <p><font face="Arial">
        <font color="#0000FF"><b>Username: </b></font>
        <? print($_REQUEST['USER']); ?>
        <br>
        <font color="#0000FF"><b>Password: </b></font>
        <? print($_REQUEST['PSWD']); ?>
      </font></p>


      <p><font face="Arial">
        You are a
        <?
          if ($_REQUEST['SEX']=="B")
             print("boy");
          else
             print("girl");
        ?>
        studying in
        <? print($_REQUEST['YR']); ?>
      </font></p>

      <p><font face="Arial">
       <b>You want to learn: </b><br>
       <?
         if ($_REQUEST['C1']=="Y")
           print("PHP ");
         if ($_REQUEST['C2']=="Y")
           print("CGI ");
         if ($_REQUEST['C3']=="Y")
           print("ASP ");
         if ($_REQUEST['C4']=="Y")
           print("JAVA SCRIPT");
       ?>
      </font></p>

      <p><font face="Arial">
       <b>Your comment about the course is: </b><br>
       <?
         print($_REQUEST['COMMENT']);
       ?>
      </font></p>


      </body>
      </html>



                                                                Page 8
SEG3560 Introduction to E-Commerce (Fall 2005)                                         Tutorial – Php



PHP and Database Connection

In this tutorial, only the connection between PHP and oracle would be discussed. A revision
of SQL language could be found in the supplementary notes1 – SQL in this tutorial.
https://www-ssl.se.cuhk.edu.hk/intranet/tech/web_tech.html#PHP3


1. To initialize the connection:
   ora_logon (user_name, password) or die(‘Connection Error’);

    Example:
    Suppose we want to connect to the server SE with the username USER and password
    PSWD:
    <?
       /*Set Environment */
       putenv("ORACLE_SID=seora.se.cuhk.edu.hk");
       putenv("ORACLE_HOME=/usr/local/oracle");


         /*Opent the connection*/
         $handle = ora_logon('s3560_xx@seora','xxxxxxx') or die ("Connection error");
         $cursor = ora_open($handle);
    ?>

2. To send a query from Sybase through PHP:
   ora_parse (link , query);

    Example:
    Suppose we want to create the following table and input the data:

    first_db
       course (char)        student (int)
         'SEG3560'              150

    If we want to store information into oracle:
    <?
        ora_parse($cursor, "create table first_db (course char(10), student int)") ;
        ora_parse($cursor, "insert into first_db values('SEG3560', 150)");
    ?>




                                                                                              Page 9
SEG3560 Introduction to E-Commerce (Fall 2005)                        Tutorial – Php



3. To view the information retrieved from Sybase through PHP:
   ora_fetch (query_information)

    Example:
    <?
       ora_parse($cursor, "select * from first_db");
       ora_exec($cursor);
       ora_commit($handle);
       $numcols = 0;
       while(ora_fetch($cursor)){
              $numcols = ora_numcols($cursor);
              for($column=0; $column < $numcols; $column++){
                     $data = trim(ora_getcolumn($cursor, $column));
                     if($data =="") $data = "NULL";
                     echo"$datat";
              }
       }
    ?>


    Result:

    SEG3560 150




                                                                            Page 10
SEG3560 Introduction to E-Commerce (Fall 2005)                                      Tutorial – Php



Example:
  <html>
  <head>
  <title>PHP Introduction 123</title>
  </head>
  <?
  /*Set Environment */
  putenv("ORACLE_SID=seora.se.cuhk.edu.hk");
  putenv("ORACLE_HOME=/usr/local/oracle");

  /*Opent the connection*/
  $handle = ora_logon('s3560_30@seora','eFuoTyAp') or die ("Connection error");
  $cursor = ora_open($handle);
  ora_parse($cursor, "create table first_db (course char(10), student int)") or die("Sql 1
  error");
  ora_parse($cursor, "insert into first_db values('SEG3560', 150)") or die("Sql 2 error");
  /* Execute the sql*/
  ora_exec($cursor);
  ora_commit($handle);
  /*Close the connection*/
  ora_close($cursor);
  echo "Finished all the commands";
  ?>
  </body>
  </html>


    Create the table “first_db” and put an instance into the table.
    http://www.se.cuhk.edu.hk/~s3560_30/write_db.php
    Read the content in the table.
    http://www.se.cuhk.edu.hk/~s3560_30/read_db.php


    Be careful, the first link will work with sql error,




                                                                        ,
Think why?



                                                                                          Page 11
SEG3560 Introduction to E-Commerce (Fall 2005)                                             Tutorial – Php



         Tutorial 4 Supplementary Notes 1 – SQL

Example
Consider the following two tables, student_info and course_info:

student_info
 Name (char 20)            ID (int)         Department (char 3)     Supervisor (char 20)
     Agnes                00123456                SEM                    Prof. Cai
     Bonnie               00234567                 PSY                  Prof. Chan
      Clara               00345678                ECO                        -
      Doris               01234567                SEM                  Prof. Madan

course_info
  Course (char7)            Instructor (char 20)       Size (int)
    SEG3560                     Prof. Madan               98
    SEG3450                     Prof. Madan               84
    PSY3230                      Prof. Chan               25

Database Manipulation:
1. Create a table:
   create table table_name (attribute1 data_type, attribute2 data_type, …)

    Example:
    create the table course_info:
    create table course_info (course char(7), instructor char(20), size int)

2. Remove a table:
   drop table table_name

    Example:
    remove the table course_info:
    drop table course_info

Basic Database Access
1. Select Operation:
   select attibute1, attribute2, … from table1, table2, … where condition

    Example:
    Select all courses from the table course_info:
    select course from course_info

    Select all courses from the table course_info where the class size is greater then 50:
    select course from course_info where size>50

    Select all courses taught by Professor Madan:
    select course from course_info where instructor=’Prof. Madan’

    Select all courses offered by SEG:
    select course from course_info where course like ‘SEG%’

                                                                                                 Page 12
SEG3560 Introduction to E-Commerce (Fall 2005)                                    Tutorial – Php



    Select all students whose supervisor has taught at least one course:
    select student_info.name from student_info, course_info
    where student_info.supervisor=course_info.supervisor.

    Select all records from the table student_info
    select * from student_info

2. Insert Operation
   insert into table_name values (value1, value2, …)
                      OR
   insert into table_name values (attribute1=value1, attribute2=value2, …)

    Example:
    Insert the course SEG5010 taught by Professor Yu with class size 25 in the table:
    insert into course_info values (‘SEG5010’, ‘Prof. Yu’, 25)

    Insert the student Eddie (01345678) studying in ECO:
    insert into student_info values (name=‘Eddie’, id=01345678, department=‘ECO’)

3. Delete Operation
   delete from table_name where condition

    Example:
    Delete all records from the table course_info:
    delete from course_info

    Delete all students who are studying in ECO:
    delete from student_info where department=’ECO’

4. Update Operation:
   update table_name set attribute1=value1, attrubute2=value2… where condition

    Example:
    Change the class size of all classes to 40:
    update course_info set size=40

    Change the class size of the course PSY3230 to 40:
    update course_info set size=40 where course=’PSY3230’

Note:
Different databases support different data types. However, some data types are supported by
all databases, such as: integer (int), real number (real) and character (char (n)).




                                                                                        Page 13
SEG3560 Introduction to E-Commerce (Fall 2005)                                      Tutorial – Php



             Tutorial 4 Supplementary Note 2 – Web Page and Sybase

Creating web pages within SE department
1. Create a directory named /public_html under the root directory of your Unix account.

2. Upload or create all of the necessary files and directories to the directory /public_html

3. Change the access mode to all of the files and directories (as well as the /public_html) to
   755 (owner—full control of all the file/directory; group and public—only could read or
   execute the file/directory).

    If you are under Unix environment, simply type:
        Chmod –R 755 /public_html*
    in your root directory

4. You could view your web pages using the following URL:
      www.se.cuhk.edu.hk/~XXX
   where XXX is your account name.




                                                                                          Page 14

More Related Content

PDF
Practical PHP by example Jan Leth-Kjaer
PPT
Django Forms: Best Practices, Tips, Tricks
PPT
Php Tutorial | Introduction Demo | Basics
PPT
P H P Part I I, By Kian
PPS
Php Security3895
PPT
Short Intro to PHP and MySQL
PPTX
Sightly - Part 2
PDF
User authentication module using php
Practical PHP by example Jan Leth-Kjaer
Django Forms: Best Practices, Tips, Tricks
Php Tutorial | Introduction Demo | Basics
P H P Part I I, By Kian
Php Security3895
Short Intro to PHP and MySQL
Sightly - Part 2
User authentication module using php

What's hot (15)

PDF
PPS
PHP Security
PPT
Php Basic Security
PDF
Forms, Getting Your Money's Worth
PPT
What's new in Rails 2?
ODP
Cena-DTA PHP Conference 2011 Slides
PPTX
Spstc2011 managed metadata real world
KEY
KEY
Week 1 (v3)
KEY
PPTX
Stop the noise! - Introduction to the JSON:API specification in Drupal
PDF
Sperimentazioni di Tecnologie e Comunicazioni Multimediali: Lezione 5
PPTX
Introduction to CodeIgniter (RefreshAugusta, 20 May 2009)
PPTX
jQuery from the very beginning
PHP Security
Php Basic Security
Forms, Getting Your Money's Worth
What's new in Rails 2?
Cena-DTA PHP Conference 2011 Slides
Spstc2011 managed metadata real world
Week 1 (v3)
Stop the noise! - Introduction to the JSON:API specification in Drupal
Sperimentazioni di Tecnologie e Comunicazioni Multimediali: Lezione 5
Introduction to CodeIgniter (RefreshAugusta, 20 May 2009)
jQuery from the very beginning
Ad

Viewers also liked (13)

PDF
A A R O G Y A D E E P M A R A T H I B E S T S E L L E R O N M E D I C A L...
PPT
Transformers Episode 18 Atempt
PPT
El fútbol.odp v3
PPTX
La paradoja
DOC
Reache Ramirez CV
PPT
Lakshmi ppt
PPT
Transformers Episode 16 Omega Supreme
PDF
i care
PDF
Arritmias ssalzberg1
PDF
&lt;b>PHP 5&lt;/b> Classes and Objects
PDF
UD brochure color
DOCX
C5 - The Economic & Social Boycott of The Banu Hashim
A A R O G Y A D E E P M A R A T H I B E S T S E L L E R O N M E D I C A L...
Transformers Episode 18 Atempt
El fútbol.odp v3
La paradoja
Reache Ramirez CV
Lakshmi ppt
Transformers Episode 16 Omega Supreme
i care
Arritmias ssalzberg1
&lt;b>PHP 5&lt;/b> Classes and Objects
UD brochure color
C5 - The Economic & Social Boycott of The Banu Hashim
Ad

Similar to Tutorial_4_PHP (20)

PPTX
Introduction to PHP
PDF
Login and Registration form using oop in php
PPT
Introducation to php for beginners
PPT
Php with my sql
KEY
GettingStartedWithPHP
PDF
SULTHAN's - PHP MySQL programs
PDF
PHP and MySQL : Server Side Scripting For Web Development
PPT
PHP and MySQL.ppt
KEY
Geek Moot '09 -- Smarty 101
PPT
PHP-04-Forms PHP-04-Forms PHP-04-Forms PHP-04-Forms
ODP
Exploring Symfony's Code
PPT
PDF
PHP-Part4
PPT
PHP-04-Forms.ppt
PDF
PHP Arrays - indexed and associative array.
PPTX
Quick beginner to Lower-Advanced guide/tutorial in PHP
PDF
&lt;img src="../i/r_14.png" />
PDF
Blog Hacks 2011
PPT
Intro to php
Introduction to PHP
Login and Registration form using oop in php
Introducation to php for beginners
Php with my sql
GettingStartedWithPHP
SULTHAN's - PHP MySQL programs
PHP and MySQL : Server Side Scripting For Web Development
PHP and MySQL.ppt
Geek Moot '09 -- Smarty 101
PHP-04-Forms PHP-04-Forms PHP-04-Forms PHP-04-Forms
Exploring Symfony's Code
PHP-Part4
PHP-04-Forms.ppt
PHP Arrays - indexed and associative array.
Quick beginner to Lower-Advanced guide/tutorial in PHP
&lt;img src="../i/r_14.png" />
Blog Hacks 2011
Intro to php

More from tutorialsruby (20)

PDF
&lt;img src="../i/r_14.png" />
PDF
TopStyle Help &amp; &lt;b>Tutorial&lt;/b>
PDF
The Art Institute of Atlanta IMD 210 Fundamentals of Scripting &lt;b>...&lt;/b>
PDF
&lt;img src="../i/r_14.png" />
PDF
&lt;img src="../i/r_14.png" />
PDF
Standardization and Knowledge Transfer – INS0
PDF
xhtml_basics
PDF
xhtml_basics
PDF
xhtml-documentation
PDF
xhtml-documentation
PDF
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
PDF
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
PDF
HowTo_CSS
PDF
HowTo_CSS
PDF
BloggingWithStyle_2008
PDF
BloggingWithStyle_2008
PDF
cascadingstylesheets
PDF
cascadingstylesheets
&lt;img src="../i/r_14.png" />
TopStyle Help &amp; &lt;b>Tutorial&lt;/b>
The Art Institute of Atlanta IMD 210 Fundamentals of Scripting &lt;b>...&lt;/b>
&lt;img src="../i/r_14.png" />
&lt;img src="../i/r_14.png" />
Standardization and Knowledge Transfer – INS0
xhtml_basics
xhtml_basics
xhtml-documentation
xhtml-documentation
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
HowTo_CSS
HowTo_CSS
BloggingWithStyle_2008
BloggingWithStyle_2008
cascadingstylesheets
cascadingstylesheets

Recently uploaded (20)

PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
cuic standard and advanced reporting.pdf
PDF
KodekX | Application Modernization Development
PDF
Electronic commerce courselecture one. Pdf
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Approach and Philosophy of On baking technology
DOCX
The AUB Centre for AI in Media Proposal.docx
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Dropbox Q2 2025 Financial Results & Investor Presentation
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
20250228 LYD VKU AI Blended-Learning.pptx
MYSQL Presentation for SQL database connectivity
Advanced methodologies resolving dimensionality complications for autism neur...
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
cuic standard and advanced reporting.pdf
KodekX | Application Modernization Development
Electronic commerce courselecture one. Pdf
Spectral efficient network and resource selection model in 5G networks
NewMind AI Monthly Chronicles - July 2025
Review of recent advances in non-invasive hemoglobin estimation
NewMind AI Weekly Chronicles - August'25 Week I
Encapsulation_ Review paper, used for researhc scholars
Diabetes mellitus diagnosis method based random forest with bat algorithm
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Unlocking AI with Model Context Protocol (MCP)
Approach and Philosophy of On baking technology
The AUB Centre for AI in Media Proposal.docx

Tutorial_4_PHP

  • 1. SEG3560 Introduction to E-Commerce (Fall 2005) Tutorial – Php SEG 3560 Introduction to E-Commerce Tutorial 4 – PHP PHP Introduction PHP (Hypertext Preprocessor), unlike Java Script which is a client-side HTML-embedded script language, is a server-side HTML-embedded script language. The functions of PHP are exactly the same as CGI. However, CGI is a stand-alone component, while PHP is embedded inside HTML. More about PHP could be referred to the official web site: http://www.php.net PHP Basic To declare a PHP section within an HTML document, just use the tag “<?” and “?>” and change the file extension from “.html” (or “.htm”) to “.php”. Example: http://www.se.cuhk.edu.hk/~s3560_30/1.php <html> <head> <title>PHP Introduction</title> </head> <body> <? print("SEG 3560 Introduction to E-Commerce<br>"); print("Tutorial 2<br>"); print("A simple PHP demonstration<br>"); echo "Hello World<br><br>"; ?> </body> </html> Page 1
  • 2. SEG3560 Introduction to E-Commerce (Fall 2005) Tutorial – Php You could declare the PHP section in anywhere within the whole html document. Example: http://www.se.cuhk.edu.hk/~s3560_30/2.php <html> <head><title>PHP Introduction</title></head> <? print("<body link="#0000FF" vlink="#800080" alink="#FF0000">"); ?> <? mail('xxx@xx.cuhk.edu.hk', 'Email Heading', 'Dear all, Testing only. By abc'); ?> <p align="center"><img border="0" src="name_1.gif" width="478" height="86"></p> <? print("<p align="center"><font face="Arial">Click <a href="http://www.se.cuhk.edu.hk/~seg3560">here</a> to link to the "); ?> <b><font size="5" color="#FF0000">course web site</font></b>.</font> </p> </body> </html> Page 2
  • 3. SEG3560 Introduction to E-Commerce (Fall 2005) Tutorial – Php PHP and Email To send email using PHP automatically, use the mail function within PHP: mail(“email_address”, “heading”, “body”) Example: <? mail(“abc@se.cuhk.edu.hk”, “Email Heading”, “Dear all, Testing only. By abc”) ?> Page 3
  • 4. SEG3560 Introduction to E-Commerce (Fall 2005) Tutorial – Php Data Types and Variables Every variable must begin with the symbol “$”. PHP support integer, double, string, and array. Example: http://www.se.cuhk.edu.hk/~s3560_30/3.php <html> <head><title>PHP Introduction</title></head> <? $course="SEG".'3560'; // string $code=3450+110; // integer operation $num[0]=1; // array $num[1]=2; // array print("This course is $course $code<br>"); print("This is tutorial $num[1]"); ?> </body> </html> Page 4
  • 5. SEG3560 Introduction to E-Commerce (Fall 2005) Tutorial – Php Note that in PHP, you do not need to declare the data type. The data type of the variable will be changed according to what you have stored in it. Example: http://www.se.cuhk.edu.hk/~s3560_30/4.php <html> <head> <title>PHP Introduction</title> </head> <? $variable = "SEG 3560"; // initialize $variable to string print("The value is '$variable' (String)<br>"); $variable = 10; // change it to integer print("The value is '$variable' (Integer)<br>"); $variable = $variable + 10.1; // change it to double print("The value is '$variable' (Double)<br>"); $variable = "10.1 php" + $variable; // perform an operation print("The value is '$variable' (Double)<br>"); ?> </body> </html> However, it is a good practice that you do not change the data type of the variable frequently. Page 5
  • 6. SEG3560 Introduction to E-Commerce (Fall 2005) Tutorial – Php PHP and Form Consider the following form: http://www.se.cuhk.edu.hk/~s3560_30/form.php <html> <head><title>Form</title></head> <body> <form method="POST" action="http://www.se.cuhk.edu.hk/~s3560_30/receive.php"> <p>Username: <input type="text" name="USER" size="20"><br> Password: <input type="password" name="PSWD" size="20"></p> <p>I would like to learn:<br> <input type="checkbox" name="C1" value="Y">PHP <input type="checkbox" name="C2" value="Y">CGI <input type="checkbox" name="C3" value="Y">ASP <input type="checkbox" name="C4" value="Y">JAVA SCRIPT</p> <p>Sex: <input type="radio" value="B" name="SEX">M <input type="radio" value="G" name='SEX' checked >F Year of Study: <select size='1' name='YR'> <option>Year 1</option><option>Year 2</option><option>Year 3</option> </select></p> Page 6
  • 7. SEG3560 Introduction to E-Commerce (Fall 2005) Tutorial – Php <p>Comment about this course:<br> <textarea rows="3" name="COMMENT" cols="28"></textarea></p> <p><input type="submit" value="Submit" name="B1"> <input type="reset" value="Reset" name="B2"></p> </form> </body> </html> We could write the following PHP document to perform checking and displaying the result: Page 7
  • 8. SEG3560 Introduction to E-Commerce (Fall 2005) Tutorial – Php <html> <head><title>Receive The Form</title><head> <body> <p><b><u><font face="Arial" color="#FF0000"> You have enter the following information: </font></u></b></p> <p><font face="Arial"> <font color="#0000FF"><b>Username: </b></font> <? print($_REQUEST['USER']); ?> <br> <font color="#0000FF"><b>Password: </b></font> <? print($_REQUEST['PSWD']); ?> </font></p> <p><font face="Arial"> You are a <? if ($_REQUEST['SEX']=="B") print("boy"); else print("girl"); ?> studying in <? print($_REQUEST['YR']); ?> </font></p> <p><font face="Arial"> <b>You want to learn: </b><br> <? if ($_REQUEST['C1']=="Y") print("PHP "); if ($_REQUEST['C2']=="Y") print("CGI "); if ($_REQUEST['C3']=="Y") print("ASP "); if ($_REQUEST['C4']=="Y") print("JAVA SCRIPT"); ?> </font></p> <p><font face="Arial"> <b>Your comment about the course is: </b><br> <? print($_REQUEST['COMMENT']); ?> </font></p> </body> </html> Page 8
  • 9. SEG3560 Introduction to E-Commerce (Fall 2005) Tutorial – Php PHP and Database Connection In this tutorial, only the connection between PHP and oracle would be discussed. A revision of SQL language could be found in the supplementary notes1 – SQL in this tutorial. https://www-ssl.se.cuhk.edu.hk/intranet/tech/web_tech.html#PHP3 1. To initialize the connection: ora_logon (user_name, password) or die(‘Connection Error’); Example: Suppose we want to connect to the server SE with the username USER and password PSWD: <? /*Set Environment */ putenv("ORACLE_SID=seora.se.cuhk.edu.hk"); putenv("ORACLE_HOME=/usr/local/oracle"); /*Opent the connection*/ $handle = ora_logon('s3560_xx@seora','xxxxxxx') or die ("Connection error"); $cursor = ora_open($handle); ?> 2. To send a query from Sybase through PHP: ora_parse (link , query); Example: Suppose we want to create the following table and input the data: first_db course (char) student (int) 'SEG3560' 150 If we want to store information into oracle: <? ora_parse($cursor, "create table first_db (course char(10), student int)") ; ora_parse($cursor, "insert into first_db values('SEG3560', 150)"); ?> Page 9
  • 10. SEG3560 Introduction to E-Commerce (Fall 2005) Tutorial – Php 3. To view the information retrieved from Sybase through PHP: ora_fetch (query_information) Example: <? ora_parse($cursor, "select * from first_db"); ora_exec($cursor); ora_commit($handle); $numcols = 0; while(ora_fetch($cursor)){ $numcols = ora_numcols($cursor); for($column=0; $column < $numcols; $column++){ $data = trim(ora_getcolumn($cursor, $column)); if($data =="") $data = "NULL"; echo"$datat"; } } ?> Result: SEG3560 150 Page 10
  • 11. SEG3560 Introduction to E-Commerce (Fall 2005) Tutorial – Php Example: <html> <head> <title>PHP Introduction 123</title> </head> <? /*Set Environment */ putenv("ORACLE_SID=seora.se.cuhk.edu.hk"); putenv("ORACLE_HOME=/usr/local/oracle"); /*Opent the connection*/ $handle = ora_logon('s3560_30@seora','eFuoTyAp') or die ("Connection error"); $cursor = ora_open($handle); ora_parse($cursor, "create table first_db (course char(10), student int)") or die("Sql 1 error"); ora_parse($cursor, "insert into first_db values('SEG3560', 150)") or die("Sql 2 error"); /* Execute the sql*/ ora_exec($cursor); ora_commit($handle); /*Close the connection*/ ora_close($cursor); echo "Finished all the commands"; ?> </body> </html> Create the table “first_db” and put an instance into the table. http://www.se.cuhk.edu.hk/~s3560_30/write_db.php Read the content in the table. http://www.se.cuhk.edu.hk/~s3560_30/read_db.php Be careful, the first link will work with sql error, , Think why? Page 11
  • 12. SEG3560 Introduction to E-Commerce (Fall 2005) Tutorial – Php Tutorial 4 Supplementary Notes 1 – SQL Example Consider the following two tables, student_info and course_info: student_info Name (char 20) ID (int) Department (char 3) Supervisor (char 20) Agnes 00123456 SEM Prof. Cai Bonnie 00234567 PSY Prof. Chan Clara 00345678 ECO - Doris 01234567 SEM Prof. Madan course_info Course (char7) Instructor (char 20) Size (int) SEG3560 Prof. Madan 98 SEG3450 Prof. Madan 84 PSY3230 Prof. Chan 25 Database Manipulation: 1. Create a table: create table table_name (attribute1 data_type, attribute2 data_type, …) Example: create the table course_info: create table course_info (course char(7), instructor char(20), size int) 2. Remove a table: drop table table_name Example: remove the table course_info: drop table course_info Basic Database Access 1. Select Operation: select attibute1, attribute2, … from table1, table2, … where condition Example: Select all courses from the table course_info: select course from course_info Select all courses from the table course_info where the class size is greater then 50: select course from course_info where size>50 Select all courses taught by Professor Madan: select course from course_info where instructor=’Prof. Madan’ Select all courses offered by SEG: select course from course_info where course like ‘SEG%’ Page 12
  • 13. SEG3560 Introduction to E-Commerce (Fall 2005) Tutorial – Php Select all students whose supervisor has taught at least one course: select student_info.name from student_info, course_info where student_info.supervisor=course_info.supervisor. Select all records from the table student_info select * from student_info 2. Insert Operation insert into table_name values (value1, value2, …) OR insert into table_name values (attribute1=value1, attribute2=value2, …) Example: Insert the course SEG5010 taught by Professor Yu with class size 25 in the table: insert into course_info values (‘SEG5010’, ‘Prof. Yu’, 25) Insert the student Eddie (01345678) studying in ECO: insert into student_info values (name=‘Eddie’, id=01345678, department=‘ECO’) 3. Delete Operation delete from table_name where condition Example: Delete all records from the table course_info: delete from course_info Delete all students who are studying in ECO: delete from student_info where department=’ECO’ 4. Update Operation: update table_name set attribute1=value1, attrubute2=value2… where condition Example: Change the class size of all classes to 40: update course_info set size=40 Change the class size of the course PSY3230 to 40: update course_info set size=40 where course=’PSY3230’ Note: Different databases support different data types. However, some data types are supported by all databases, such as: integer (int), real number (real) and character (char (n)). Page 13
  • 14. SEG3560 Introduction to E-Commerce (Fall 2005) Tutorial – Php Tutorial 4 Supplementary Note 2 – Web Page and Sybase Creating web pages within SE department 1. Create a directory named /public_html under the root directory of your Unix account. 2. Upload or create all of the necessary files and directories to the directory /public_html 3. Change the access mode to all of the files and directories (as well as the /public_html) to 755 (owner—full control of all the file/directory; group and public—only could read or execute the file/directory). If you are under Unix environment, simply type: Chmod –R 755 /public_html* in your root directory 4. You could view your web pages using the following URL: www.se.cuhk.edu.hk/~XXX where XXX is your account name. Page 14