myform_validate() and myform_submit() functions not responding I have built a form from following examples on tutorials but neither the accompanying _validate() nor _submit() functions are responding when I submit this form. This is my codes:

/**
*implementing foodmenu form
*/
function my_magic_foodmenu_form($form, &amp;$form_state){
    $form = array();
    $form['choice'] = array(
        '#type' =&gt; 'select',
        '#title' =&gt; t('Choose your meal'),
        '#options' =&gt; array(
            'ricestew' =&gt; t('Rice with Stew'),
            'ricejollof' =&gt; t('Jollof Rice'),
        ),
        '#required' =&gt; TRUE,

    );
    $form['buttons']['submit'] = array(
        '#type' =&gt; 'submit',
        '#value' =&gt; t('Submit'),

    );

    return $form;
}

/**
*Implement form validation: Foodmenu
*/
function my_magic_foodmenu_form_validate($form, &amp;$form_state){
    krumo($form_state);
}

/**
*Implementing form submition: foodmenu
*/
function my_magic_foodmenu_form_submit($form, &amp;$form_state){
   // krumo($form_state);
}


From the code above, I have implemented the 'choice' field to be '#required'. The _validate() function responds and prints the implemented krumo() when I submit this form without making a choice, so there is nothing wrong with the _validate() code then. Why does it not respond when I just submit the  form after making a choice??

EDIT:

I would really like to know why the default _validate() and _submit() do not work in my code, given that there is nothing apparently wrong with the code. I am not looking for alternatives. I just want to get the defaults above to work. Thanks
1 . You can add how many submit handler you want by using this

 $form['actions']['submit']['#submit'][] = 'mymodule_what_ever_function';


if you want to add a submit handler after default submit handler one callback the next callback to be called you can use this, This submit handler will be called after submit call back.

form['#submit'][1] = test_function;


To unset submit handler

submit handler

unset($form["actions"]['submit']);



$form['#validate'][] = 'test_validation_function'; 

function test_validation_function($form, $form_state) {}



this function will call before submitting the result. 

Add these handlers and once clear your Drupal cache 

Still you face issue look in to this url for example will help you out 

https://www.drupal.org/node/717740