0

Question asked million times and answered, but still not working for me for the simplest form. My code looks like this right now:

<?php
    if (!empty($_POST)) {
        global $wpdb;
        $table = username;
        $data = array(
            'name' => $_POST['yourname'],
            'chord'    => $_POST['chord']
        );
        $format = array(
            '%s',
            '%s'
        );
        $success=$wpdb->insert( $table, $data, $format );
        if($success){
            echo 'data has been save' ;
        }
    } else {
        ?>
        <form method="post">
        <input id="user_name" type="text" name="yourname" placeholder="Name">
        <input id="user_email" type="text" name="email" placeholder="Email">
        <button id="button" type="button" name="submit">Go</button>
        </form>
        <?php
    }
?>

I don't know what $_POST does and how does it submit data to database if there is no event handler on the form? I'm not getting any errors either, it just doesn't store anything.

  • If there is no action on the form then it will post to the current page. There are better ways to handle this in WP, but first, have you checked that the $table variable and the $data array contain the correct data that you are expecting to be added to the database? – czerspalace Nov 12 '18 at 19:18
  • No, that's all the code that you see,I dont do anything more. And I don't know how to check that. Might that be causing a problem? – Limpuls Nov 12 '18 at 19:20
  • You can try to echo or print_r the variables to make sure they are capturing the correct data. You can also look at the answer in the following questions: wordpress.stackexchange.com/questions/141613/… – czerspalace Nov 12 '18 at 22:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.