2

何らかの理由で、Drupal インストールで匿名ユーザーとしてコメントを投稿できなくなりました。しばらく試していないので、いつこの機能が壊れたのかよくわかりません。

サービスをインストールしており、.NET を使用して匿名のコメントを投稿できますcomment.saveInput Formatsそれが何かを壊す可能性があるかどうかを変更しました。

post commentsaccess comments匿名ユーザーの両方を有効にしました。コメントはデータベースに表示されません。comment_save実際、 Anonymous としてコメントしようとすると、ネイティブの Drupal 関数は呼び出されません (関数print_r($edit);die();の先頭に を追加することでこれを確認します。また、UID 0 のユーザーがいないと Anonymous のコメントが壊れるということを読みました、このユーザーが存在します (明らかに、サービスを介したコメントが機能するため)comment_savecomment.module

私はAntiSpamこのモジュールを試し、spamfilter に引っかかる (実際に引っかかった) コメントを Anonymous として投稿しましたが、このモジュールは現在無効になっています。

ここで本当にアイデアが不足しています。他に何をすべきかについて何か提案はありますか? comment_save()それまでの間、コードをバックトラックして、が呼び出されない理由を突き止めようとします。

編集:匿名ユーザーは、何らかの形で問題がある場合、投稿するために電子メールなどを送信する必要もありません.

4

2 に答える 2

1

あなたの言うとおり、問題は、コメント フォームにコードをフックし、送信に失敗するようにコードを変更したことにあると思われます。これは、サーバー上でフォーム ID を再生成せずにフォームにフィールドを追加する jQuery、フォームを送信するためにコールバックを変更する追加またはカスタマイズされたフィールドなど、さまざまな原因によって引き起こされる可能性があります。

確かなことはわかりませんが、私があなただったら、インストールの状態を確認するために次のようにします。

  • 試してもう使用しないモジュールをアンインストールした (無効にしただけでなく) ことを確認してください。モジュールは決してコアテーブルに触れるべきではありませんが、誰が知っているでしょうか...コストはかからず、実際にDBの一部を解放します.

  • すべての contrib モジュールを無効にしてみて、そのようにコメントできるかどうかを確認してください。このような場合は、contrib モジュールを一度に 1 つずつ有効にして、どれが原因かを突き止めてください。http://drupal.orgのそのモジュールの問題キューで、パッチ/回避策が既に見つかる可能性があります。修正が見つからない場合は、コードを調査 (xdebug または手動追跡) し、 および のすべての実装に特別な注意を払いhook_form_alter()ますhook_form_FORM_ID_alter()

  • すべての contrib モジュールを無効にしても解決しない場合 (これには非常に驚いています)、コア ファイルを開いているときに猫がキーボードの上を歩いた可能性があると考えられる場合は、コアを新規インストールで更新してみてください。または、あなたはゴードン・ブラウンの家族と一緒に住んでいます

  • それができない場合、私の頭に浮かぶ唯一の代替手段は、DB の障害、コメントを妨害するブラウザのグリースモンキー スクリプト、および同様のありそうもない可能性など、はるかに難解なものです。

チッ!

于 2009-12-10T18:58:58.647 に答える
1

アクセス許可テーブル ( http://drupal.org/node/64114 )をリセットすることでこれを一度解決しましたが、念のため、適切なバックアップを行い、アクセス許可ページをタブで開いたままにします。

于 2009-12-10T20:07:15.267 に答える