我是初学者,希望从自定义模板页面将值插入数据库,但不会存储值。
这是我编辑的代码,并添加了完整的模板代码,我找不到为什么它不起作用,任何解决方案
<?php /* Template Name: Contact */ ?>
<?php
function contact_form() {
$name = $_POST['name'];
$email = $_POST['email'];
$subject = $_POST['subject'];
$comment = $_POST['comment'];
global $wpdb;
$table_name = $wpdb->prefix . "wp_contact";
$wpdb->insert($table_name, array(
'name' => $name,
'email' => $email,
'subject' => $subject,
'comment' => $comment
),array(
'%s',
'%s',
'%s',
'%s')
);
}
if( isset($_POST['submit']) ) contact_form();
?>
<?php get_header(); ?>
<div class="container" id="contact">
<div class="row">
<h2>Contact us</h2>
<p>Lets get in touch and talk about your and our next project.</p><br>
<form action="" method="post">
<input type="text" placeholder="Name" required name="name">
<input type="text" placeholder="Email" required name="email">
<input type="text" placeholder="Subject" required name="subject">
<input type="text" placeholder="Comment" required name="comment">
<button name="submit" type="submit">
<i class="fa fa-paper-plane"></i> SEND MESSAGE
</button>
</form>
</div>
</div>
<?php get_footer(); ?>
答案 0 :(得分:0)
更改表名,
$table_name = $wpdb->prefix . "wp_contact";
要,
$table_name = $wpdb->prefix . "contact";
答案 1 :(得分:0)
你不应该在这里使用核心PHP代码,因为WordPress已经很容易做出像联系表格这样的东西。
您应该使用https://wordpress.org/plugins/contact-form-7/插件。 如果没有在代码中抢劫这项小工作,那将非常容易。