PHP Database ODBC

ODBC wani hanyar da kwarewa dona hanyar da a kan samun hanyar samun saman data (tsohuwa hanyar samun saman MS Access).

اتصال ODBC رو ایجاد کن

با استفاده از اتصال ODBC، می‌توانید به هر دیتابسی روی هر کامپیوتری در شبکه خود متصل بشید، تا زمانی که اتصال ODBC در دسترس باشد.

این روشی برای ایجاد اتصال ODBC به داده‌های MS Access است:

  1. در کنترل پنل باز کنابزارهای مدیریت
  2. روی یکی از آنهامنبع داده (ODBC) آیکون
  3. انتخاب کن کارت DSN
  4. روی "افزودن” دکمه
  5. انتخاب کن کننده اکسس مایکروسافت”. کلیک کنپایان.
  6. در صفحه بعدی، روی "انتخاب کن” برای تعیین دیتابیس استفاده کن.
  7. برای این دیتابیس یکنام منبع داده (DSN).
  8. کلیک کنتأیید.

لطفاً توجه داشته باشید که این تنظیمات باید در کامپیوتری که وب‌سایت شما روی آن نصب شده است انجام بشه. اگر سرور اینترنت اطلاعاتی (IIS) روی کامپیوتر شما اجرا می‌شه، دستورات بالا اجرا می‌شه، اما اگر وب‌سایت شما روی سرور خارجی قرار داره، شما باید دسترسی فیزیکی به سرور داشته باشید یا باید از ارائه‌دهنده خدمات میزبانی بخواهید که DSN رو برای شما ایجاد کنه.

به ODBC متصل بشه

فونکسیون odbc_connect() برای اتصال به منبع داده ODBC استفاده می‌شه. این فونکسیون چهار پارامتر داره: نام منبع داده، نام کاربری، رمز عبور و پارامتر اختیاری نوع اشاره‌گر.

فونکسیون odbc_exec() برای اجرای دستورات SQL استفاده می‌شه.

مثال

این مثال یک اتصال به DSN به نام northwind ایجاد می‌کنه، بدون نام کاربری و رمز عبور. سپس یک دستور SQL رو ایجاد و اجرا می‌کنه:

$conn=odbc_connect('northwind','','');
$sql="SELECT * FROM customers"; 
$rs=odbc_exec($conn,$sql);

ردیف رو برمی‌گردونه

فونکسیون odbc_fetch_row() برای برمی‌گردوندن رکورد از رزولت استفاده می‌شه. اگر بایستی ردیف رو برمی‌گردونه، true برمی‌گردونه، در غیر این صورت false.

این فونکسیون دو پارامتر داره: شناسه اودبک رزولت و شماره اختیاری ردیف:

odbc_fetch_row($rs)

فیلد از رکورد برمی‌گردونه

فونکسیون odbc_result() برای خوندن فیلد از رکورد استفاده می‌شه. این فونکسیون دو پارامتر داره: شناسه اودبک رزولت و شماره یا نام فیلد.

السطر اللی زیر از رکورد اولین فیلد رو برمی‌گرداند:

$compname=odbc_result($rs,1); 

السطر اللی زیر ارزش فیلدی رو که نامش "CompanyName" است برمی‌گرداند:

$compname=odbc_result($rs,"CompanyName");

اکسیون شاکی اودبک رو بستن

odbc_close() فونکسیون بایستی اکسیون شاکی اودبک رو بستن.

odbc_close($conn);

مثال ODBC

مثال زیر نشان می‌دهد که چگونه ابتدا یک اتصال به پایگاه داده ایجاد می‌کنیم، سپس یک مجموعه نتایج و در نهایت داده‌ها را در جدول HTML نمایش می‌دهیم.

<html>
<body>
<?php
$conn=odbc_connect('northwind','','');
if (!$conn)
  {exit("Connection Failed: " . $conn);}
$sql="SELECT * FROM customers";
$rs=odbc_exec($conn,$sql);
if (!$rs)
  {exit("Error in SQL");}
echo "<table><tr>";
echo "<th>Companyname</th>";
echo "<th>Contactname</th></tr>";
while (odbc_fetch_row($rs))
{
  $compname=odbc_result($rs,"CompanyName");
  $conname=odbc_result($rs,"ContactName");
  echo "<tr><td>$compname</td>";
  echo "<td>$conname</td></tr>";
}
odbc_close($conn);
echo "</table>";
?>
</body>
</html>