IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

[Spip 2.0.8] Utilisation avec PostgreSQL


Sujet :

EDI, CMS, Outils, Scripts et API PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 3
    Par défaut [Spip 2.0.8] Utilisation avec PostgreSQL
    Bonjour,

    J'ai besoin d'un spécialiste et utilisateur de spip avec postgresql.
    J'ai migré récemment de la version 1.9.3 vers 2.0.8 et ceci a généré plein d'erreurs .
    Des boucles qui fonctionnaient parfaitement sous 1.9 , ne fonctionne plus sous 2.0.8.
    La traduction des boucles en requêtes ne passe pas sous Postgresql notamment parce que ces requêtes sont générées avec des doubles quotes.

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    SELECT documents.id_document, documents.titre
    FROM spip_documents AS documents LEFT JOIN spip_documents_liens AS l
    			ON documents.id_document=l.id_document
    			LEFT JOIN spip_articles AS aa
    				ON (l.id_objet=aa.id_article AND l.objet="article")
    			LEFT JOIN spip_breves AS bb
    				ON (l.id_objet=bb.id_breve AND l.objet="breve")
    			LEFT JOIN spip_rubriques AS rr
    				ON (l.id_objet=rr.id_rubrique AND l.objet="rubrique")
    			LEFT JOIN spip_forum AS ff
    				ON (l.id_objet=ff.id_forum AND l.objet="forum")
    		  
    INNER JOIN spip_documents_liens AS L1 ON ( L1.id_document = documents.id_document )
    WHERE ((aa.statut = "publie") OR bb.statut = "publie" OR rr.statut = "publie" OR ff.statut="publie")
    	AND (documents.taille > 0 OR documents.distant='oui')
    	AND (L1.id_objet = 77)
    	AND (L1.objet = 'article')
    	AND (documents.mode = 'document')
    GROUP BY documents.id_document,documents.id_document, documents.id_document, documents.titre
    Cette requête ne passe pas dans phppgadmin.
    Si je remplace par des simples quotes , cela fonctionne .
    On peut remarquer également sur cette même requete , la présence de simple quote.

    J'aurais besoin d'un spécialiste pour essayer d'identifier où est ce que ces double quotes sont générés dans le code de spip.
    A priori c'est dans le fichier req/pg.php .

    J'ai essayé d'y faire des bricolages mais je n'arrive pas à trouver le bon endroit et je génère des erreurs de syntaxe.
    De plus je ne connais pas le php .

    Sinon est-ce qu'il y a un moyen pour préciser à spip de générer des simples quote ?

    Merci

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 3
    Par défaut
    Sinon quelqu'un aurait-il déjà utilisé avec succès la combinaison spip 2.0.8 et postgresql 8.3 ?????

  3. #3
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 506
    Par défaut
    Bonjour est-ce vous qui avez générez ce code sql, parce que il suffit alors de remplacer les doubles quotes par des simples !

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 3
    Par défaut
    Nan je n'ai aucunement généré la requête ci-dessus.

    J'ai simplement effectué une boucle avec la syntaxe proposée par spip et spip s'occupe lui-même de générer ses requêtes .
    La requête ci-dessus en était un exemple.

    Mais je me suis persuadé que le problème rencontré ne vient pas de ce que j'ai écrit dans mes squelettes personnalisés.
    Si on installe un spip 2.0.8 et si on va dans l'espace privé pour créer sa première rubrique et bien alors qu'aucun code personnalisé n'ait été incorporé , il se produit une erreur.
    Exactement la même , problème de double quotes.

    Ceci testé de la version 2.0.8 jusqu'à la version 2.0.1 ( echec ), à partir de la 2.0.0 cela fonctionne.

    Je suis donc revenu à la 2.0.0.

    Merci si vous en savez plus , n'hésitez à en faire part

  5. #5
    Membre averti
    Inscrit en
    Janvier 2005
    Messages
    20
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2005
    Messages : 20
    Par défaut
    J'ai un semblant de solution...

    Le problème ne semble pas se situer dans le fichier "pg.php", mais dans "/ecrire/public/boucles.php".

    En effet, il semblerait que les doubles quotes soient inscrites en dur dans les requêtes... Pour ma part, j'ai remplacé \"exemple\" par \'exemple\' aux bons endroits dans la fonction boucle_DOCUMENTS_dist, et ça a l'air de tourner...

    Mais bon, j'ai pas un super niveau en dev. Peut-être qu'un expert peut suivre cette idée et l'améliorer pour la communauté...

Discussions similaires

  1. [9.2] Utilisation connexion ODBC avec PostGreSQL
    Par lancirica dans le forum Administration
    Réponses: 6
    Dernier message: 26/07/2013, 08h32
  2. Utilisation de Postgresql avec Silverlight
    Par narglix dans le forum Silverlight
    Réponses: 20
    Dernier message: 07/03/2010, 08h18
  3. Utiliser les séquences avec postgresql
    Par Emplyst dans le forum Hibernate
    Réponses: 2
    Dernier message: 15/01/2009, 18h00
  4. Conseil sur l'utilisation de postgreSQL avec Delphi 2007
    Par QAYS dans le forum Bases de données
    Réponses: 3
    Dernier message: 14/10/2008, 10h11
  5. [Security] Utilisation d'acegi avec postgresql
    Par rc_29 dans le forum Spring
    Réponses: 4
    Dernier message: 04/06/2007, 17h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo