[spip-dev] r10463 - in spip/ecrire: action inc install

* esj@rezo.net tapuscrivait, le 30/09/2007 22:34:

Author: esj@rezo.net
Date: 2007-09-30 22:34:31 +0200 (dim, 30 sep 2007)
New Revision: 10463

Log:
Multi-base: suite au problème posé dans [10460] sur la possibilité depuis [10457] d'avoir dans un unique répertoire tous les fichiers de connexions de sites partageant les mes sources, la spécification de ces fichiers, telle que décrite dans [10113] (et reprise dans [10183] et http://www…spip-contrib.net/MultiBase) subit une modification. Sont introduites deux constantes _DIR_CONNECT et _DIR_CHMOD, indiquant les répertoires où figureront le fichier décrivant la connexion et celui décrivant les droits des fichiers, en plus des constantes FILE_CONNECT_INS et FILE_CHMOD_INS. Par défaut, ces valeurs conservent le nommage habituel en {{{config/connect.php}}} et {{{config/chmod.php}}}. Lorsqu'on le référence une base externe ''A'', SPIP va à présent chercher le fichier nommé par l'expression {{{ _DIR_CONNECT . }}} ''A'' {{{ . '.php' }}}, autrement dit {{{config/}}}A{{{.php}}}. Par rapport à la spécification précédente, le préfixe {{{connect}}} a donc disparu, ce qui résoud le p

roblème posé dans [10460].
Je suis en train de tester ça.
ça marche bien si la 2e base est aussi celle d'un site SPIP
Mais si ce n'est pas un site SPIP, ça donne en plus du résultat correct dans le squelette :
Erreur(s) dans le squelette

1 Erreur SQL
valeur FROM spip_meta WHERE nom='charset_sql_connexion'
Table 'db_radios.spip_meta' doesn't exist
   AIDE

Ci joint :
- radios.php : la connexion
- radios.html : le squelette (minimal)
- dump_radios.sql : la base de données

radios.php (199 Bytes)

radios.html (96 Bytes)

dump_radios.sql (3.72 KB)

Les 2 cas où on génére ça sont dans le fichier base/connect.sql, et normalement ça n'est fait que si le fichier de connexion assure que c'est un site sous SPIP. Ton fichier de 2e base doit faire croire à SPIP que c'est une base créé par SPIP, alors qu'il ne faut pas mettre spip_connect_version dans un tel fichier.

Committo,Ergo:Sum

* Committo,Ergo:sum tapuscrivait, le 05/06/2008 00:18:

* RealET tapuscrivait, le 05/06/2008 00:25:

ça marche.

Tant qu'on aborde ce sujet, ecrire/?exec=admin_declarer liste bien les connexion disponibles, mais ne permet d'en créer de nouvelles.
J'indique localhost et root (pas de mot de passe car la base n'en a pas)
Clic sur suivant et j'obtient :

Déclaration d'une base supplémentaire
Essai de connexion à la base

La connexion à la base de données a échoué.