Hi All!
Well first I would like to warn you that serialize/unserialize functions are buggy with some php4 releases. This is the case till 4.0.6 (as far as I remember) with objects but it's also the case with complex arrays (I mean associative ones) at least with one of the php release I can't remember the number. Check the official php bug tracker to find it.
In the initial load of variables, we would do them in this order:
- load variables from configuration file (base defaults and....
This scheme sounds right to me.
Maybe a third field to indicate if this can be overriden by the user (indicating a possible search in config_user).
Here are my two table structures that I have been playing around with:
Weel using MyISAM table type and a comment for it means they can only be used for MySQL 3.23.... revisions.
Looking at this, there are some questions I have, for people. should the 'value' column be BLOB type or TEXT type? How large will the data be? Could we shring it to TINYTEXT/BLOB or VARCHAR(255) ?
IMHO TEXT type is required, even if a varchar sounds enough at this time: using TEXT will allow us to add as much settings as we want later without having to change the table structure.
I also agree with sessions but we must be warn that it'll be a hard work to take into account each possible php configuration.
For security reasons, I also propose doing away with the 'only_db' option, as it is only a very poor substituate for proper user rights in MySQL.
I agree, it's a "very poor substituate" BUT I can't imagine an other way to do it. We already have widely debated about the "SHOW GRANTS" limits in one hand, we can't rely neither on the "SHOW DATABASE" query neither on the "mysql_db_list" function on the other hand (since lots of shared server disable this features for security and server charge reasons). That's a real and annoying problem...
Loïc
______________________________________________________________________________ ifrance.com, l'email gratuit le plus complet de l'Internet ! vos emails depuis un navigateur, en POP3, sur Minitel, sur le WAP... http://www.ifrance.com/_reloc/email.emailif