Suite à plusieurs jours de recherche je ne sais plus quoi faire !!
j'ai crée un base de donnée pour faire une bibliothèque vidéos.
dans un premier temps j'enregistre les catégories de films action, aventure, drame ect .... et dans un second temps je vais enregistré le titre du film dans la catégorie concerné .
Voici le résultat finale que je voudrais obtenir :
{
"Action - Aventure": {
"nom": "Action - Aventure",
"films": {
"Cross the Line": {
"titre": "Cross the Line"
},
"Wrong Turn": {
"titre": "Wrong Turn"
},
"Rams": {
"titre": "Rams"
}
}
},
"Science-Fiction": {
"nom": "Science-Fiction",
"films": {
"The Breakdown": {
"titre": "The Breakdown"
},
"Cross the Line": {
"titre": "Cross the Line"
}
}
}
}
Mais ça c'est pour plus tard !!!
Mais étant novice en php et json je galère un peu et c'est pour ça que pour le moment je n'utilise pas de fonction de classe ou de js car je n'en suis pas capable j'apprends en php puis je progresserais après une fois le php bien compris
Après ce grand blabla,
Voici le résultat de mon json aujourd'hui ( c'est une partie )
lorsque que j'enregistre ou que je supprime une catégorie tout ce passe bien !!
mais quand je fais une modification avec formulaire : exemple pour "western" je rajoute un 's' donc "westerns" il me modifie bien western en westerns mais il me supprime tout le reste :
Oui avec le unset, ça fonctionne !!! Merci beaucoup !!
Ne connaissant pas bien tout ce chmilblique, tu me conseillerais quoi pour avoir un résultat que je puisse bien comprendre la chose, car des fois en mettant des guillemet j'ai un tableau et des fois c'est un objet, j'ai encore beaucoup de progrès à faire j'en suis contient.
Un tableau (numériquement indexé) ? Ca permettrait de modifier directement une donnée sans supprimer/rajouter. C'est surtout à toi de voir ce qui t'est le plus pratique à l'usage.
Manipuler du JSON, ça demande avant tout de comprendre les structures que sont les tableaux et/ou objets, surtout quand elles sont imbriquées sur plusieurs niveaux.
Un tableau (numériquement indexé) ? Ca permettrait de modifier directement une donnée sans supprimer/rajouter. C'est surtout à toi de voir ce qui t'est le plus pratique à l'usage.
Manipuler du JSON, ça demande avant tout de comprendre les structures que sont les tableaux et/ou objets, surtout quand elles sont imbriquées sur plusieurs niveaux.
Un tableau indexé oui pourquoi pas !!! Alors en fait j'ai fais des tests en ajoutant des données par Example dans western mais quand je modifie westerns ça efface ce que contiens western donc je pense qu'il faut que je parte sur une autre façon de faire mais je ne vois pas comment.
la structure que j'aimerais est :
1 - enregistrer les catégories ( action, drame ect.... )
2 - pouvoir enregistrer dans chaque catégorie les films qui correspondent à la catégorie ( j'ai mis un exemple en haut du post )
et j'aimerais pouvoir changer de catégorie ou la modifier sans perdre les données qui vont avec .
voilà après si tu peux m'orienter sur des piste ou des exemples je suis preneur.
encore merci
j'enlève résolu car ça efface les données qui se trouvent dans la catégorie ( je crois à cause de unset !! )
unset c'était pour modifier une entrée/catégorie parce qu'en fait vu que tu te servais du nom que tu modifiais comme clé, il fallait bien la supprimer avant d'en recréer une avec le nouveau nom.
Forcément, tu ne vas pas la supprimer par un unset si le but est d'associer un film à une catégorie. Est-ce qu'une opération de suppression a un sens si c'est pour rajouter quelque chose ?
effectivement la suppression n'as pas de sens sur une catégorie.
le code que tu m'as données ci-dessus c'est pour la modification et je vois que le code ajoute un tableau films du coup si je comprends bien
à la validation du formulaire je récupère la valeur de $_POST['nom_categorie'] ( le ??= ça veut dire quoi ? )
car là j'ai des erreurs
par contre => c'est : => ( c'est bien pour désigner la valeur qu'il récupère dans le formulaire ? )
je crois que les codes sont modifiés car j'ai des erreurs avec ??= et je ne sais pas à quoi ça corresponds mais je cherche
Là actuellement ça ajoute bien films avec un tableau donc il faut que j'ajoute également ce code à l'ajout de catégorie ( si je comprends bien ) et pour ajouter des films c'est avec un nouveau formulaire avec la seconde ligne de code . (dite moi si je me trompe !! )
Merci pour ta patience
bonne soirée sinon on vois ça demain ou quand tu veux !!
Oui, c'est un bug non corrigé depuis 3 (?, j'ai perdu le compte) ans du forum ...
> je crois que les codes sont modifiés car j'ai des erreurs avec ??= et je ne sais pas à quoi ça corresponds mais je cherche
??= a été introduit par PHP 7.4.0 et permet d'initialiser le sous-tableau s'il n'existe pas. Tu n'en as pas forcément besoin si tu le vérifies avant. Sinon tu peux faire la même chose avec isset/array_key_exists.
je ne sais pas utiliser des tableaux indexés comme je te l'ai dis je débute.
j'ai vu fonctionné des blogues avec le système json avec des structures incroyables, moi je galère avec ça, des films que je mets dans une catégorie rien de plus, alors quand je fais le json à la main j'ai l'affichage qui fonctionne très bien mais j'aurais voulu avoir un formulaire pour ajouter modifier et supprimer, mais bon je continue à classer ma vidéothèque en manipulant directement le json pour le moment ben ça resteras comme ça jusqu'as ce que je trouve ou que je sache le faire !!
Pour ce qui est de sqlite ou mysql effectivement je sais le faire, mais je voudrais aussi connaitre le json .
c'est pas grave, je trouverais bien un jour !!
Merci quand même du temps que tu as consacré à mon égard ( je mets le sujet à résolu ).
cordialement
Bonne fin de journée et bon week-end
Mickael
JSON + php - Données effacées
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
julp.fr ~ PHP < 8.0.0 : activer les erreurs PDO/SQL ~ PHP < 8.1.0 : activer les erreurs mysqli
julp.fr ~ PHP < 8.0.0 : activer les erreurs PDO/SQL ~ PHP < 8.1.0 : activer les erreurs mysqli
julp.fr ~ PHP < 8.0.0 : activer les erreurs PDO/SQL ~ PHP < 8.1.0 : activer les erreurs mysqli
julp.fr ~ PHP < 8.0.0 : activer les erreurs PDO/SQL ~ PHP < 8.1.0 : activer les erreurs mysqli
julp.fr ~ PHP < 8.0.0 : activer les erreurs PDO/SQL ~ PHP < 8.1.0 : activer les erreurs mysqli
julp.fr ~ PHP < 8.0.0 : activer les erreurs PDO/SQL ~ PHP < 8.1.0 : activer les erreurs mysqli