Archive for تیر, ۱۳۸۸

خطای ۴۰۴ و مدیریت آن

تیر ۲۷م, ۱۳۸۸

یک مشکلی که اخیرا” داشتیم این بود که تعدادی از کالاهای سایت عکس نداشتند و همین باعث میشد که علاوه بر اینکه عکس نمایش داده نشه و ظاهر سایت بهم بخوره، خطاهایی ناشی از فراخوانی تابع getimagesize هم در صفحه نمایش داده میشد.

خلاصه تصمیم بر این شد که عکسی بذاریم پیش فرض!، که اگه کالایی عکس نداشت موقتا” این عکس جایگزین بشه.

یک کاری که میشد انجام بدیم، اینکه سر هر جایی که فیلد آدرس عکس رو از پایگاه داده میخوندیم، شرط بذاریم ولی خیـــــلی بود!

پس دنبال راه بهتری که استفاده از فایل .htaccess بود،رفتیم.

به این صورت که اگه فایل .htaccess رو با محتوای زیر برای مثال در شاخه Folder قرار بدین، آن شاخه تمام زیر شاخه های آن مشمول این قانون میشوند.

پیدا نشدن فایل درخواستی مرورگر باعث میشه که سرور خطای ۴۰۴ رو برگرداند که ما این خطا رو میگیریم و redirect میکنیم به سمت عکس (یا بطور کلی صفحه)مورد نظر.

ErrorDocument 404 /notFound.htm

البته جز خطای ۴۰۴، بقیه خطاها هم قابل مدیریت شدن هستند. اطلاعات بیشتر

Tags: , ,
Posted in تجربه ها | Comments (۰)

اعداد بزرگ در php 32 بیتی

تیر ۱۳م, ۱۳۸۸

امروز نیاز به این داشتم که چک کنه یک عدد ۱۷ رقمی عدد هست یه نه(مثلا” رشته نباشه). قبلا” به این صورت استفاده میکردم:


<?php
echo (double)$_GET['number'];
?>

اما خب این برای اعداد کمتر از ۱۰ رقمی هست.

برای حل این مشکل از تابع bcadd استفاده کردم که جمع دوعدد خیلی بزرگ رو میده، به این صورت:


<?php
echo bcadd($_GET['number'] , 0 );
?>

اگه در برنامه ای نیاز به محاسبات اعداد بزرگ داشتید میتونید به این جا مراجعه کنید و توضیح php رو راجع به آن بخونید.

Tags: , ,
Posted in php | Comments (۰)