|
|
PHP (angielski akronim rekurencyjny, którego rozwinięcie to PHP Hypertext Preprocessor), pierwotnie nazwany Personal
Home Page - skryptowy język programowania, służący przede wszystkim do tworzenia dynamicznych stron WWW i wykonywany w
tym przypadku po stronie serwera, z możliwością zagnieżdżania w HTML (bądź XHTML). PHP jest podobny w założeniach do
dużo starszego mechanizmu SSI (Server Side Includes), jednak jest w stosunku do SSI nieporównanie bardziej rozbudowany.
Udostępniany jest na zasadach licencji open-source. Jego składnia bazuje na językach C, Java i Perl.
SQL (ang. Structured Query Language) to strukturalny język zapytań używany do tworzenia, modyfikowania baz danych oraz
do umieszczania i pobierania danych z baz danych.
Język SQL jest językiem deklaratywnym. Decyzję o sposobie przechowywania i pobrania danych pozostawia się systemowi
zarządzania bazą danych DBMS.
Jest to język programowania opracowany w latach siedemdziesiątych w firmie IBM. Stał się on standardem w komunikacji z
serwerami relacyjnych baz danych. Wiele współczesnych systemów relacyjnych baz danych używa do komunikacji z
użytkownikiem SQL, dlatego mówi się, że korzystanie z relacyjnych baz danych, to korzystanie z SQL-a.
Apache jest otwartym serwerem HTTP dostępnym dla wielu systemów operacyjnych (m.in. UNIX, GNU/Linux, BSD,
Microsoft Windows). Po angielsku słowo Apache wymawia się epaczi, co brzmi tak samo jak a patchy (server), co było
określeniem tego serwera we wczesnym stadium jego rozwoju w 1995 roku, kiedy był on głównie zbiorem poprawek (patch)
nałożonych na serwer HTTP o nazwie NCSA.
Apache jest najszerzej stosowanym serwerem HTTP w Internecie. W maju 2003 jego udział wśród serwerów wynosił 62%. W
połączeniu z interpreterem języka skryptowego PHP i bazą danych MySQL, Apache stanowi jedno z najczęściej spotykanych
środowisk w firmach oferujących miejsce na serwerach sieciowych.
|
oci_new_connect
(PHP 5) oci_new_connect -- Establishes a new connection
to the Oracle server
Descriptionresource oci_new_connect ( string username, string
password [, string db [, string charset [, int session_mode]]]
)
oci_new_connect() establishes a new
connection to an Oracle server and logs on. Unlike oci_connect() and oci_pconnect(), oci_new_connect() does not cache connections and
will always return a brand-new freshly opened connection
handle. This is useful if your application needs transactional
isolation between two sets of queries.
The optional third parameter can either contain the name of
the local Oracle instance or the name of the entry in
tnsnames.ora. If the third parameter
is not specified, PHP uses environment variables ORACLE_SID and TWO_TASK to determine the name of local Oracle
instance and location of tnsnames.ora
accordingly.
Parameter session_mode is
available since version 1.1 and accepts the following values:
OCI_DEFAULT, OCI_SYSOPER and OCI_SYSDBA. If either OCI_SYSOPER or OCI_SYSDBA were specified, oci_new_connect() will try to establish
privileged connection using external credentials. Privileged
connections are disabled by default. To enable them you need to
set oci8.privileged_connect
to On.
Używając serwera Oracle w wersji 9.2 lub nowszej można podać
parametr charset, który zostanie
użyty przy nowym połączeniu. Używając serwera Oracle < 9.2
ten parametr zostanie zignorowany, a zamiast niego użyta
zostanie zmienna środowiskowa NLS_LANG.
The following demonstrates how you can separate
connections.
Przykład 1. oci_new_connect() example
<?php echo "<html><pre>";
$db = "";
$c1 = oci_connect("scott", "tiger", $db); $c2 = oci_new_connect("scott", "tiger", $db);
function create_table($conn)
{
$stmt = oci_parse($conn, "create table scott.hallo (test
varchar2(64))");
oci_execute($stmt);
echo $conn . " created table\n\n";
}
function drop_table($conn)
{
$stmt = oci_parse($conn, "drop table scott.hallo");
oci_execute($stmt);
echo $conn . " dropped table\n\n";
}
function insert_data($conn)
{
$stmt = oci_parse($conn, "insert into scott.hallo
values('$conn' || ' ' || to_char(sysdate,'DD-MON-YY HH24:MI:SS'))");
oci_execute($stmt, OCI_DEFAULT);
echo $conn . " inserted hallo\n\n";
}
function delete_data($conn)
{
$stmt = oci_parse($conn, "delete from scott.hallo");
oci_execute($stmt, OCI_DEFAULT);
echo $conn . " deleted hallo\n\n";
}
function commit($conn)
{
oci_commit($conn);
echo $conn . " committed\n\n";
}
function rollback($conn)
{
oci_rollback($conn);
echo $conn . " rollback\n\n";
}
function select_data($conn)
{
$stmt = oci_parse($conn, "select * from scott.hallo");
oci_execute($stmt, OCI_DEFAULT);
echo $conn . "----selecting\n\n";
while (oci_fetch($stmt)) {
echo $conn . " <" . oci_result($stmt, "TEST") . ">\n\n";
}
echo $conn . "----done\n\n";
}
create_table($c1); insert_data($c1);
select_data($c1); select_data($c2);
rollback($c1);
select_data($c1); select_data($c2);
insert_data($c2); commit($c2);
select_data($c1);
delete_data($c1); select_data($c1); select_data($c2); commit($c1);
select_data($c1); select_data($c2);
drop_table($c1);
echo "</pre></html>";
?> |
|
oci_new_connect() returns FALSE on error.
Notatka: In PHP versions before 5.0.0 you must
use ocinlogon() instead. This name still can
be used, it was left as alias of oci_new_connect() for downwards
compatability. This, however, is deprecated and not
recommended.
See also oci_connect() and oci_pconnect().
|