PDA

View Full Version : مشکل اتصال{ پی اچ پی} به{ اس کیو ال سرور}



papa_fal
شنبه 20 خرداد 1385, 11:24 صبح
با عرض سلام به دوستان

من به مشکلی جدی برخوردم که امیدوارم با کمک شما دوستان بتونم اونو حل کنم.من می خوام از طریق {پی اچ پی} به{اس کیو ال سرور} متصل بشم.من یک odbc تعریف کرده ام برای {اس کیو ال} (آیا نیازی به این کار بود؟؟)
بعد در کد پی اچ پی که به طور پیش فرض به {مای اس کیو ال} متصل بود .یعنی به جای خط زیر:
$sqlcon = mysql_connect("localhost",$dbuser,$dbpass);

خط زیر را قرار دادم.
$sqlcon = odbc_connect("sqlserver",$dbuser,$dbpass);

ولی خطایی به شکل زیربرای این خط می دهد:
Warning: odbc_connect() [function.odbc-connect]: SQL error: [Microsoft][ODBC Driver


Manager] Data source name not found and no default driver specified, SQL state IM002 in SQLConnect
ممنون می شم که منو راهنمایی کنید.
در ضمن من odbc را تست کردم و با موفقیت بود .
منتظر راهنمایی های شما دوستان هستم.

cybercoder
شنبه 20 خرداد 1385, 16:49 عصر
شما باید ابتدا یک DSN در ODBC Datasources ایجاد کنید سپس:


odbc_connect ( string dsn, string user, string password [, int cursor_type] )

برای اتصال به ODBC.

برای اتصال به MS-SQL به صورت Direct باید از تابع زیر استفاده کنید:


mssql_connect ( [string servername [, string username [, string password]]] )



Manager] Data source name not found and no default driver specified, SQL state IM002 in SQLConnect

این پیغام خطا به این دلیل که شما DSN مربوطه رو در ODBC DataSources نساختید.

موفق باشید
[/code]

papa_fal
شنبه 20 خرداد 1385, 18:32 عصر
با سلام
نه ایجاد کرده ام و تست هم کرده ام .!!!!!!

papa_fal
یک شنبه 21 خرداد 1385, 05:50 صبح
اصلا در {پی اچ پی } نیازی است که من از odbc استفاده کنم.؟؟؟
یا همان از توابع mssql استفاده کنم کافی است؟؟؟؟
چه موقع از odbc در {پی اچ پی} استفاده می شود.؟؟؟؟
با تشکر

cybercoder
دوشنبه 22 خرداد 1385, 10:36 صبح
اصلا در {پی اچ پی } نیازی است که من از odbc استفاده کنم.؟؟؟

زمانی که شما نیازمند به اتصال به بانک های اطلاعاتی هستید که به طور Direct توسط PHP قابل دسترسی نیست مثل IBM DB2, DB Isam یا Informix و ... لازم است که از ODBC استفاده کنید.
البته چون PHP به صورت Open Source هستش میشه بهش Library برای اتصال Direct نوشت ولی خوب تمام وب سرور ها که از Library شما استفاده نمی کنند.

زمانی که در مورد دیتابیس هنوز مطمئن نیستید یا نیاز دارید که برنامه شما با تمامی Database ها کار کند ODBC تنها انتخاب است.

موفق باشید.

papa_fal
سه شنبه 23 خرداد 1385, 07:50 صبح
ممنونم.
ولی یک سوال:
برای اتصال به {اس کیو ال سرور} در فایل php.ini یک فایل dll وجو دارد.که با extend کردن آن می توان از توابع {اس کیو ال سرور} استفاده کرد.

خوب حالا سوال من:
منظورتون از کتابخانه همین است؟؟
و در مورد این جمله ممنون میشم که بیشتر توضیح دهید:
ولی خوب تمام وب سرور ها که از Library شما استفاده نمی کنند.
؟؟؟؟
(آپاچی و iis؟؟؟؟)
با تشکر

cybercoder
سه شنبه 23 خرداد 1385, 09:16 صبح
برای اتصال به {اس کیو ال سرور} در فایل php.ini یک فایل dll وجو دارد.که با extend کردن آن می توان از توابع {اس کیو ال سرور} استفاده کرد.

خوب حالا سوال من:
منظورتون از کتابخانه همین است؟؟

برای نصب کامل PHP بر روی Apache می تونید از راهنمایی که من برای این منظور تهیه کردم استفاده کنید. در وب سایت خودم و در قسمت آموزش.


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

یعنی این که وقتی شما یک library برای PHP می نویسید فقط مال خودتونه یعنی یک برنامه Universal نیست بنابراین دلیلی نداره که WEB SERVER از Library شما پشتیبانی کنه.

موفق باشید.