2

コメントの本文テキストをチェックするためにMYMODULE_form_comment_form_alterを使用しており、検証関数があります。

function MYMODULE_form_comment_form_alter(&$form, &$form_state, &$form_id){
    $form['#validate'][] = 'MYMODULE_comment_form_validate';
}

function MYMODULE_comment_form_validate($form, &$form_state){
    $current_body = $form_state['values']['comment_body'][LANGUAGE_NONE][0]['value'];

    if (strpos($current_body, "www") == TRUE || strpos($current_body, "http") == TRUE) {
        form_set_error($form['comment_body'], "Error message");
    }
}

それは完全に機能していますが、フォームはまだ値を送信しています。コメント本文の値が無効な場合に送信されない関数を実行するにはどうすればよいですか?ありがとう!

4

1 に答える 1

2

form_error()の代わりに使用してみてくださいform_set_error()

うまくいったかどうか教えてください。

これがうまくいくことを願っています...ムハンマド。

于 2012-11-06T12:45:46.267 に答える