خوب این نشون می ده که curl نصب نشده
باید با مسول هاستت تماس بگیری و بگی که اینو لازم داری و اونا برات نصب می کنن
curl تقریبا میشه گفت مثل یه browser عمل می کنه
یعنی می تونی یه پیج html مثلا
http://www.yahoo.com رو داخل یه متغیر بریزی
یا اصلا یه فایل باینری رو بگیری و داخل یه متغیر بریزی یا اونو save کنی
و یا یه form رو در حالتهای GET و POST بفرستی و نتیجه HTML رو داخل یه متغیر بریزی و اونو تجزیه تحلیل کنی
خوب اینم یه نمونه برای ارسال فرم
که هم می تونه در حالت GET باشه و هم POST
که خروجی html که form می ده بیرون داخل متغیر DATA ذخیره می شه
و خودت هر کاری خواستی روش می تونی انجام بدی
PHP:
<?php
//
// A very simple PHP example that sends a HTTP POST to a remote site
//
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"http://www.mysite.com/tester.phtml");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,
"postvar1=value1&postvar2=value2&postvar3=value3");
$data = curl_exec($ch);
curl_close ($ch);
?>
این یکی برای ذخیره کردن یه صفحه html داخل یه متغیره
PHP:
<?php
//
// The PHP curl module supports the received page to be returned in a variable
// if told.
//
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"http://www.myurl.com/");
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
$result=curl_exec ($ch);
curl_close ($ch);
?>
واین هم یک نمونه برای گرفتن فایلهای باینری
PHP:
<?php
// Allocate a new cURL handle
$ch = curl_init("http://www.designmultimedia.com/intro.jpg");
if (! $ch) {
die( "Cannot allocate a new PHP-CURL handle" );
}
// We'll be returning this transfer, and the data is binary
// so we don't want to NULL terminate
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1);
// Grab the jpg and save the contents in the $data variable
$data = curl_exec($ch);
// close the connection
curl_close($ch);
// Set the header to type image/jpeg, since that's what we're
// displaying
header("Content-type: image/jpeg");
// Output the image
print( $data );
?>
البته این curl سویچها و انتخابهای بیشتری داره که می تونی اضافه کنی !
مثلا
CURLOPT_USERAGENT که می تونی اسم و مشخصات یه browser رو بدی !
واسه این کار مثلا این خط رو به این برنامت و ثبل اجرا کردن curl اضافه می کنی
PHP:
curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/4.0");
یا مثلا CURLOPT_TIMEOUT که مشخص می کنه چند ثانیه برای ارسال form صبر کنه
اینو معمولا یه عدد نه خیلی پایین و نه خیلی بالا مزنن و احیانن اگه سرور مقصد از کار افتاده یوزر زیاد صبر نکنه و بتونی به یوزر بگی سرور دان شده و بعدا سعی کنید
یکی هم CURLOPT_REFERER هست که می تونی یه لینک بزاری برای http_referer و اتصال به سرور می گه مثلا از این page ارسال شده
اینا همش برای رد گم کردنه
تنظیمات خیلی خیلی متنوع و زیادی داره که می تونی اونو تو این لینک پیدا کنی
http://ir.php.net/curl
مثلا استفاده کردن از پراکسی گرفتن اررورها گرفتن حجم و سرعت کار کردن با کوکیزها کار با اف تی پی و کللی چیز دیگه که می تونی استفاده کنی
اگه رو سیستمت php رو با xampp یا easyphp ریخته باشی اونا curl رو نصب می کنن
فعلا رو سیستم خودت تست کن و یاد بگیر تا ادمین سرورت رو راضی کنی اینو نصب کنه
اینم یه سری نمونه از سویچهای curl
این برای ست کردن یک زمان معین برای اتصال به سرور مورد نظر
PHP:
curl_setopt($ch, CURLOPT_TIMEOUT,10);
با این هم میتونی بگی که header رو که از سرور مورد نظر گرفته برای شما هم ارسال کنه یا نه
PHP:
curl_setopt($ch, CURLOPT_HEADER, 0);
با این می گی که اصلا خروجی اون form یا هرچیزه دیگه که با curl ارسال شده دریافت بشه یا نه
که برای شما باید روشن باشه
PHP:
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
تعقیر نوع ارتباط به باینری
PHP:
curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1);
برای ارتباط با سرور مورد نظر با پراکسی
این واسه اینه که اون نفهمه از این سرور بهش وصل شدن
PHP:
curl_setopt ($ch, CURLOPT_PROXY, "250.250.250.250:8080");
فقط باید هواست باشه پورت پراکسی که استفاده می کنی توسط فایروال سرور بسته نشده باشه
خوب فکر کنم فعلا با اینا بتونی کاراتو راه بندازی
کارهای خیلی خیلی زیادی می شه با این کرد
موفق باشی