SoFunction
Updated on 2025-04-09

PHP calls three database methods (2)

Open Database Connection (ODBC) has become an industrial standard for communicating with databases. PHP also provides standard interfaces, allowing PHP to call databases such as Access, SQL SERVER. The related functions are:

(1)integer odbc_connect(string dsn, string user, string password)

Connect to an ODBC database source name.

(2) integer odbc_exec(integer connection, string query) or odbc_do(integer connection, string query)

Perform a query on a connection.

(3)boolean odbc_fetch_row(integer result, integer row)

Get a row of data from a result set. The Row parameter is optional. If it is vacant, the next valid row will be returned. Return false when no rows remain in the result set.

(4)boolean odbc_close(integer connection)

Close a database connection. If there is an open transaction on the connection, an error is returned and the connection will not be closed.

Finally, let’s look at a pagination example:

<?

//Set the number of pieces displayed per page

$show_num = 10;

$spages = $pages;//Avoid the $pages being changed later

//Define the connection

$dsn = "localhost";

$user = "sa";

$password = "";

//Calculate the total number of records

$rs_num = "select count(*) as id from bbs where zu='0' and lei='".$lei."'";

$conn_id = odbc_connect($dsn,$user,$password);

$rnum = odbc_exec($conn_id,$rs_num);

while(odbc_fetch_row($rnum)){

$total_rs = odbc_result($rnum,"id");//Put the total number of records into the $total_rs variable

}

//Calculate the number of pages related to

$nnn = $total_rs / $show_num;//Calculate the total number of pages

$hnnn = intval($nnn);//Fill the total number of pages

$cnnnn = $nnn - $hnnn;

//Calculate the total number of pages required

switch ($cnnn){

case "0":

$hnnn++;

$nnn = $hnnn;//Total number of pages

break;

default :

$nnn = $hnnn;//Total number of pages

break;

};

if ($nnn == 0)$nnn++;

// Calculate the conditions required for page changes

$fore = $pages;

$next = $pages;

$fore -= 1;

$next += 1;

if ($fore > 0) {

echo "<a>Home</a>";

echo "<a>Previous Page</a>";

};

if ($pages < $nnn) {

echo "<a>back page</a>";

echo "<a>Last Page</a>";

};

echo "Total".$nnn."page";

$query_string = "SELECT * FROM table where condition order by you wanted order";

$cur = odbc_exec($conn_id,$query_string);

//Get to the top of the loop

$cnum = ($pages-1) * $show_num;//Calculate the position of the current record cursor

//Empty loop to display record cursor

if ($cnum != 0){

for ($i=0;$i<=$cnum;odbc_fetch_row($cur)){$i++;};

};

$i=1;

//Show records

while(odbc_fetch_row($cur)){

echo ;

if ($i == $show_num){//The program will pop up when the number of pages is not satisfied

break;

};

$i++;

};

//Close the connection

odbc_close($conn_id);

?>