PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 12-02-2011 23:27:39

xavier.c
Membre
Inscription : 12-02-2011
Messages : 3

recupérer des données dans une chaine cellule MySQL

Bonjour,

J'ai dans ma base une donnée de la forme
a:2:{i:0;s:1:"2";i:1;s:1:"3";}
que j'arrive à récupérer.

je souhaite récupérer les chiffres entre guillemets (""), ici le 2 et le 3, qui correspondent à des identifiants dans une autre table.

Il peut y en avoir beaucoup mais il seront tous entre guillemets.

Comment faire ?

Merci de votre aide

Xavier

Hors ligne

#2 13-02-2011 00:13:05

Jc
Membre
Lieu : Zillisheim - Alsace
Inscription : 15-04-2010
Messages : 1 629
Site Web

Re : recupérer des données dans une chaine cellule MySQL

Bonjour,

Ceci est un problème du à la base à une erreur de définition de données. De plus, lors d'un implode/explode, le "2" sera interprété comme un 2 et donc comme un entier plutôt qu'une chaîne.
La seule solution pour contourner le problème est de faire une conversion de type de donnée en php. Je te laisse consulter le manuel.
Entre nous c'est affreux et comme dirait quelqu'un que tout le monde connait, c'est la porte ouverte à toutes les fenêtres.


POO PHP+Ajax en MVC avec PDO et Bases de données épaisses  : What else?

Hors ligne

#3 13-02-2011 00:41:50

xavier.c
Membre
Inscription : 12-02-2011
Messages : 3

Re : recupérer des données dans une chaine cellule MySQL

Bonjour,

Je suis très débutant mais j'ai avancé...
En fait je fais un explode sur le guillemet puis verifie que c'est un numérique et ça me retourne le bon nombre.

Je sias que ce n'est pas très propre mais cela me sert à faire des tris sur une base créé par un plugin Wordpress sans toucher au coeur du plugin (mieux pour les evol).

Merci de ton aide

Xavier

Hors ligne

#4 13-02-2011 10:53:49

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : recupérer des données dans une chaine cellule MySQL

C'est une donnée sérialisé ça(plus précisément un tableau), pourquoi ne pas la désérialiser pour l'utiliser...
unserialize()

Hors ligne

#5 14-02-2011 08:44:32

xavier.c
Membre
Inscription : 12-02-2011
Messages : 3

Re : recupérer des données dans une chaine cellule MySQL

Merci beaucoup
En effet, ça à l'air beaucoup plus propre.
Pour l'instant mon "bidouillage" fonctionne mais je vais essayer de fouiller plus tard cette commande pour être mieux.

Hors ligne

Pied de page des forums