Annonce

  •  » Styles
  •  » [Resolu] Theme Stripped : Problèmes avec la base sqlite3

#1 2011-07-22 16:09:29

Fox074
Membre
2011-07-22
9

[Resolu] Theme Stripped : Problèmes avec la base sqlite3

Bonjour,

Ce message est principalement destiné a Zaphod pour faire une modification de son thème pour qu'il soit compatible avec la base Sqlite3.

J'ai un problème lors de l'activation du thème Stripped sur un base Sqlite3.

Code:

Warning: SQLite3::query(): Unable to prepare statement: 1, near "hideMenu": syntax error in /home/fox/www/piwigoDbg/include/dblayer/functions_sqlite.inc.php on line 129 INSERT INTO piwigo_config (param,value,comment) VALUES ("stripped" , "a:19:{s:8:"hideMenu";b:1;s:12:"animatedMenu";b:1;s:12:"animatedTabs";b:1;s:18:"replaceActionIcons";b:1;s:11:"noLowercase";b:0;s:15:"showThumbLegend";b:0;s:21:"showTitleOnBrowsePath";b:0;s:29:"showDescriptionInsteadOfTitle";b:0;s:19:"useNavigationArrows";b:1;s:16:"infoTabAdminOnly";b:0;s:13:"imageAutosize";b:1;s:18:"imageAutosizeTitle";b:1;s:19:"imageAutosizeMargin";i:60;s:22:"imageAutosizeMinHeight";i:200;s:13:"navThumbsFade";i:150;s:15:"marginContainer";i:30;s:16:"paddingContainer";i:10;s:15:"defaultZoomSize";s:4:"full";s:16:"highResClickMode";s:4:"zoom";}" , "stripped theme parameters");
near "hideMenu": syntax error

Pour corriger ce problème j'ai du modifier le fichier stripped/admin/maintain.inc.php comme ceci :
Code original :

Code:

    $query = '
INSERT INTO ' . CONFIG_TABLE . ' (param,value,comment)
VALUES ("stripped" , "'.pwg_db_real_escape_string(serialize($config)).'" , "stripped theme parameters");';

par :

Code:

    $query = "
INSERT INTO " . CONFIG_TABLE . " (param,value,comment)
VALUES ('stripped' , '".pwg_db_real_escape_string(serialize($config))."' , 'stripped theme parameters');";

Après cette on a une erreur lors de la désactivation du thème :

Code:

Warning: SQLite3::query(): Unable to prepare statement: 1, near "LIMIT": syntax error in /home/fox/www/piwigoDbg/include/dblayer/functions_sqlite.inc.php on line 129 DELETE FROM piwigo_config WHERE param="stripped" LIMIT 1;
near "LIMIT": syntax error

Pour corriger ce problème j'ai du modifier le fichier stripped/admin/maintain.inc.php comme ceci :
Code original :

Code:

$query = 'DELETE FROM ' . CONFIG_TABLE . ' WHERE param="stripped" LIMIT 1;';

par :

Code:

$query = "DELETE FROM " . CONFIG_TABLE . " WHERE param='stripped';";

dans le même esprit je pense qu'il faudra changer ce fichier stripped/admin/upgrade.inc.php :
Code original :

Code:

    $query = '
INSERT INTO ' . CONFIG_TABLE . ' (param,value,comment)
VALUES ("stripped" , "'.pwg_db_real_escape_string(serialize($config)).'" , "stripped theme parameters");';

par

Code:

    $query = "
INSERT INTO " . CONFIG_TABLE . " (param,value,comment)
VALUES ('stripped' , '".pwg_db_real_escape_string(serialize($config))."' , 'stripped theme parameters');";

J'ai testé ce code sur une base MySql et je n'ai pas eu de problème avec.
Pour ce qui est de postgresql je n'ai pas testé.

Pour info j'utilise :
nginx, PHP5, sqlite3, piwigo 2.2.4

J'espère que cela sera utile.
merci.

Dernière modification par Fox074 (2011-07-27 15:40:32)

Hors ligne

#2 2011-07-22 18:54:58

Zaphod
Former Piwigo Team
Toulouse
2006-11-13
2422

Re: [Resolu] Theme Stripped : Problèmes avec la base sqlite3

Merci de faire remonter le bug.
Je le note comme à faire.

Si quelqu'un qui s'y connait peut confirmer que ça ne fera pas de problème...

Dernière modification par Zaphod (2011-07-22 18:56:34)

Hors ligne

#3 2011-07-23 00:38:52

plg
Équipe Piwigo
Nantes, France, Europe
2002-04-05
12644

Re: [Resolu] Theme Stripped : Problèmes avec la base sqlite3

Très intéressant, merci Fox074. Si tu vois d'autres soucis avec SQLite, n'hésites pas à les remonter (et à me notifier, sauf si c'est dans la section "beta test et développement" du forum auquel cas je suis automatiquement notifié)


Les historiens ont établi que Pierrick était le premier utilisateur connu de Piwigo.

Hors ligne

#4 2011-07-24 08:35:30

Fox074
Membre
2011-07-22
9

Re: [Resolu] Theme Stripped : Problèmes avec la base sqlite3

j'ai rapporté 2 autres bug dans le bug tracker :
http://piwigo.org/bugs/view.php?id=2385
http://piwigo.org/bugs/view.php?id=2383

Si je vois autre autre chose je ferais de mon mieu pour remonter l'info.
Votre gallery est vraiment sympa et la combinaison avec Sqlite3 donne quelque chose de vraiment léger a gérer.

Hors ligne

#5 2011-07-25 21:41:33

Zaphod
Former Piwigo Team
Toulouse
2006-11-13
2422

Re: [Resolu] Theme Stripped : Problèmes avec la base sqlite3

J'ai sorti une nouvelle version, peux-tu vérifier que ça marche correctement ?
Avec mysql aucun souci a priori.

Hors ligne

#6 2011-07-26 11:19:00

Fox074
Membre
2011-07-22
9

Re: [Resolu] Theme Stripped : Problèmes avec la base sqlite3

Oui il y a du mieu.
L'installation se passe bien et l'activation aussi.
Par contre quand on désactive le thème j'ai toujours cette erreur

Code:

Warning: SQLite3::query(): Unable to prepare statement: 1, near "LIMIT": syntax error in /home/fox/www/piwigoSqlite/include/dblayer/functions_sqlite.inc.php on line 129 DELETE FROM piwigo_config WHERE param='stripped' LIMIT 1;
near "LIMIT": syntax error

Quand je consulte la doc SQLITE (http://www.sqlite.org/lang_delete.html) on devrait pouvoir utiliser l'instruction LIMIT avec le DELETE mais pour cela il faut compiler SQLite avec une option spécial qui n'est pas activée par défaut (http://www.sqlite.org/compile.html#enab … lete_limit).

De mon point de vu je ne pense pas qu'utiliser LIMIT dans ce DELETE soit utile.
Si c'est bien le cas retire le (voir le message pécédent) et ça fonctionnera pour moi.
Sinon il faudra trouver une clause WHERE plus restrictive pour avoir un thème générique qui fonctionne sur MySQL et Sqlite3.


PS:
Je pense que ton théme "Stripped & Columns" devra aussi être corrigé.

Dernière modification par Fox074 (2011-07-26 12:03:41)

Hors ligne

#7 2011-07-26 13:02:48

Zaphod
Former Piwigo Team
Toulouse
2006-11-13
2422

Re: [Resolu] Theme Stripped : Problèmes avec la base sqlite3

stripped & columns n'est pas de moi, c'est de flop25.
Il se base sur l'install de stripped donc si je corrige stripped, il bénéficiera de la modif.

Le coup du LIMIT c'est une erreur, je n'avais pas vu qu'il fallait l'enlever.
Je referai une correction dans les jours qui viennent.

Hors ligne

#8 2011-07-26 14:13:52

flop25
Équipe Piwigo
2006-07-06
6544

Re: [Resolu] Theme Stripped : Problèmes avec la base sqlite3

Zaphod a écrit:

stripped & columns n'est pas de moi, c'est de flop25.
Il se base sur l'install de stripped donc si je corrige stripped, il bénéficiera de la modif.

Le coup du LIMIT c'est une erreur, je n'avais pas vu qu'il fallait l'enlever.
Je referai une correction dans les jours qui viennent.

Oh shocking ! chacun chez soi et les poules seront bien gardées !!
^^

stripped & columns a aussi sa propre config en plus de celle de stripped. Fox074 pourrais-tu y jeter un œil stp ?

Hors ligne

#9 2011-07-26 14:20:02

Zaphod
Former Piwigo Team
Toulouse
2006-11-13
2422

Re: [Resolu] Theme Stripped : Problèmes avec la base sqlite3

Ah oui ch'suis bête ça ne reprend pas du tout cette partie là...

En fait a priori à part le LIMIT c'est une inversion des " et des ' si j'ai bien compris.

Hors ligne

#10 2011-07-26 16:24:17

Fox074
Membre
2011-07-22
9

Re: [Resolu] Theme Stripped : Problèmes avec la base sqlite3

oui c'est exactement ça en ce qui concerne les quotes.

Voilà ce que j'ai modifié pour "Stripped & Columns" :
Fichier /stripped_black_bloc/admin/maintain.inc.php

Code:

<?php

function theme_activate($id, $version, &$errors)
{
  global $prefixeTable, $conf;

  if (!isset($conf['stripped_black_bloc']))
  {
    $config = array(
        'color_main'                                            => 'E6554F',
        'column_width'                                          => 170,
        'thumbnail_width'                                               => 150,
        'thumbnail'                                     => 'piwigo' //generated - auto - piwigo
      );

    $query = "
INSERT INTO " . CONFIG_TABLE . " (param,value,comment)
VALUES ('stripped_black_bloc' , '".pwg_db_real_escape_string(serialize($config))."' , 'color_main#column_width#thumbnail_width#thumbnail(generated - auto - piwigo)');";

    pwg_query($query);
  }
}

function theme_deactivate()
{
  global $prefixeTable;

  $query = "DELETE FROM " . CONFIG_TABLE . " WHERE param='stripped_black_bloc' ;";
  pwg_query($query);
}

?>

Je ne sais pas trop a quoi sert le fichier /stripped_black_bloc/admin/upgrade.inc.php mais je pense qu'il faut aussi le mettre a jour :

Code:

<?php

if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!');

global $prefixeTable, $conf;

if (!isset($conf['stripped_black_bloc']))
{
        $config = array(
        'color_main'                                            => 'E6554F',
        'column_width'                                          => 170,
        'thumbnail_width'                                               => 150,
        'thumbnail'                                     => 'piwigo' //generated - auto - piwigo
      );

    $query = "
INSERT INTO " . CONFIG_TABLE . " (param,value,comment)
VALUES ('stripped_black_bloc' , '".pwg_db_real_escape_string(serialize($config))."' , 'color_main#column_width#thumbnail_width#thumbnail(generated - auto - piwigo)');";

    pwg_query($query);
                load_conf_from_db();
}
elseif (count(unserialize( $conf['stripped_black_bloc'] ))!=4) {
        $config = array(
        'color_main'                                            => 'E6554F',
        'column_width'                                          => 170,
        'thumbnail_width'                                               => 150,
        'thumbnail'                                     => 'piwigo' //generated - auto - piwigo
      );


        conf_update_param('stripped_black_bloc', pwg_db_real_escape_string(serialize($config)));
                load_conf_from_db();
}
?>

Dernière modification par Fox074 (2011-07-26 16:33:04)

Hors ligne

#11 2011-07-26 16:36:22

flop25
Équipe Piwigo
2006-07-06
6544

Re: [Resolu] Theme Stripped : Problèmes avec la base sqlite3

oki merci!

Hors ligne

#12 2011-07-26 21:44:06

Zaphod
Former Piwigo Team
Toulouse
2006-11-13
2422

Re: [Resolu] Theme Stripped : Problèmes avec la base sqlite3

Ca devrait marcher avec la 1.4.3...

Hors ligne

#13 2011-07-27 08:50:22

Fox074
Membre
2011-07-22
9

Re: [Resolu] Theme Stripped : Problèmes avec la base sqlite3

c'est bon pour moi.
Bon boulot.
merci.

Hors ligne

  •  » Styles
  •  » [Resolu] Theme Stripped : Problèmes avec la base sqlite3

Pied de page des forums

Propulsé par FluxBB

github twitter newsletter Faire un don Piwigo.org © 2002-2024 · Contact