Sylvain
2008-03-26 21:29:20 UTC
lorsque le serveur de pages (pas précisé non plus, mais php ou asp)
accède à la table pour lire (et lire uniquement) il peut y accéder
via un compte utilisateur de la table sans mot de passe et avec un
droit READ uniquement.
Je sens bien que je tourne en rond ...accède à la table pour lire (et lire uniquement) il peut y accéder
via un compte utilisateur de la table sans mot de passe et avec un
droit READ uniquement.
$link = mysql_connect($host, $nom_base, $mot_de_passe);
$link = mysql_connect($host, $user, $pass);
puis: mysql_select_db($base, $link);
vous faites en effet ceci pour connecter l'utilisateur 'user'
à la base précisée et lui permettre de faire ce que son compte
mysql l'autorise à faire.
concrètement cet 'user' est juste un utilisateur parmi d'autres
également inscrits dans la table des utilisateurs de cette base.
une lecture de manuel de MySQL est peut être opportun !
il est possible de cela vous paraisse du chinois si votre FAI
a configuré la base pour vous et vous a laissé croire que cet
'user' était unique.
il en est évidemment rien, utilisez par exemple MySQL Administrator
disponible dans la suite "MySQL Tools" (dl sur le site mysql), et
créez des utilisateurs supplémentaires si nécessaires, configurer
ensuite le compte anonyme pour autoriser la lecture (elle seule) en
local (et en local seul), après quoi vos pages php contiendront:
$link = mysql_connect();
qui se connecte sur localhost (par défaut) sous le compte anonyme.
un problème réglé, il n'y a plus de passe du tout donc pas à le
protéger.
le compte mysql actuel (vraisemblablement unique) que vous utilisez
est votre compte d'administrateur de la base, vous ne devriez jamais
l'utiliser dans une page php, vous l'utiliserez seulement via MyQSL
Admin. et MySQL Query Browser pour mettre à jour vos pages.
vous pouvez éventuellement avoir des pages privées (un répertoire
protégé par .htaccess) qui contiendra des pages php codant un
accès à mysql avec votre compte admin pour réaliser des opérations
de maintenance de la base via des formulaires html et du traitement
php; cela peut être nécessaire pour des sites moyens à gros nécessitant
de nombreuses opérations, ici si on parle d'une seule table d'url je
ne pense pas que cela soit nécessaire.
Je ne sais pas faire via le compte utilisateur que vous évoquez.
donc ceux que vos devrez peut être créer.Par ailleurs, lors des visites, des données sont inscrites dans cette base.
généralement un compteur de visites (ou des choses de même importances,je veux dire non sensibles) - pour cette table la, vous donnerez un
droit d'écriture à l'utilisateur anonymous.
NOTA: il n'existe pas de ng dédié à mysql dans la hiérarchie fr.
où faire suivre ce fil, je duplique et positionne le renvoi sur
fr.comp.lang.php qui me parait le plus judicieux.
Sylvain.