Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
74 views

PHP Postgresql

This document provides an introduction and overview of PHP and using it with PostgreSQL. It discusses what PHP is used for, how to write basic PHP code and embed it in HTML, use variables and arrays, handle forms, and connect to and query a PostgreSQL database. An example is given of a PHP script connecting to a PostgreSQL database, querying a table, and outputting the results.

Uploaded by

Elie NGOMSEU
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
74 views

PHP Postgresql

This document provides an introduction and overview of PHP and using it with PostgreSQL. It discusses what PHP is used for, how to write basic PHP code and embed it in HTML, use variables and arrays, handle forms, and connect to and query a PostgreSQL database. An example is given of a PHP script connecting to a PostgreSQL database, querying a table, and outputting the results.

Uploaded by

Elie NGOMSEU
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 18

Introduction to PHP and

PostgreSQL
CSC 436 – Fall 2008

Slides based on PHP manual “Getting Started” from


http://www.php.net/tut.php
PHP - Overview
Introduction
Tutorial
Installation
PostgreSQL with PHP
Extended example
Introduction
PHP (recursive acronym for "PHP: Hypertext
Preprocessor")
 widely-used Open Source general-purpose scripting
language
 especially suited for Web development
 can be embedded into HTML.
<html>
<head>
<title>Example</title>
</head>
<body>
<?php echo "Hi, I'm a PHP script!"; ?>
</body>
</html>
See this example here:
What can PHP do?
Server-side scripting
 most traditional and main target field
 need three things to make this work
 PHP parser (CGI or server module)
 webserver – with connected PHP installation
 web browser
Command line scripting
 PHP script to run it without any server or browser
 need the PHP parser to use it this way
Writing client-side GUI applications
 not the best language to write windowing applications
 use PHP-GTK to write such programs
Tutorial
What do I need?
Your first PHP-enabled page
Something Useful
Dealing with Forms
What's next?
What do I need?
Assume that your server has support for PHP
activated and that all files ending in .php are
handled by PHP
Create your .php files and put them in your
web directory and the server will magically
parse them for you
No need to compile anything
Develop locally
 install a web server, such as Apache
 install PHP
 install a database as well, such as PostgreSQL.
First PHP-enabled page
Create a file named hello.php
Put it in your web servers directory
<html>
<head>
<title>PHP Test</title>
</head>
<body>
<?php echo "<p>Hello World</p>"; ?>
</body>
</html>

Use your browser to access the file


Something useful
check what sort of browser the person viewing the page is
using
 check the user agent string that the browser sends as part of its
HTTP request
 stored in a variable
 always start with a dollar-sign in PHP
 $_SERVER["HTTP_USER_AGENT"].
 $_SERVER is a special reserved PHP variable that contains all web
server information
<html>
<head>
<title>PHP Test</title>
</head>
<body>
<?php echo $_SERVER["HTTP_USER_AGENT"]; ?>
</body>
</html> (see this file)
Variables
Variables represented by a dollar sign followed
by the name of the variable
 name is case-sensitive.
 name starts with a letter or underscore, followed by
any number of letters, numbers, or underscores
 type is assigned by value
<?php
$var = "Bob";
$Var = "Joe";
echo "$var, $Var"; // outputs "Bob, Joe"
$x = 1;
$x = ‘abc’; // type can change if value changes
$4site = 'not yet'; // invalid; starts with a number $_4site =
'not yet'; // valid; starts with an underscore
?>
Arrays
created by the array() language-
construct
takes a certain number of comma-
separated key => value pairs
<?php
$arr = array("foo" => "bar", 12 => true);
echo $arr["foo"]; // bar
echo $arr[12]; // 1
?> (see it here
)
Arrays (cont.)
<?php // Create a simple array.
$array = array(1, 2, 3, 4, 5);
print_r($array);

// Now delete every item, but leave the array


// itself intact:
foreach ($array as $i => $value) { unset($array[$i]);
}
print_r($array);
// Append an item (note that the new key is 5,
// instead of 0 as you might expect).
$array[] = 6;
print_r($array);
// Re-index:
$array = array_values($array);
$array[] = 7;
print_r($array);
?> (see result here)
Dealing with forms
HTML Forms (GET and POST)
 form is submitted to a PHP script
 information from that form is
automatically made available to the
script
 forms.php
<form action="foo.php" method="POST">
Name: <input type="text" name="username"><br>
Email: <input type="text" name="email"><br>
<input type="submit" name="submit"
value="Submit me!">
</form>
Forms – foo.php
<?php // Available since PHP 4.1.0

print $_POST['username'];
print $_REQUEST['username'];
import_request_variables('p', 'p_');
print $p_username;

// Available since PHP 3. As of PHP 5.0.0, these long


// predefined variables can be disabled with the
// register_long_arrays directive.

print $HTTP_POST_VARS['username'];

// Available if the PHP directive register_globals = on.


// As of PHP 4.2.0 the default value of
// register_globals = off.
// Using/relying on this method is not preferred.

print $username; ?> (see result here)


Another forms example
info_form.php
<form action=“show_answers.php” method="POST">
Your name: <input type="text" name="name" />
Your age: <input type="text" name="age" />
<input type="submit">
</form>

show_answers.php
Hi
<?php echo $_POST["name"]; ?>.
You are <?php echo $_POST["age"]; ?> years old.

(see results here)


Installation
PHP is installed on the Linux servers in
the CSC department
You can install it on your own machine
if you want
Refer to the PHP manual for instructions
on installation
http://www.php.net/manual/en/install.php
PosgreSQL with PHP

Assume the following database table and data:


CREATE TABLE employees
( id tinyint(4) DEFAULT '0' NOT NULL AUTO_INCREMENT,
first varchar(20),
last varchar(20),
address varchar(255),
position varchar(50),
PRIMARY KEY (id),
UNIQUE id (id));

INSERT INTO employees VALUES


(1,'Bob','Smith','128 Here St, Cityname',
'Marketing Manager');
INSERT INTO employees VALUES
(2,'John','Roberts','45 There St ,Townville',
'Telephonist');
INSERT INTO employees VALUES
(3,'Brad','Johnson','1/34 Nowhere Blvd, Snowston',
'Doorman');
PostgreSQL Example (cont)
<html>
<body>
<?php
$db = pg_connect(“dbname=sam user=sam password=iam")
or die(“Couldn’t Connect: “.pg_last_error($db));
$query=“SELECT * FROM employees”;
$result = pg_query($db,$query)
or
die(“Error in query: $query.”.pg_last_error($db));
$rows = pg_num_rows($result);
if ($rows > 0) {
for ($i=0; $i<$rows; $i++){
$my_row = pg_fetch_array($result, $i, PGSQL_ASSOC);
printf("First Name: %s",$my_row[“first”]);
printf("Last Name: %s", $my_row[“last“]);
printf("Address: %s", $my_row[“address“]);
printf("Position: %s",$my_row["position“]);
printf(“\n”);
}
}
pg_close($db);
?>
</body>
</html>
Extended Example – Toy Catalog
Toy Catalog – as described in class
Assume database tables created
Assume data inserted into data
Start with html form page

You might also like