PHP Database Access

Download Report

Transcript PHP Database Access

PHP & SQL
Xingquan (Hill) Zhu
[email protected]
PHP
1-1
PHP&SQL
 Relational Database systems
 Structured Query Language: SQL
 Access MySQL on Pluto server
 Create table, add records, query, and delete
records
 PHP MySQL database access
 Connect to MySQL server
 Select database
 Query
 Show the results
PHP
1-2
Relational database systems
 A collection of tables of data


Each table can have any number of rows and columns of data
The columns of a table are named
• Attributes

Each row usually contains a value for each column
Rows of a table are often referred to as entries
Primary keys

Both data values and primary key values in a table are called field


• One column which uniquely identify the rows of the table
ID First_name
Last_Name
Lobster Crab
Apple
Orange Comments
1
Hill
Zhu
2
1
2
0
Good
2
Hill
Ford
1
2
0
0
Good
3
Ford
James
0
0
1
1
Super
PHP
1-3
Structured Query Language: SQL
 Language for specifying access and modification to
relational database
 Different from most programming language

More like a structure form of English
 Reserved words are not case sensitive
 SELECT and select are equivalent
 The whitespace separating reserved words and clauses
is ignored

Commands can be spread across several lines
 Simple SQL process
 Create database
 Use database
 Create table
 Add records
 Search records
PHP
1-4
Access SQL on Pluto
 Download putty
(http://www.chiark.greenend.org.uk/~sgtatham/putty/)
 Download -> putty.exe -> open
PHP
1-5
Access SQL on Pluto
Your fau ID
Username: Your fau ID
Password: Your fau ID
PHP
1-6
Access SQL on Pluto
Your FAU ID again
MySql version
PHP
1-7
You are not able to create a database
on Pluto, but select your own database
 Use YourFAUID;
 You are only able to use your
own db, TSG created for you
PHP
1-8
Create a table
Table name, you name it
 create table orderTbl(ID int not null primary key
auto_increment, first_name varchar(30), last_name
varchar(30), lobster int, crab int, apple int, orange
int, comments varchar(30));
PHP
1-9
Insert Records
 Insert into orderTbl(ID, first_name, last_name,
lobster, crab, apple, orange, comments) values (1,
“Hill”, “Zhu”, 2, 1, 2, 0, “Good”);
PHP
1-10
Query the database
 List all the records
 Select * from orderTbl;
PHP
1-11
Query the database
 Select first_name, last_name from orderTbl;
PHP
1-12
Query the database
 Select * from orderTbl where first_name=“Hill”;
PHP
1-13
Delete records
 Delete from table where xx=y
 Delete from orderTbl where last_name=“Ford”;
PHP
1-14
PHP&SQL
 Relational Database systems
 Structured Query Language: SQL
 Access MySQL on Pluto server
 Create table, add records, query, and delete
records
 PHP MySQL database access
 Connect to MySQL server
 Select database
 Query
 Show the results
PHP
1-15
An Important Step
 Login into pluto mySQL server
 Execute the following command

SET PASSWORD FOR ‘yourfauid’@’localhost’ =
OLD_PASSWORD(‘yourfauid’);
 Otherwise, you will not be able to connect to mySQL server


Error message “Client does not support authentication protocol ”
Some sort of protocol problem
PHP
1-16
Php connect to MySQL server
 Connect to a MySQL server
 $db = mysql_connect($hostname, $username, $userpasswd);
 Select database
 $er = mysql_select_db("customer", $db);









$hostname="localhost";
It’s YourFauId if use pluto
$username="hill";
$userpasswd="hill";
$db = mysql_connect($hostname, $username, $userpasswd);
if (!$db)
{
print ("Error - Could not connect to MySQL");
exit;
}
Database.php
PHP
1-17
PHP SQL Query
 $qresult = mysql_query($query);
The query string should not end with a semicolon.
 Return “false” on error
 Return a complex “resource” structure on
success

$num_rows = mysql_num_rows($qresult);
 $num_fields = mysql_num_fields($qresult);
 $row = mysql_fetch_array($qresult);

PHP
1-18
PHP SQL Query
 $row = mysql_fetch_array($qresult);
 Calling Mysql_fetch_array() each time will return one row
of the retrieved records (from the top to the bottom)
 $row is a special array
 It has two elements for each field
 The first element consists of the system assigned key (0,
1, 2…) along with the field value
 The second element uses attribute name as the key
(“first_name”…), along with the field value
 So you can use either of the following forms
• $row[0], $row[1]….
• $row[“first_name”], $row[“last_name”]….
PHP
1-19
PHP SQL Query
 A simple PHP query example
Customer.html accesscustomer.php
PHP
1-20
PHP Insert A record
 $sqlquery = INSERT INTO $table
VALUES($id, $first_name, $last_name,
$lobval, $crbval, $appval,
$orgval,$comments);
 Insert order information into the database
Formselection.php formcheckout.php
formprocesswithDB.php
mysqlDBProcess.inc
PHP
1-21
PHP&SQL
 Relational Database systems
 Structured Query Language: SQL
 Access MySQL on Pluto server
 Create table, add records, query, and delete
records
 PHP MySQL database access
 Connect to MySQL server
 Select database
 Query
 Show the results
PHP
1-22