Comment stocker une donné qui est sous forme d'un tableau dans une base de donné
Résolu
yacinebosss
Messages postés
156
Date d'inscription
Statut
Membre
Dernière intervention
-
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention - 4 janv. 2021 à 19:35
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention - 4 janv. 2021 à 19:35
A voir également:
- Comment stocker une donné qui est sous forme d'un tableau dans une base de donné
- Mise en forme tableau word - Guide
- Comment imprimer un tableau excel sur une seule page - Guide
- Tableau ascii - Guide
- Mise en forme conditionnelle excel - Guide
- Trier un tableau excel - Guide
3 réponses
Bonjour
Tu parles de tableau... Tu veux dire des tables HTML ou des array php ?
Après... Tout dépend si tu dois faire ensuite des recherches dans ces données ou non...
Il serait bien de donner des exemples de çe que tu veux stocker..
Tu parles de tableau... Tu veux dire des tables HTML ou des array php ?
Après... Tout dépend si tu dois faire ensuite des recherches dans ces données ou non...
Il serait bien de donner des exemples de çe que tu veux stocker..
j'ai essayer unserialize et serialize mais ca ne m'arrange pas du tout, ca ne le renvois pas en array.
Salut,
convertissez le tableau en texte si vous voulez, une BDD ne stockera pas les variables d'un programme.
Et pour récupérer vous pouvez transformer la chaîne de caractères en tableau à nouveau en repérant les séparateurs.
La notation JSon peut vous aider(ou csv, xml ou tout format qu'il vous plaira d'utiliser).
Serialize ou Unserialize (on ne sait même pas du langage dont vous parlez) ne sert pas à ça.
Il est bien entendu pas recommandé de stocker plusieurs valeurs dans une base de données. C'est bien sûr une erreur, une donnée étant censé être unique c'est la façon dont votre base de donnée qui est à refaire si vous êtes confronté à ce problème.
Avec votre système vous récupérez des données qui ne sont pas exploitables et si une seule valeur du tableau que vous stockez est nécessaire vous devez les récupérer toutes.
Cela rajoute des opérations à faire par le programme bien inutilement(= lenteur de la réponse, de l'ensemble du programme), peut facilement provoquer des erreurs et rends le code beaucoup plus complexe qu'il devrait être.
Donc à éviter totalement pour une base de données qui soit en accord avec ce que votre système doit en faire: une donnée doit être unique afin de pouvoir la rendre disponible.
Là c'est un gros f**toir qui vous pétera à la gueule forcément un jour.
convertissez le tableau en texte si vous voulez, une BDD ne stockera pas les variables d'un programme.
Et pour récupérer vous pouvez transformer la chaîne de caractères en tableau à nouveau en repérant les séparateurs.
La notation JSon peut vous aider(ou csv, xml ou tout format qu'il vous plaira d'utiliser).
Serialize ou Unserialize (on ne sait même pas du langage dont vous parlez) ne sert pas à ça.
Il est bien entendu pas recommandé de stocker plusieurs valeurs dans une base de données. C'est bien sûr une erreur, une donnée étant censé être unique c'est la façon dont votre base de donnée qui est à refaire si vous êtes confronté à ce problème.
Avec votre système vous récupérez des données qui ne sont pas exploitables et si une seule valeur du tableau que vous stockez est nécessaire vous devez les récupérer toutes.
Cela rajoute des opérations à faire par le programme bien inutilement(= lenteur de la réponse, de l'ensemble du programme), peut facilement provoquer des erreurs et rends le code beaucoup plus complexe qu'il devrait être.
Donc à éviter totalement pour une base de données qui soit en accord avec ce que votre système doit en faire: une donnée doit être unique afin de pouvoir la rendre disponible.
Là c'est un gros f**toir qui vous pétera à la gueule forcément un jour.
Bonjour,
Pourtant.... serialize, transforme un array en string formatée ...
et unserialize .. permet de retransformer cette string en array
Perso, j'opterai plus pour le format json
avec un json_encode pour transformer ton array ....
et un json_decode (avec le paramètre optionnel true ) pour le retransformer en array
Bien entendu, comme je te l'ai indiqué dans mon premier message, stocker les données comme ça implique que tu n'auras jamais besoin de faire de recherche dans ces données....
Dans le cas contraire, il est préférable de les stocker dans des champs séparées de ta base de données....
Il te faut donc concevoir le modèle de ta base pour pouvoir correctement y insérer ces différentes données.
j'ai essayer unserialize et serialize mais ca ne m'arrange pas du tout, ca ne le renvois pas en array.
Pourtant.... serialize, transforme un array en string formatée ...
et unserialize .. permet de retransformer cette string en array
Perso, j'opterai plus pour le format json
avec un json_encode pour transformer ton array ....
et un json_decode (avec le paramètre optionnel true ) pour le retransformer en array
$datas = array(1,5,5,5,9,10,8); $res = json_encode($datas); //..... $myarray = json_decode($res,true);
Bien entendu, comme je te l'ai indiqué dans mon premier message, stocker les données comme ça implique que tu n'auras jamais besoin de faire de recherche dans ces données....
Dans le cas contraire, il est préférable de les stocker dans des champs séparées de ta base de données....
Il te faut donc concevoir le modèle de ta base pour pouvoir correctement y insérer ces différentes données.
et je les recuperer viya leurs id commun dans chaque table. exp: [1,5,5,5,9,10,8] ou bien ["texte",1,"bonjour",5]