طراحی سایت با اسنیپت های جدید گوگل - دارکوب در بلاگ اسکای

تلفن تهران: 22083926 - 22085386 - 22082258 | آدرس: تهران، سعادت آباد، سرو غربی، کوچه آریا، پلاک 4، واحد 7

طراحی سایت با اسنیپت های جدید گوگل - دارکوب در بلاگ اسکای

تلفن تهران: 22083926 - 22085386 - 22082258 | آدرس: تهران، سعادت آباد، سرو غربی، کوچه آریا، پلاک 4، واحد 7

مزایای استفاده از سرور اختصاصی برای صفحات وب سایتی با ترافیک بالا


وب سایت ها در این عصر و روز بسیار مهم شده ند و آن هم عمدتا بدلیل افزایش تجارات الکترونیک میباشد. اگر شما بخواهید یک وب سایت معقول و مناسب را راه اندازی کنید شما به احتمال زیاد بیش از هر چیز نیاز به آنچه که گفته می شود سرور اختصاصی خواهید داشت. اکثر کسب و کارهای مبتنی بر وب از سرور میزبانی مشترک و برخی از انها حتی هم نمی دانند که از این نوع هاست برای میزبانی وب سایت خود استفاده می کنند. این بدین معناست که شما با اجرای وب سایت خود بر یک سرور اختصاص داده شده می توانید یک مزیت رقابت که صاحبان کسب و کار کوچک و بزرگ تنها می توانند آن را بدست آورند را داشته باشید.
تعداد اجزای مختلفی برای یک صفحه وب وجود دارد و صفحه اول تنها بخشی است که مشتری آن را خواهد دید. پشت آن شما تعداد زیادی از ایتم های مختلف را دارید که همه انها باید بدرستی مدیریت شوند. این موارد اول البته خود وب سرور بقیه اجزا موجود در صفحه وب و فرم کاربر که توسط اسکریپت کنترل شده است میباشد.
بهره وری از این اسکریپت ها و کنترل های متصل شده به انها توسط خود ماشین تعیین می شود و اگر شما وب سایت خود را بر روی یک سرور به اشتراک گذاشته شده اجرا کرده اید مطئنا شما نمی توانید از جعبه مدیریت کامل استفاده کنید. اگر با این حال شما وب سایت خود را بر روی یک سرور اختصاصی و یا سرور مجازی اختصاصی به اجرا گذاشته باشید شما ممکن است به سطح بالاتری دسترسی داشته باشید و قادر به استفاده سیستم در شیوه ای که مناسب بازدید کنندگان شما باشد هستید.
علاوه بر آن هاستینگ سرور اختصاصی به شما اجازه ذخیره فایل های بزرگ را در پوشه های مختلف در سرتاسر هارد دیسک را می دهد. اگر شما یک توسعه دهنده نرم افزار و یا یک توزیع کننده باشید شما می توانید فایل های خود را بروی هارد دیسک سرور ذخیره کنید که شما می توانید به کاربر خود اجازه دانلود در سرعتی که شما تعیین می کنید را بدهید. در باره موضوع سرعت شما به طور معمول قادر به انتخاب ارائه دهنده سرویس و خدمات که می خواهید برای هاستینگ سرور اختصاصی خود استفاده کنید خواهید بود.
این بدین معناست که بسیاری از ارائه دهندگان در واقع به شما این امکان انتخاب ارائه دهنده سرویس از جمله AT&T, Verizon و یا هر تعداد دیگر از ارائه دهنده را خواهند داد. و جعبه شما یک لاین اختصاصی خواهد داشت تا اطمینان حاصل شود فقط شما و مشتریان شما به آن دسترسی داشته باشند.
قبل از اینکه شما هر نوع از پکیج های هاستینگ سرور اختصاصی را انتخاب کنید شما باید نگاهی به ارائه دهنده های مختلف به منظور تعیین این که کدام یک برای شما از نظر قیمت و عملکرد مناسب تر است بیاندازید.
سورس:

مقایسه کردن تفاوت میان دو تاریخ توسط PHP

در برنامه نویسی PHP مواقعی پیش می آید که نیاز دارید دو تاریخ را به یکدیگر مقایسه نمایید و فاصله زمانی بین دو تاریخ را پیدا کنید که در بخش زیر نحوه بدست آوردن آن را به صورت کامل برای شما شرح خواهم داد. تاریخ ها را نمی توانید به صورت عادی از هم منها نمایید و می بایست آنها را به مقدار عددی تبدیل نمایید. برای انجام این کار می توانید از تابع strtotime استفاده نمایید. این تابع تاریخ شما به صورت تاریخ UNIX تبدیل می نماید که این تاریخ فاصله زمان تاریخ شما به ثانیه از زمان یکم 1970 می باشد. در زیر نحوه انجام این کار را به شما نمایش می دهم:

$date1 = "2007-03-24 00:00:00";
$date2 = "2009-06-26 00:00:00";

$diff = abs(strtotime($date2) - strtotime($date1));

$years = floor($diff / (365*60*60*24));
$months = floor(($diff - $years * 365*60*60*24) / (30*60*60*24));
$days = floor(($diff - $years * 365*60*60*24 - $months*30*60*60*24)/ (60*60*24));

printf("%d years, %d months, %d days\n", $years, $months, $days);

در کد بالا تاریخ می توانید به صورت تاریخ و زمان نیز باشد. متغییر $diff دو تاریخ را به صورت عددی از یکدیگر منها می نماید و بنابراین $date2 می بایست زمان جدیدتر باشد. برای بدست آوردن تفاوت سالیانه دو تاریخ می بایست فاصله زمانی بدست آماده را به سال تبدیل نمایید و از تابع floor برای روند کردن آن استفاده نمایید. برای بدست آوردن تعداد ماه ابتدا می بایست تعداد سال ها به ثانیه را از تفاوت دو تاریخ به ثانیه کسر نموده و سپس آن را به ماه تبدیل نمایید و برای سایر واحدهای تاریخ نیز به همین ترتیب عمل نمایید. در صورتی که قصد دارید فاصله بین دو تاریخ را به ساعت و دقیقه و همچنین ثانیه بیان نمایید می توانید کدهای زیر را به کد اصلی خود اضافه نمایید.

$hour = floor(($diff - $years * 365*60*60*24 - $months*30*60*60*24 - $days*60*60*24)/ (60*24));

$min = floor(($diff - $years * 365*60*60*24 - $months*30*60*60*24 - $days*60*60*24 - $hour*60*60)/ (60));

البته می توانید فاصله زمانی بین دو تاریخ را فقط توسط المان های دیگر نظیر ساعت و دقیقه بیان نمایید که در زیر مثال آن را برای شما آورده ام:

$hour = floor($diff / (60*24));
$min = floor(($diff - $hour * 60*24) / (24));

لینک:

مقایسه تفاوت بین دو تاریخ توسط PHP

برای رفع ویروس از صفحات وب سایت چه کارهای لازم است انجام دهیم؟


در صورتی که وب سایت شما ویروسی شده و قصد دارید آن را از این حالت خارج نمایید می توانید این مطلب را مطالعه نمایید.

زمانی که وب سایت شما ویروسی می گردد معمولا اگر وب سایت خود را با مرورگر فایرفاکس و کروم چک نمایید پیغام ویروسی بودن وب سایت را به شما نمایش می دهد همچنین در صورتی که وب سایت را در موتور جستجوی گوگل بیابید در پایین آن عنوانی مبنی بر ویروسی بودن وب سایت نمایش داده می شود. برای رفع ویروس از وب سایت می بایست سریعا اقدامات زیر را انجام دهید:

 

  • به عنوان اولین قدم مورد را با وب هاستینگ خود در میان بگذارید تا در صورتی که مشکل امنیتی از سمت سرور بوده باشد سریعا اقدام به حل آن نمایند
  • تمامی رمزها مربوط به وب سایت را تغییر دهید، رمزهای کنترل پانل هاست، وب سایت، ایمیل ها، رمزهای عبور اف تی پی و هر رمزی که تا به حال در وب سایت خود تنظیم نموده اید را تغییر دهید و سعی نمایید رمزهای بسیار پیچیده انتخاب نمایید تا قابل حدس زدن نباشد.
  • تمامی فایل های موجود در وب سایت خود را ابتدا بک آپ گرفته و دانلود نموده و سپس کلیه فایل های موجود در سرور را حذف نمایید. دقت نمایید هیچ فایلی بر روی سرور باقی نماند تا ویروس کاملا از وب سایت شما پاک گردد.
  • سپس فایل های سالم خود را که قبلا بک آپ نموده بودید مجددا بارگذاری نمایید و وب سایت خود را راه اندازی نمایید. معمولا فایل های شما بر روی سرور ویروسی شده اند و دیتابیس شما مصون مانده است و در نتیجه نیاز نیست دیتابیس خود را از روی سرور پاک نمایید.

پس از انجام مراحل بالا معمولا ویروس از وب سایت شما پاک شده است و کافی است در این مرحله به امن سازی وب سایت خود بپردازید. برای انجام امن سازی اولین قدم htaccess وب سایت خود را امن سازی نمایید. پس از این مرحله وب سایت خود را به روز رسانی نمایید و سیستم مدیریت محتوای آن را به آخرین نسخه ارتقاء دهید و از برنامه نویس وب سایت بخواهید وب سایت شما را امن سازی نمایید. برای امن سازی وب سایت خود حتما فایل های بک آپ گرفته شده قبلی را در اختیار متخصص امن سازی وب سایت بگذارید تا برنامه نویس با بررسی فایل ها بتواند امنیت وب سایت شما را تضمین نماید. دارکوب با توجه به سابقه بسیار و تجربه فراوان در امر برنامه نویسی سایت های اینترنتی آماده ارائه خدمات ایمن سازی وب سایت ها می باشد. پس از ایمن سازی وب سایت می بایست مورد را به گوگل اطلاع دهید تا وب سایت شما را از لیست سایت های ویروسی خارج نماید.

اعلام به گوگل برای خارج نمودن وب سایت از شرایط ویروسی

در صورتی که از پاک بودن وب سایت خود مطمئن شده اید می بایست پاک بودن آن را به گوگل نیز اعلام نماید که آن را می بایست به این روس اعلام نمایید:

  • در وب سایت Google Webmaster Tools ثبت نام نموده و آدرس وب سایت خود را وارد نمایید و مالکیت وب سایت را احراز نمایید
  • برای ایندکس کردن مجدد صفحات توسط گوگل ابتدا به منوی Crawl زیر منوی Fetch as Google وارد شده و آدرس وب سایت خود را وارد نمایید و از صفحات انتخاب گزینه Crawl this URL and its direct links را انتخاب نمایید تا تمامی صفحات شما دوباره ایندکس گردد.
  • سپس برای بررسی مجدد وب سایت توسط گوگل به منوی Security Issue وارد شده و دکمه I have fixed these issues را انتخاب نموده و بر روی Request a review کلیک نمایید تا وب سایت شما توسط کارشناسان گوگل مورد بررسی قرار بگیرد.

برای اطلاع بیشتر جهت رفع وب سایت از ویروس می توانید مقاله What to Do If Your Website Has Been Hacked by Phishersنوشته شده توسط وب سایت http://www.antiphishing.org و مورد تایید گوگل را مطالعه نمایید.

برگرفته شده از مقاله گوگل:

https://support.google.com/webmasters/answer/163634?hl=en

آدرس:

رفع ویروس از وب سایت 

برنامه نویسی درگاه پرداخت آنلاین بانک ملت در کد نویسی PHP

برنامه نویسی درگاه پرداخت آنلاین بانک ملت در PHP

برنامه نویسی درگاه با توجه به نیاز به استفاده از توابع Soap در PHP کاری بسیار چالش برانگیز بوده، زیرا این تابع در نسخه های مختلف PHP رفتار متفاوتی را از خود نشان می دهد. شرکت پرداخت بانک ملت کد نمونه ای را جهت اتصال به سرور پرداخت آنلاین که با استفاده از کتابخانه NuSOAP ارائه نموده که در سرورهایی با نسخه PHP 5.3 به بالا به مشکل بر می خورد. در بخش زیر نحوه برنامه نویسی درگاه پرداخت آنلاین توسط تابع SoapClient که از توابع داخلی PHP بوده را برای شما بیان می نمایم. قبل از هر چیز دقت نمایید این تابع در تنظیمات PHP فعال شده باشد . در صورت عدم فعال سازی با سرور خود تماس حاصل فرمایید.

برای ارسال درخواست خود فرم پرداخت آنلاین را که شامل فیلدهای موجود در بخش دریافت اطلاعات از کاربر در کد زیرین می باشد ایجاد نمایید.

* دقت نمایید جهت پرداخت آنلاین از طریق بانک ملت می بایست قبل از ارسال کاربر به صفحه پرداخت درخواست خود را از طریق SOAP به سرور ارسال نموده و تایید درخواست خود را بگیرید. برای انجام این کار از کد SoapClient استفاده می نماییم:

try { 
$client = @new SoapClient('https://bpm.shaparak.ir/pgwchannel/services/pgw?wsdl');
} catch (Exception $e) { 
die($e->getMessage()); 
}

پس از اتصال به سرور پرداخت آنلاین و عدم بروز خطا می بایست درخواست خود را به سرور ارسال نمایید. برای انجام این کار از کد زیر استفاده می نمایید:

// دریافت اطلاعات از کاربر

$namespace='http://interfaces.core.sw.bps.com/';
$terminalId = $_POST['TerminalId'];
$userName = $_POST['UserName'];
$userPassword = $_POST['UserPassword'];
$orderId = filter_var($_POST['PayOrderId'], FILTER_SANITIZE_NUMBER_INT);
$amount = $_POST['PayAmount'];
//$date = date("YYMMDD");
//$time = date("HHIISS");
$localDate = $_POST['PayDate'];
$localTime = $_POST['PayTime'];
$additionalData = $_POST['PayAdditionalData'];
$callBackUrl = $_POST['PayCallBackUrl'];
$payerId = $_POST['PayPayerId'];

// قرار دادن پارامترها در یک آرای
$parameters = array(
'terminalId' => $terminalId,
'userName' => $userName,
'userPassword' => $userPassword,
'orderId' => $orderId,
'amount' => $amount,
'localDate' => $localDate,
'localTime' => $localTime,
'additionalData' => $additionalData,
'callBackUrl' => $callBackUrl,
'payerId' => $payerId);


// ارسال درخواست پرداخت به سرور بانک
$result = $client->bpPayRequest($parameters, $namespace);

تابع bpPayRequest کار ارسال درخواست پرداخت به سرور را انجام می دهد که در صورتی که برگشتی این تابع 0 باشد به آن معنی می باشد که پرداخت قابل انجام می باشد و در صورت برگشتی هر عددی به جز 0 به آن معنا بوده که خطایی در انجام پرداخت وجود دارد. برای چک نمودن مقدار برگشتی تابع bpPayRequest از کد زیر استفاده نمایید:

$res = @explode (',',$resultStr);
if(is_array($res)){

echo "<script>alert('Pay Response is : " . $resultStr . "');</script>";
echo "Pay Response is : " . $resultStr;

$ResCode = $res[0];

if ($ResCode == "0") {
// Update table, Save RefId
echo "<script language='javascript' type='text/javascript'>postRefId('" . $res[1] . "');</script>";

else {
// log error in app
// Update table, log the error
// Show proper message to user
}
}

در کد بالا ResCode بخش اول خروجی تابع bpPayRequest می باشد که در صورتی که این عدد 0 باشد به آن معناست که پرداخت قابل انجام می باشد و می بایست کاربر را به سمت سرور انتقال دهید. برای انتقال کاربر به سرور از کد جاوا اسکریپت زیر استفاده نمایید که این کد می بایست در HTML صفحه پرداخت قرار داده شود:

<script language="javascript" type="text/javascript"> 
function postRefId (refIdValue) {
var form = document.createElement("form");
form.setAttribute("method", "POST");
form.setAttribute("action", "https://bpm.shaparak.ir/pgwchannel/startpay.mellat"); 
form.setAttribute("target", "_self");
var hiddenField = document.createElement("input"); 
hiddenField.setAttribute("name", "RefId");
hiddenField.setAttribute("value", refIdValue);
form.appendChild(hiddenField);

document.body.appendChild(form); 
form.submit();
document.body.removeChild(form);
}
</script>

تابع جاوا اسکریپت بالا کاربر را به صفحه پرداخت بانک ملت هدایت می نماید. پس از اینکه کاربر در صفحه پرداخت بانک ملت عملیات پرداخت را انجام نمود دوباره به سایت شما بازگشت داده خواهد شد. کاربر به صفحه ای بازگشت داده خواهد شد که شما در متغیر callBackUrl در مرحله قبل به سرور اعلام نموده اید. درگاه پرداخت بانک ملت 4 پارامتر را به صورت POST به آدرس callBackUrl وب سایت شما ارسال می نماید که این چهار متغیر شامل موارد زیر می باشند.

$RefId = $_POST['RefId'];
$ResCode = $_POST['ResCode'];
$saleOrderId = $_POST['SaleOrderId'];
$SaleReferenceId = $_POST['SaleReferenceId'];

در صورتی که مقدار متغیر ResCode عددی جز 0 باشد به این معناست که خطایی در پرداخت رخ داده و می توانید کار را ادامه ندهید. در صورتی که مقدار ResCode برابر با 0 باشد می بایست پرداخت را تایید نمایید.

if($ResCode==0){

try { 
$client = @new SoapClient('https://bpm.shaparak.ir/pgwchannel/services/pgw?wsdl');
} catch (Exception $e) { 
die($e->getMessage()); 


$namespace='http://interfaces.core.sw.bps.com/';

$terminalId = terminalid;
$userName = "username";
$userPassword = "password";


$parameters = array(
'terminalId' => $terminalId,
'userName' => $userName,
'userPassword' => $userPassword,
'orderId' => $saleOrderId,
'saleOrderId' => $saleOrderId,
'saleReferenceId' => $SaleReferenceId);
$result = $client->bpVerifyRequest($parameters, $namespace);

$resultStr = $result->return;
$res = @explode (',',$resultStr);
if(is_array($res)){

echo "<script>alert('Pay Response is : " . $resultStr . "');</script>";
//echo "Pay Response is : " . $resultStr;

$ResCode = $res[0];

if ($ResCode == "0") {
// Update table, Save RefId
$resultsettle = $client->bpSettleRequest($parameters, $namespace);
$resultStrsettle = $resultsettle->return;
$ressettle = @explode (',',$resultStrsettle);
$ResCodesettle = $ressettle[0];
if ($ResCodesettle == "0") {
$paymentdone="done";
}

else {
// log error in app
// Update table, log the error
// Show proper message to user
}
}

در کد بالا تابع bpVerifyRequest عملیات تایید پرداخت را انجام می دهد و در صورتی که خروجی آن نیز 0 باشد می توانید وجه را از حساب کاربر با دستور bpSettleRequest به حساب خود منتقل نمایید. متغیر paymentdone زمانی برابر با done قرار داده می شود که پرداخت به درستی انجام شده باشد و واریز وجه به حساب شما انجام شده باشد. دقت نمایید ممکن است عملیات واریز وجه به حساب شما چندین ساعت طول بکشد. در بخش پایین همچنین آموزشی شرکت به پرداخت ملت را برای شما ضمیمه کردم تا بتوانید توضیحات بیشتر را مطالعه نمایید. در صورت وجود مشکل و یا سوال لطفا موارد را در بخش نظرات اعلام نمایید.

آدرس:

برنامه نویسی درگاه پرداخت آنلاین بانک ملت در PHP

استخدام برنامه نویس متخصص PHP جهت توسعه اسکریپت تراوین

دارکوب جهت توسعه اسکریپت بازی تراوین نیاز به برنامه نویس حرفه ای PHP دارد. جهت رویت توضیحات این اسکریپت بازی به توضیحات بازی تراوین در ویکی پدیا مراجعه نمایید. 
از برنامه نویسان علاقه مند دعوت می گردد رزومه خود را به آدرس info[at]joomir.com ارسال نمایند. 
برنامه نویسانی که تجربه بازی و توسعه این نرم افزار را دارند در اولویت هستند. 
در صورت نیاز به برقراری تماس تلفنی لطفا با شماره های تلفن تهران: 22083926 - 22085386 - 22082258 تماس حاصل فرمایید.

پروژه توسعه اسکریپت تراوین یک پروژه دائمی بوده که پس از اتمام فاز اول آن که در حدود 60 روز به طول خواهد انجامید فازهای بعدی آن آغاز خواهد گردید.

زمان کاری برنامه نویس از شنبه تا پنج شنبه 9 تا 5 بعد از ظهر خواهد بود و پروژه به صورت فشرده خواهد بود و برنامه نویس مورد نظر فقط بر روی همین پروژه فعالیت خواهد نمود.

در صورت نیاز و کمبود زمان لازم خواهد بود که برنامه نویس در خارج از زمان کاری نیز به توسعه اسکریپت بپردازد.

آدرس:

استخدام برنامه نویس PHP جهت توسعه اسکریپت