PDA

View Full Version : سوال در مورد اتصال به دیتا بیس



behnam404
دوشنبه 07 مهر 1393, 08:46 صبح
سلام من مبتدی هستم و اینطوری که یاد گرفتم هر دفعه برای اتصال به دیتا بیس با تابع mysqli_connect() نیاز به نام یوزر و پسورد دیتا بیس هست . اگه من بخوام توی چند صفحه از سایت برای ارسال و دریافت اطلاعات به دیتا بیس متصل بشم آیا امنیت سایت و دیتا بیس به خطر نمیفته اگه بخوام توی هر صفحه از سایت اطلاعات دیتابیس (username,password,host,db_name) رو وارد کنم یا از یک فایل اینکلود کنم ؟
برنامه نویسان برای اتصال به دیتا بیس در حالت معمول از چه روشی استفاده می کنند؟
متشکر

ravand
دوشنبه 07 مهر 1393, 17:18 عصر
برای چی به خطر بیوفده؟ معمولاً برنامه نویس ها میان اون دستورات اتصال به دیتابیس رو توی یه فایل قرار میدن و توی هر صفحه اینکلود میکنن. تا هم بیخودی کد اضافه برای اتصال ننویسن و هم راحت بتونن توی یه فایل نام دیتابیس و یوذر و پسورد رو فقط وارد کنن. و مجبور نباشن توی همه ی صفحات هر وقت نیاز شد این اطلاعات رو تغییر بدن.
این دستورات رو هم بذار اول فایلت که اگر در اتصال با دیتابیس مشکلی پیش امد برنامه اخطار نده:


ini_set('display_errors',0);
error_reporting(0);

sara147
سه شنبه 08 مهر 1393, 09:06 صبح
در حالت معمول که خطری نیست چون اطلاعات در خروجی چاپ نمیشن. ولی در موقعی که کسی بتونه مستقیم به فایل های php روی سرور دسترسی پیدا کنه. میتونید برای امنیت بیشتر فایل های phpتون رو اینکد کنید. وقتی که سرور برای خودتون نیست، یا سورس کد رو به مشتری میدید هم میتونید اینکار رو انجام بدین تا اینطوری از کدهاتون سوء استفاده نشه.

Unique
سه شنبه 08 مهر 1393, 11:16 صبح
encode کردن کار اضافی هستش. decoder ها به سرعت مدت کمی از پس از انتشار encoder های جدید ساخته میشوند. اگه امنیت هاست خوب باشه و شما هم سوتی خیلی بدی نداده باشی کسی نمیتونه با فایل های شما دسترسی پیدا کنه.