|
|
|
OCI8 การใช้คำสั่งนับเรคคอร์ด โดยเขียนเป็นฟังก์ชั่น |
|
|
|
|
|
|
|
ใช้แบบนี้ครับ
Code (PHP)
$objConnect = oci_connect("myuser","mypassword","TCDB");
$strSQL = "SELECT * FROM CUSTOMER ORDER BY CUSTOMERID ASC";
$objParse = oci_parse ($objConnect, $strSQL);
oci_execute ($objParse,OCI_DEFAULT);
$Num_Rows = oci_fetch_all($objParse, $Result);
|
|
|
|
|
Date :
2012-03-21 17:41:36 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณ คุณ mr.win มากค่ะ ตอนนี้เอาโค้ดที่ให้ไปประยุกต์ใช้โดยเขียนฟังก์ชั่นเพิ่มขึ้นมาเป็น
Code (PHP)
function fncCountRecord($Connect,$strTable,$strCondition){
$strSQL = "select * FROM $strTable WHERE $strCondition ";
$objParse = oci_parse($Connect, $strSQL);
oci_execute($objParse, OCI_DEFAULT);
$Num_Rows = oci_fetch_all($objParse, $Result);
return $Num_Rows;
} //ให้รีเทรินค่าของ $Num_Rows; ออกมาเลย
ส่วนในหน้าที่เรียกใช้ฟังก์ชั่นก็ใช้เป็น
Code (PHP)
$strTable = "DAPS_USER";
$strCondition = " USERNAME = '$user' and TYPE = 'y' ";
$Num_Rows = fncCountRecord($objConnect,$strTable,$strCondition);
// ก็จะได้ค่า $Num_Rows
|
|
|
|
|
Date :
2012-03-22 09:38:41 |
By :
Inwpetdo |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตกลงได้หรือยังครับ ?
|
|
|
|
|
Date :
2012-03-22 09:46:10 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ได้แล้วคะ แต่ตอนนี้ติดตรงแบ่งหน้าคะ อ้างอิงจากบทความ https://www.thaicreate.com/php/php-oracle-list-record-paging.html คือ อยากเขียนเป็นแบบฟังก์ชั่น
Code (admin_home.php)
include("model/model_user.php");
$strTable = "daps_user";
// $strCondition = " select d.regn,d.act3,d.act5,d.urno from daps_acrtab d ";
$objResult = fncSelectRecordAll($objConnect,$strTable);
$Num_Rows = fncCountRecordAll($objConnect,$strTable);
// $Num_Rows = 0;
// while($objSelect)$Num_Rows++; // Count Record
$Per_Page = 10; // Per Page
$Page = $_GET["Page"];
if(!$_GET["Page"])
{
$Page=1;
}
$Prev_Page = $Page-1;
$Next_Page = $Page+1;
$Page_Start = (($Per_Page*$Page)-$Per_Page)+1;
if($Num_Rows<=$Per_Page)
{
$Num_Pages =1;
}
else if(($Num_Rows % $Per_Page)==0)
{
$Num_Pages =($Num_Rows/$Per_Page) ;
}
else
{
$Num_Pages =($Num_Rows/$Per_Page)+1;
$Num_Pages = (int)$Num_Pages;
}
$Page_End = $Per_Page * $Page;
if($Page_End > $Num_Rows)
{
$Page_End = $Num_Rows;
}
for($i=$Page_Start;$i<=$Page_End;$i++){
// $objResult = odbc_fetch_array($objSelect,$i);
$status = $objResult[STATUS][$i];
echo "status$status";
if($status == '1'){
$status = 'ผู้ดูแลระบบ';
}else if($status == '2'){
$status = 'สมาชิก';
}
$type = $objResult[TYPE][$i];
if($type == 'y'){
$type = 'ใช้งานได้';
}else if($type == 'n'){
$type = 'ถูกระงับการใข้งาน';
}
// $objExec = $acr->selectUn();
// $i = 0;
// $seton["0"] = "false"; $seton["1"] = "true";
// while($objResult = odbc_fetch_array($objSelect))
// {
// $i++;
?>
<tr id="tr<?=$i;?>">
<td align="center" height="20"> <input type="hidden" name="username" value="<?=$objResult["USERNAME"][$i];?>" OnClick="ClickMakeColor(this,'tr<?=$i;?>');" > <?=$objResult["USERNAME"][$i];?></td>
<td><div align="center">
<input type="hidden" name="firstname" value="<?=$objResult["FIRSTNAME"][$i];?>">
<?=$objResult["FIRSTNAME"][$i];?>
</div></td>
<td><input type="hidden" name="lastname" value="<?=$objResult["LASTNAME"][$i];?>">
<?=$objResult["LASTNAME"][$i];?></td>
<td><input type="hidden" name="status" value="<? echo $status; ?>">
<? echo $status; ?></td>
<td><input type="hidden" name="type" value="<? echo $type; ?>">
<? echo $type; ?></td>
<td ><a href='admin_edit.php?user=<?=$objResult["USERNAME"][$i];?>'><img src='images/edit button.png' width='15' height='15' border='0' align="middle" /></a></td>
</tr>
model_user.php
function fncSelectRecordAll($Connect,$strTable)
{
$strSQL = "SELECT * FROM $strTable order by username ";
// echo "$strSQL";
$objParse = oci_parse($Connect, $strSQL);
oci_execute($objParse, OCI_DEFAULT);
return oci_fetch_array($objParse);
}
function fncCountRecordAll($Connect,$strTable)
{
$strSQL = "SELECT * FROM $strTable order by username ";
// echo "$strSQL";
$objParse = oci_parse($Connect, $strSQL);
oci_execute($objParse, OCI_DEFAULT);
$Num_Rows = oci_fetch_all($objParse, $Result);
return $Num_Rows;
}
ต่ผลลัพธ์ไม่ออกคะ ออกเป็นตัวอักษรตัวเดียว ในแต่ละช่องคอลัมน์คะ
|
|
|
|
|
Date :
2012-03-22 11:26:58 |
By :
Inwpetdo |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แงๆ ช่วยหน่อยคะ
|
|
|
|
|
Date :
2012-03-22 13:57:15 |
By :
Inwpetdo |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ข้อมูลมีสองเรคคอร์ด แต่ข้อมูลออกมาแค่เรคคอร์ดเดียว ไม่ทราบว่าเป็นที่ตรงไหน ลอง echo ตัวแปร i ออกมาแล้วก็เป็นสองแต่ งง ว่าทำไมข้อมูลออกแค่เรคคอร์ดเดียว
Code (PHP)
<?
$objConnect = oci_connect("sfif","sfif","192.168.1.154/gocc");
$strSQL = "SELECT * FROM daps_user ORDER BY username ";
$objParse = oci_parse ($objConnect, $strSQL);
oci_execute ($objParse,OCI_DEFAULT);
$Num_Rows = oci_fetch_all($objParse, $Result);
/* include("model/model_user.php");
$strTable = "daps_user";
$strCondition = " select d.regn,d.act3,d.act5,d.urno from daps_acrtab d ";
$objResult = fncSelectRecordAll($objConnect,$strTable);
$Num_Rows = fncCountRecordAll($objConnect,$strTable); */
// $Num_Rows = 0;
// while($objSelect)$Num_Rows++; // Count Record
$Per_Page = 10; // Per Page
$Page = $_GET["Page"];
if(!$_GET["Page"])
{
$Page=1;
}
$Prev_Page = $Page-1;
$Next_Page = $Page+1;
$Page_Start = (($Per_Page*$Page)-$Per_Page)+1;
if($Num_Rows<=$Per_Page)
{
$Num_Pages =1;
}
else if(($Num_Rows % $Per_Page)==0)
{
$Num_Pages =($Num_Rows/$Per_Page) ;
}
else
{
$Num_Pages =($Num_Rows/$Per_Page)+1;
$Num_Pages = (int)$Num_Pages;
}
$Page_End = $Per_Page * $Page;
if($Page_End > $Num_Rows)
{
$Page_End = $Num_Rows;
}
for($i=$Page_Start;$i<=$Page_End;$i++){
// $objResult = odbc_fetch_array($objResult,$i);
$status = $Result[STATUS][$i];
echo "i$i";
echo "status$status";
if($status == '1'){
$status = 'ผู้ดูแลระบบ';
}else if($status == '2'){
$status = 'สมาชิก';
}
$type = $Result[TYPE][$i];
if($type == 'y'){
$type = 'ใช้งานได้';
}else if($type == 'n'){
$type = 'ถูกระงับการใข้งาน';
}
// $objExec = $acr->selectUn();
// $i = 0;
// $seton["0"] = "false"; $seton["1"] = "true";
// while($objResult = odbc_fetch_array($objSelect))
// {
// $i++;
?>
<tr id="tr<?=$i;?>">
<td align="center" height="20"> <input type="hidden" name="username" value="<?=$Result["USERNAME"][$i];?>" OnClick="ClickMakeColor(this,'tr<?=$i;?>');" > <?=$Result["USERNAME"][$i];?></td>
<td><div align="center">
<input type="hidden" name="firstname" value="<?=$Result["FIRSTNAME"][$i];?>">
<?=$Result["FIRSTNAME"][$i];?>
</div></td>
<td><input type="hidden" name="lastname" value="<?=$Result["LASTNAME"][$i];?>">
<?=$Result["LASTNAME"][$i];?></td>
<td><input type="hidden" name="status" value="<? echo $status; ?>">
<? echo $status; ?></td>
<td><input type="hidden" name="type" value="<? echo $type; ?>">
<? echo $type; ?></td>
<td ><a href='admin_edit.php?user=<?=$Result["USERNAME"][$i];?>'><img src='images/edit button.png' width='15' height='15' border='0' align="middle" /></a></td>
</tr>
<?
}
// $acr->show($option);
?>
</table>
|
|
|
|
|
Date :
2012-03-22 14:22:17 |
By :
Inwpetdo |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|