2016-12-18 1 views
0

Я создал плагин для ввода данных WP панели инструментов. Я пытаюсь вставить изображения в свою базу данных &. Данные вставлены успешно, но изображение не вставляется. Я новый разработчик.Как вставить Wordpress в пользовательскую базу данных плагинов

+0

Вы не писать код для загрузки файла – vel

ответ

0

Пробуйте этот код.

$code = $_POST["code"]; 
    $name = $_POST["name"]; 
    $tmp_name = $_FILES["photo"]["tmp_name"]; 



    //insert 
    if (isset($_POST['insert'])) { 
    global $wpdb; 
    $table_name = $wpdb->prefix . "school"; 
    $path_array = wp_upload_dir(); // normal format start 
    $file_name = pathinfo($tmp_name ,PATHINFO_FILENAME).time().".".pathinfo($tmp_name ,PATHINFO_EXTENSION); 
    $imgtype  = strtolower(pathinfo($tmp_name,PATHINFO_EXTENSION));     
    $targetpath  = $path_array["path"]."/".$file_name; 

    move_uploaded_file($tmp_name, $targetpath); 

    $wpdb->insert(
     //'school', //table 
     $table_name, //table 
     array('code' => $code, 'name' => $name,'image_name'=>$file_name) //data 
     //array('%s', '%s') //data format   
    ); 
    $message.="Data inserted"; 
    } 
+0

Спасибо Vel, данные вставляются. Теперь я хочу знать Как загрузить изображение в папку с изображением моего костюма? –

+0

Вы загружаете в папку темы? – vel

+0

Его плагин, который я загрузил в папку wp-content -> plugins. Данные отправляются в базу данных успешно, но изображение не загружается в папку wp-content-> uploads. –

0
$code = $_POST["code"]; 
    $name = $_POST["name"]; 
    $tmp_name = $_FILES["photo"]["tmp_name"]; 



    if (!file_exists(dirname(__FILE__))) { 
     mkdir('documents', 0777, true); 
    } 

    $FolderUrl = dirname(__FILE__).'/documents/'; 

    if (!file_exists($FolderUrl)) { 
     mkdir($FolderUrl, 0777, true); 
    } 


    define('UPLOADS_THEME_PATH',$FolderUrl); 

    //insert 
    if (isset($_POST['insert'])) { 
     global $wpdb; 
     $table_name = $wpdb->prefix . "school"; 
     $path_array = wp_upload_dir(); // normal format start 
     $file_name = pathinfo($tmp_name ,PATHINFO_FILENAME).time().".".pathinfo($_FILES['photo']['name'] ,PATHINFO_EXTENSION); 
     $imgtype  = strtolower(pathinfo($tmp_name,PATHINFO_EXTENSION));     
     $targetpath = UPLOADS_THEME_PATH."/documents/".$file_name; 

     move_uploaded_file($tmp_name, $targetpath); 

     $wpdb->insert(
      //'school', //table 
      $table_name, //table 
      array('code' => $code, 'name' => $name,'image_name'=>$file_name) //data 
      //array('%s', '%s') //data format   
     ); 
     $message.="Data inserted"; 
    } 

Обновленный

+0

Ваша папка автоматически создана, но изображение не загружено, передача данных успешно. такая же проблема –

+0

изменить эту строку $ targetpath = UPLOADS_THEME_PATH. "/". $ file_name; to $ targetpath = UPLOADS_THEME_PATH. "/ documents /".$ file_name; – vel

+0

var_dump ($ code); show: string 'ABCD' (length = 4) var_dump ($ name); show: string 'HM School' (length = 9) var_dump ($ tmp_name); показать: null –

Смежные вопросы