2011-10-18 17 views
25

En iyi uygulama hangisinin olduğunu veya MySQL kimlik bilgileri/ana bilgisayar için bir değişken oluşturulduğunda ne yapılması gerektiğini öğrenmek istiyorum.MySQL kimlik bilgileri/ana bilgisayar değişkenleri en iyi yöntemler

define('HOST', 'localhost'); 
    // etc.. 
    mysql_connect(HOST, // etc... 

ikisi için

$host = 'localhost'; 
    // etc.. 
    mysql_connect($host, // etc... 

vs kolayca kolayca değeri ne bulabilirsiniz belki bildirilen değişkenler veya sabitler ne kontrol edebilir. Birden çok kullanıcının paylaşabileceği ve kullanabileceği bir kod var.

Bu değişkenleri korumanın en iyi yolu nedir?

cevap

31
İşte

var birkaç çözümler ) Her kullanıcıya kullanıcı ve şifre vermek ve her kullanıcı veritabanında kendi izinlerine sahip: Güvenlik konusunda endişeli olarak Ancak, ben bunu kontrol etmek önermek veya ect yazın ..). Yani kodunuzda db.config.php içerdiğinden tüm değişkenler belirlenir. Kullanıcı kendi değişkenlerini kullandığı için değişkenleri yankılansa gerçekten farketmez. .

2) Eğer/ortak bir kullanıcı adı vermek custom encoding, zend optimizer veya ionCube ve tanımsız değişkenler kullanılarak (her iki dosya kodlamak sonra veritabanı için geçmek ve edebilirsiniz Aşağıda örnek bir kod:

// file mysql_connect.php 

$link = mysql_connect("localhost", "mysql_user", "mysql_password") 
    or die("cannot connect to database : " . mysql_error()); 

// then this file is encoded so nobody can view it. 

3) Bir noktada, birisi, bir şekilde bu bilgiyi bulabilir. Ben sadece kullanıcılara güvenmeyi öneririm (bu geliştiriciler olduğunu varsayarsak)

+0

İkincisi ne yapmak için pahalı görünüyorsun, üçüncü, iyi değil henüz;) ama ilk, çok kolay ve temiz seviyorum. –

+0

Hiç sorun değil –

1

Kodunuzun bir noktasında, bu tür bilgileri kodlamanız gerekecektir, önemli olan, bakımı kolaylaştıran tek bir yerde tutmaktır. Sadece seçmek (Convert PHP file to binary

İlgili konular