wpdb没有在表中插入行

时间:2015-03-16 21:33:08

标签: php wpdb

我有一个表格,允许输入姓名,电子邮件和照片...当我点击提交时,我希望它在一个名为'contact'的帖子类型中插入一行,其中信息通过表单提交,图像作为特色图片,但它什么都不做

我的代码

<?php

 if (isset($_POST['submit'])) {    

     $yourname=$_POST['yourname'];
     $email=$_POST['email'];
     $myimage=$_POST['myimage'];    

    include_once('../../../wp-config.php');
    global $wpdb;
    $table = 'wp_posts';
    $data  = array(
    post_title=>$yourname,  
    post_status=>'Published', 
    post_type=>'contacts',  
    email=>$email,
    featured_image=>$myimage
    );
    $wpdb->insert( $table, $data);

}   

 ?>
<form action="" method="POST">
         Your Name: <input type="text" name="yourname" value=""> <br>
         Your Email:  <input type="text" name="email" value=""> <br>
         Image: <input type="file" name="myimage" id=""><br>    
        <input type="submit" name="submit" value="submit" />           
</form>

有什么方法可以检查行是否已上传&amp;如果插入完成则回显消息,然后在几秒钟后重定向到新的URL。

2 个答案:

答案 0 :(得分:0)

检查$data上传递的列是否存在于数据库中或表单中是否存在method="post" enctype="multipart/form-data",请尝试插入此内容。

答案 1 :(得分:0)

您无法从$_POST变量获取上传文件的值。为此,您需要使用$_FILES变量。

要使该代码首先运行,您必须添加以下内容:

  1. 在表单标记中,您需要添加method="post" enctype="multipart/form-data"
  2. 在获取图像值的PHP脚本中,使用此代码获取图像的值。
  3. featured_image => $_FILES['myimage']['name']