Récupération des messages d'erreur après un appelle à la fonction creer_base

Bonjour,

Je mets à nouveau la liste à contribution.

J'aimerais savoir si il y a un moyen de récupérer l'information sur un
quelconque message d'erreur lors du déroulement de la création de table dans la
base SPIP.

J'ai étudié le code de cette fonction et je ne vois nul part où pourrais être
renvoyé le n° d'erreur ou le message en cas de problème lors de la création de
ces nouvelles tables.

C'est tout de même bizare que l'on ne puisse pas vérifier le bon déroulement de
la création de nouvelles tables avant de valider leur installation.

Je vous remercie d'avance

Cordialement,

Xavier BUROT
http://xebiaut.free.fr

On 27 déc, 13:59, Xavier BUROT <xebi...@free.fr> wrote:

Bonjour,

Je mets à nouveau la liste à contribution.

J'aimerais savoir si il y a un moyen de récupérer l'information sur un
quelconque message d'erreur lors du déroulement de la création de table dans la
base SPIP.

J'ai étudié le code de cette fonction et je ne vois nul part où pourrais être
renvoyé le n° d'erreur ou le message en cas de problème lors de la création de
ces nouvelles tables.

function creer_base() {
    global $tables_principales, $tables_auxiliaires, $tables_images,
$tables_sequences, $tables_documents, $tables_mime;

    // ne pas revenir plusieurs fois (si, au contraire, il faut
pouvoir
    // le faire car certaines mises a jour le demandent explicitement)
# static $vu = false;
# if ($vu) return; else $vu = true;

    foreach($tables_principales as $k => $v) {
        spip_mysql_create($k, $v['field'], $v['key'], true);
        if (spip_sql_errno()) {
            echo implode(':', __FILE__, __FUNCTION__) . "<br />
\n::erreur sur $k :<br />\n" . spip_sql_error() . "<br />\n";
            die();
        }
    }
    foreach($tables_auxiliaires as $k => $v) {
        spip_mysql_create($k, $v['field'], $v['key'], false);
        if (spip_sql_errno()) {
            echo implode(':', __FILE__, __FUNCTION__) . "<br />
\n::erreur sur $k :<br />\n" . spip_sql_error() . "<br />\n";
            die();
        }
    }

  // etc
}

Bonjour,

C'est un ajout ou c'est dans le code original ? Car moi je ne l'ai pas trouvé
dans ma version de SPIP 1.9.2.

Cordialement,

Xavier BUROT

Selon bruno desthuilliers <bruno.desthuilliers@gmail.com>:

On 27 déc, 13:59, Xavier BUROT <xebi...@free.fr> wrote:
> Bonjour,
>
> Je mets à nouveau la liste à contribution.
>
> J'aimerais savoir si il y a un moyen de récupérer l'information sur un
> quelconque message d'erreur lors du déroulement de la création de table
dans la
> base SPIP.
>
> J'ai étudié le code de cette fonction et je ne vois nul part où pourrais
être
> renvoyé le n° d'erreur ou le message en cas de problème lors de la création
de
> ces nouvelles tables.

function creer_base() {
    global $tables_principales, $tables_auxiliaires, $tables_images,
$tables_sequences, $tables_documents, $tables_mime;

    // ne pas revenir plusieurs fois (si, au contraire, il faut
pouvoir
    // le faire car certaines mises a jour le demandent explicitement)
# static $vu = false;
# if ($vu) return; else $vu = true;

    foreach($tables_principales as $k => $v) {
        spip_mysql_create($k, $v['field'], $v['key'], true);
        if (spip_sql_errno()) {
            echo implode(':', __FILE__, __FUNCTION__) . "<br />
\n::erreur sur $k :<br />\n" . spip_sql_error() . "<br />\n";
            die();
        }
    }
    foreach($tables_auxiliaires as $k => $v) {
        spip_mysql_create($k, $v['field'], $v['key'], false);
        if (spip_sql_errno()) {
            echo implode(':', __FILE__, __FUNCTION__) . "<br />
\n::erreur sur $k :<br />\n" . spip_sql_error() . "<br />\n";
            die();
        }
    }

  // etc
}

_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip
FAQ : FAQ webmestre - SPIP

Xavier BUROT wrote:

Bonjour,

Je mets à nouveau la liste à contribution.

J'aimerais savoir si il y a un moyen de récupérer l'information sur un
quelconque message d'erreur lors du déroulement de la création de table dans la
base SPIP.

J'ai étudié le code de cette fonction et je ne vois nul part où pourrais être
renvoyé le n° d'erreur ou le message en cas de problème lors de la création de
ces nouvelles tables.

C'est tout de même bizare que l'on ne puisse pas vérifier le bon déroulement de
la création de nouvelles tables avant de valider leur installation.

Un peu d'accord, surtout pour les plugins qui en rajoutent :slight_smile:

Je vous remercie d'avance

Cordialement,

Xavier BUROT
http://xebiaut.free.fr

Perso j'ai écrit une fonction qui vérifie la structure des tables créées après creer_base en les comparant avec les définitions fournies (voir dans plugin-spipbb la fonction spipbb_check_tables dans inc/spipbb_inc_config )
Mais attention fonction pas belle du tout (et ne verifie pas tout).

--Chryjs

Le 27/12/07, Xavier BUROT<xebiaut@free.fr> a écrit :

Bonjour,

C'est un ajout ou c'est dans le code original ? Car moi je ne l'ai pas trouvé
dans ma version de SPIP 1.9.2.

C'est un ajout, of course - et seulement dans ma copie de travail,
pour tester l'install des plugins que j'écris.