Thanks for giving the table schema.
There are few problems in the code and table as well.
Issue 1
In the “vs_contact_form” function, there is a wrong parameter.
Change below line
$messsage = $_POST["messsage"];
To
$messsage = $_POST["message"];
Issue 2
In same function change below array. ( Array key should match the table column name )
array(
'name' => $name,
'email' => $email,
'mobileno' => $mobileno,
'messsage' => $messsage
)
To
array(
'name' => $name,
'email' => $email,
'mobileno' => $mobileno,
'message' => $messsage
)
Issue 3
It’s issue with table. Your table doesn’t have proper datatype length Please delete your table and create new table using following query
CREATE TABLE `wp_contactdetails` (
`id` int(11) NOT NULL,
`name` varchar(255) NOT NULL,
`email` varchar(255) NOT NULL,
`mobileno` varchar(255) NOT NULL,
`message` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
ALTER TABLE `wp_contactdetails` ADD PRIMARY KEY (`id`);
ALTER TABLE `wp_contactdetails` MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2; COMMIT;