X-Git-Url: http://git.cyclocoop.org/?a=blobdiff_plain;f=www%2Fecrire%2Fbase%2Fcreate.php;h=1740bb676f88b12cd549c03298510571648102f8;hb=cc641eb476987612f6d6df1a5417c1c5582a8ab8;hp=02450d5968782a3d897da3cff433cbd9174d9c57;hpb=a33c2ba9d919664b3bb0f565f8e9a8b9d8530cdb;p=lhc%2Fweb%2Fclavette_www.git diff --git a/www/ecrire/base/create.php b/www/ecrire/base/create.php index 02450d5..1740bb6 100644 --- a/www/ecrire/base/create.php +++ b/www/ecrire/base/create.php @@ -3,7 +3,7 @@ /***************************************************************************\ * SPIP, Systeme de publication pour l'internet * * * - * Copyright (c) 2001-2014 * + * Copyright (c) 2001-2016 * * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James * * * * Ce programme est un logiciel libre distribue sous licence GNU/GPL. * @@ -55,13 +55,33 @@ function base_determine_autoinc($table,$desc=array()){ * @return void */ function creer_ou_upgrader_table($table,$desc,$autoinc,$upgrade=false,$serveur='') { + #spip_log("creer_ou_upgrader_table table=$table autoinc=$autoinc upgrade=$upgrade","dbinstall"._LOG_INFO_IMPORTANTE); $sql_desc = $upgrade ? sql_showtable($table,true,$serveur) : false; + #if (!$sql_desc) $sql_desc = false; + #spip_log("table=$table sql_desc:$sql_desc","dbinstall"._LOG_INFO_IMPORTANTE); if (!$sql_desc) { if ($autoinc==='auto') $autoinc = base_determine_autoinc($table,$desc); + #spip_log("sql_create $table autoinc=$autoinc","dbinstall"._LOG_INFO_IMPORTANTE); sql_create($table, $desc['field'], $desc['key'], $autoinc, false, $serveur); + // verifier la bonne installation de la table (php-fpm es-tu la ?) + $sql_desc = sql_showtable($table,true,$serveur); + #if (!$sql_desc) $sql_desc = false; + #spip_log("Resultat table=$table sql_desc:$sql_desc","dbinstall"._LOG_INFO_IMPORTANTE); + if (!$sql_desc){ + // on retente avec un sleep ? + sleep(1); + sql_create($table, $desc['field'], $desc['key'], $autoinc, false, $serveur); + $sql_desc = sql_showtable($table,true,$serveur); + #if (!$sql_desc) $sql_desc = false; + #spip_log("Resultat table=$table sql_desc:$sql_desc","dbinstall"._LOG_INFO_IMPORTANTE); + if (!$sql_desc){ + spip_log("Echec creation table $table","maj"._LOG_CRITIQUE); + } + } } else { + #spip_log("sql_alter $table ... (on s'en fiche)","dbinstall"._LOG_INFO_IMPORTANTE); // ajouter les champs manquants // on ne supprime jamais les champs, car c'est dangereux // c'est toujours a faire manuellement