PDA

View Full Version : استفاده از فایل dll در php



kimya7
یک شنبه 11 دی 1390, 10:51 صبح
سلام دوستان

من یک فایل dll دارم که می خوام از اون توی برنامه php استفاده کنمٰ میشه راهنمایی کنید که چطور می تونم این کارو بکنم ؟

متشکر

irGeek
یک شنبه 11 دی 1390, 17:22 عصر
فقط در صورتی می تونی از یکdll در php استفاده کنی که ماژول apach باشه که تنها در ویندوز قابل استفاده است!
اگه از برنامه نویسی ویندوز می یای این سوالت بی معنی هست و به مرور که با php آشنا بشی منظورم رو درک می کنی.

kimya7
یک شنبه 11 دی 1390, 17:52 عصر
نه از برنامه نویسی ویندوز نمیام، از جواب شما هم چیزی نفهمیدم. میشه یکم بیشتر توضیح بدین؟؟

kimya7
یک شنبه 11 دی 1390, 21:33 عصر
اگر میشه یک انسان شریفی یک آموزش کامل برای این کار بذاره.:لبخندساده: من چند ساعته هرچی سرچ کردم توضیح کاملی گیرم نیومد که به عنوان یک مبتدی دقیقا بفهمم باید چیکار کنم؟

irGeek
یک شنبه 11 دی 1390, 21:52 عصر
میشه بگیdll درخواستی شما چه کاری در php میکنه؟

kimya7
دوشنبه 12 دی 1390, 08:26 صبح
ارسال اس ام اس میکنه.
من می خوام بدونم:
اولا چطور باید یک فایل dll رو به برنامه معرفی کرد؟
دوما چطور میشه توابع داخل dll رو در برنامه فراخوانی کرد؟ اینکارو مثل فراخوانی توابع داخل کلاس باید انجام داد یا؟

irGeek
دوشنبه 12 دی 1390, 11:19 صبح
ببینید برای ارسال sms دو تا راحل وجود داره
1. از سریس هایی که دیگران دارند استفاده کنیدمثل

<?php
// turn off the WSDL cache
ini_set("soap.wsdl_cache_enabled", "0");
try {
$client = new SoapClient("http://www.lllllllllll.ir/post/send.asmx?wsdl");
$parameters['username'] = "wsdemo";
$parameters['password'] = "wsdemo";
$parameters['from'] = "10000XXXXX";
$parameters['to'] = array("912YYYYYYYY");
$parameters['text'] =iconv($encoding, 'UTF-8//TRANSLIT',"تست");
$parameters['isflash'] = true;
$parameters['udh'] = "";
$parameters['recId'] = array(0);
$parameters['status'] = 0x0;
echo $client->GetCredit(array("username"=>"wsdemo","password"=>"wsdemo"))->GetCreditResult;
echo $client->SendSms($parameters)->SendSmsResult;
echo $status;
} catch (SoapFault $ex) {
echo $ex->faultstring;
}
?>
جایی که lllllllllll نوشتم اسم سایت سرویس دهنده است که نخواستم تبلیغ کسی بشه انطوری نوشتم. در این شیوه شما با اطلاعاتی که در صورت خرید دارید وارد می شوید و بدون دغدغه به ارسال sms می پردازید. وعملا با نحوه پیاده سازی اون درگیر نمی شوید!
2.خودتون (یا هر کس دیگه) با یک زبان دیگه برنامه می نویسید و برنامه نوشته شده براتون ارسال میکنه و تنها شما با فراخوانی موارد لازم در php با برنامه ارسال sms ارتباط بر قرار می کنید در این برنامه ارسال sms غیر php می تونید از dll دلخواه استفاده کنید.
عملا ارسال مستقیم sms با استفاده از dll در php امکان پذیر نیست!

kimya7
دوشنبه 12 دی 1390, 11:58 صبح
ممنون. من از مورد دوم استفاده می کنم یک dll ارسال اس ام اس رو یک نفر نوشته حالا من باید تو سایتم ازون استفاده کنم.

اگر همون دو تا سوال رو جواب بدید ممنون میشم؟من از تابع dl() برای لود فایل dll استفاده میکنم اما این خطا رو میده:
Warning: dl() [function.dl (http://localhost/function.dl)]: Not supported in multithreaded Web servers - use extension=SMSDLL.dll in your php.ini in C:\wamp\www\dll.php on line 17
دقیقا کجای php.ini باید extension رو معرفی کنم؟ هرجا تعریفش می کنم بازم همین خطا رو میده

irGeek
دوشنبه 12 دی 1390, 12:29 عصر
کاری که شما می گید استفاده از extension php هست ادرس فایل های extension داخل فولدر php>ext هست.
استفاده از این شیوه مستلزم توسعه یک extension خاص برای php باشید.
با سی باید بنویسید http://www.codebelay.com/blog/2008/07/03/how-to-make-your-own-php-extension-quick-and-dirty/
باید چند ریسمانی هم باشه! همنطور که از پیام خطا مشخصه. کهdll شما نیست.

kimya7
دوشنبه 12 دی 1390, 12:38 عصر
`پیچیده شد ....:لبخندساده::متفکر:توسعه یک extension خاص یعنی چی؟ مگر نمیشه همین فایل رو به عنوان extension به php معرفی کنم؟

irGeek
دوشنبه 12 دی 1390, 13:57 عصر
توسعه یک extension خاص یعنی چی؟ مگر نمیشه همین فایل رو به عنوان extension به php معرفی کنم؟ یعنی افزودن قابلیت جدید که تا قبل از این وجود نداشت! نه.
سوایdll‚این extension شما باید روی لینوس کار کنه که مشکلات خودش رو داره یا باید خودتون سرور ویندوز داشته باشین که ازdll بتونی استفاده کنی.
در کل کار آسونی نیست ولی هیچ کاری غیر ممکن نیست.

امیـرحسین
دوشنبه 12 دی 1390, 14:52 عصر
اینا شاید به درد بخوره:
DOTNET class (http://php.net/manual/en/class.dotnet.php)
PHP call DLL (http://www.daniweb.com/web-development/php/threads/120748)

kimya7
دوشنبه 12 دی 1390, 21:59 عصر
یعنی افزودن قابلیت جدید که تا قبل از این وجود نداشت! نه.
سوایdll‚این extension شما باید روی لینوس کار کنه که مشکلات خودش رو داره یا باید خودتون سرور ویندوز داشته باشین که ازdll بتونی استفاده کنی.
در کل کار آسونی نیست ولی هیچ کاری غیر ممکن نیست.

حالا هیچ کس نمی تونه برای این کار غیر آسون بگه قدم به قدم چیکار باید کرد؟
plz help

kimya7
جمعه 16 دی 1390, 13:41 عصر
هیچ یاری کننده ای نیست؟ :لبخندساده:

irGeek
جمعه 16 دی 1390, 15:05 عصر
وقتی تصمیم گرفتین مساله رو از راه سختش حل کنید باید خودتون دست به کار شید اصول کار قبلا گفته شده روی انها تمرکز کنید