wordpress文件字段无法获取空值

时间:2014-02-22 03:39:37

标签: php wordpress-plugin wordpress-theming wordpress

我想从管理面板添加名称和图片。我已经在mysql中创建了一个表

姓名> VARCHAR [255] img> [文本]

当我点击保存按钮名称字段工作正常:)但文件字段alwasy空我如何获取文件字段 价值并将此图片上传到“\ wp-content \ uploads \ 2014”

等文件夹

我想在我的cutom文件夹中上传文件并将其路径保存到我的mysql表中。但不在这里工作是我的代码。

<?php
$id = $_POST["id"];
$name = $_POST["name"];
$photo = $_POST["photo"];

//insert
if(isset($_POST['insert'])){
    global $wpdb;
    $wpdb->insert(
        'wp_savans', //table
        array(
        'name' => $name,
        'photo' => $photo
        ),
        array('%s', '%s') //data format         
    );
    $message.="Inserted";
}
?>

<div class="wrap">
<?php if (isset($message)): ?><div class="updated"><p><?php echo $message;?></p></div><?php endif;?>
<form method="post" name="form1" enctype="multipart/form-data" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
<table width="464" border="0">
  <tr>
    <td width="127" bgcolor="#66CCFF"><strong>Name</strong></td>
    <td width="327"><label for="name"></label>
    <input type="text" name="name" id="name" /></td>
  </tr>
  <tr>
    <td bgcolor="#66CCFF"><strong>Photopath</strong></td>
    <td><input name="photo" id="photo" type="file"></td>
  </tr>
</table>
<input type='submit' name="insert" value='Save' class='button'>
</form>
</div>

1 个答案:

答案 0 :(得分:1)

实际上你没有将图像的值作为$photo = $_POST["photo"];获取,因为它应该将文件类型视为$photo = $_FILES["photo"]["name"];。 在这里,我在wp-content/uploads/contactimage/中创建了一个成功上传图像的文件夹。 尝试这个我已经对你的代码做了一些修改可能会对你有所帮助。

$id = $_POST["id"];
$name = $_POST["name"];
$photo = $_FILES["photo"]["name"];
//insert
if(isset($_POST['insert'])){
    global $wpdb;
    $wpdb->insert(
        'wp_savans', //table
        array(
        'name' => $name,
        'photo' => $photo
        ),
        array('%s', '%s') //data format         
    );
    $message.="Inserted";

}
$destination= get_home_path().'wp-content/uploads/contactimage/';
move_uploaded_file($_FILES["photo"]["tmp_name"], $destination.$_FILES["photo"]["name"]);
      echo "Stored in: " .get_home_path().'wp-content/uploads/contactimage/'. $_FILES["photo"]["name"];
?>

<div class="wrap">
<?php if (isset($message)): ?><div class="updated"><p><?php echo $message;?></p></div><?php endif;?>
<form method="post" name="form1" enctype="multipart/form-data" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
<table width="464" border="0">
<tr width="327">
<td ></td>
  <tr></tr>
    <td width="127" ><strong>Name</strong></td>
    <td width="327"><label for="name"></label>
    <input type="text" name="name" id="name" /></td>
  </tr>
  <tr>
    <td ><strong>Photopath</strong></td>
    <td><input name="photo" id="photo" type="file"></td>
  </tr>
</table>
<input type='submit' name="insert" value='Save' class='button'>
</form>
</div>
<?php } ?>