dedecms Que dois-je faire s'il y a une erreur lors de la lecture d'informations supplémentaires dans certains articles ?
Aujourd'hui, j'ai modifié le préfixe de table de la base de données du site Web dede en raison de certains besoins, et j'ai également modifié le préfixe de table dans le fichier d'informations de configuration de la base de données. Puis lors de l'édition du document publié, "Lire les informations supplémentaires". Le message "Erreur!" est apparu, la même erreur s'est produite lors de l'ajout du document et le message "Une erreur s'est produite lors de l'enregistrement des données dans la table supplémentaire de la base de données `dede_addonarticle`, veuillez soumettre les informations pertinentes au responsable de DedeCms" est apparu. , le fichier html original a été régénéré. La documentation est également manquante.
Étude recommandée : Dreamweaver cms
J'ai donc utilisé l'éditeur de code pour rechercher le fichier où se trouvait "Erreur de lecture des informations supplémentaires", et j'ai trouvé ce morceau de !" information Il se trouve dans admin/article_edit.php, et la condition pour son apparition est que le tableau $addRow n'existe pas, c'est-à-dire que l'instruction SQL ci-dessus "SELECT * FROM `$addtable` WHERE aid='$aid'" renvoie un résultat de 0, le même que ce sql Il ressort de l'instruction que lorsque le nom de la table $addtable est erroné ou que l'aide au document n'existe pas, des problèmes surviendront et $addtable = $cInfos['addtable'] , $cInfos est passé via "SELECT * FROM `dede_channeltype` WHERE id= '".$arcRow['channel']."'", nous pouvons voir que le nom de la table $addtable est stocké dans le champ addtable de la table dede_channeltype (où dede_ est le préfixe de la table), au lieu d'utiliser quelque chose comme Le préfixe de table dede_channeltype a été obtenu en ajoutant le nom de la table. En conséquence, je suis allé à la table dede_channeltype dans la base de données et j'ai découvert qu'elle contenait les informations du modèle de contenu, mais le préfixe du nom de la table qui y était stocké était toujours l'original, j'ai donc changé le nom de la table à l'intérieur. Corrigez-le, allez dans le backend et vérifiez à nouveau, l'erreur aura disparu.
Résumé : Cette erreur se produit car le nom de la table de la base de données ne correspond pas au nom de la table stocké dans dede_channeltype. Les personnes qui peuvent utiliser la base de données peuvent la modifier dans la base de données. Les personnes qui ne peuvent pas utiliser la base de données peuvent la modifier dans la base de données. modèle de canal principal --Gestion du modèle de contenu--Modifiez simplement la « table jointe » du modèle correctement.
Pièce jointe : lorsque j'ai vérifié la table dede_channeltype, j'ai découvert que le nom de la table est également stocké dans le champ maintable. Les personnes qui peuvent modifier la base de données devraient également modifier le préfixe de la table à l'intérieur, bien qu'il soit dit que cela peut. être résolu en modifiant l'erreur du champ addtable.
Voici la méthode utilisée sur le forum dedecms :
J'ai vérifié les anciens articles sur le site aujourd'hui et j'ai constaté que beaucoup d'entre eux étaient des "Erreur de lecture des informations supplémentaires !". , il n'y avait qu'un paragraphe de description, tout le contenu du texte est manquant.
Allez sur phpmyadmin et ouvrez la table dede_addonarticle pour rechercher l'ID de l'article en question, le résultat n'est pas trouvé, j'essaye donc d'insérer du contenu et de saisir l'ID de l'article en question dans le champ d'aide. .
Effectivement, l'arrière-plan peut être modifié, mais le contenu du texte est introuvable. Le seul moyen est de réécrire le contenu ou de jeter un œil à l'instantané Baidu ~~~
Ce problème me préoccupe depuis longtemps. Je ne l'ai pas encore trouvé. Baidu l'a mis à jour d'innombrables fois et je ne trouve pas le contenu dans l'instantané. C'est triste ~~ Je dois le chercher un par un. un. Je ne sais toujours pas comment ce problème se produit et comment l'éviter ~~ Des experts peuvent-ils me le dire ?Ma solution :
Si le stockage des sous-tables des dedecms est erroné, nous pouvons alors le saisir manuellement dans la base de données. Dans dedecms5.1, il vous suffit d'ajouter le contenu de l'ID spécifié respectivement à dede_archives et dede_addonarticle, puis de le modifier avec le contenu souhaité, ce qui est une solution parfaite.Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!