Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/411.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 数据和文件未存储在数据库和目录中_Javascript_Php_Jquery_Ajax - Fatal编程技术网

Javascript 数据和文件未存储在数据库和目录中

Javascript 数据和文件未存储在数据库和目录中,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我不知道我错在哪里。我知道我是一个业余爱好者,我的代码不是很好。这里,我的JQuery正在发送数据,但我似乎无法获取存储的数据和文件。我在JQuery中使用了FormData()。这是我的密码: if (isset($_POST['audio_lesson'])) { $title = preg_replace("#[<>]#i", "", $_POST['title']); $description = preg_replace("#[<>]#i

我不知道我错在哪里。我知道我是一个业余爱好者,我的代码不是很好。这里,我的JQuery正在发送数据,但我似乎无法获取存储的数据和文件。我在JQuery中使用了FormData()。这是我的密码:

if (isset($_POST['audio_lesson'])) {
      $title = preg_replace("#[<>]#i", "", $_POST['title']);
      $description = preg_replace("#[<>]#i", "", $_POST['description']);
      $category = preg_replace("#[<>]#i", "", $_POST['category']);
      $tags = $_POST['tags'];
      //$font = preg_replace("#[^0-9]#i", "", $_POST['font']);
      echo $post->Post($_FILES["post_files"], $title, $description, $category, $tags);
    }
我在代码笔中添加了HTML表单和JQuery/AJAX代码,以避免违反stacked的发布策略和限制

请在此代码笔中找到HTML表单和AJAX:

我需要表单数据提交和存储在数据库以及文件上传到目录


有什么想法吗?TIA

您的代码是否报告任何错误?它没有报告任何错误。Jquery和AJAX将文件对象标识为[file object],将数据标识为字符串。我不知道如何测试上面的PHP代码,如果他们在所有单独的文件。
public function Post($post_files, $title, $description, $category, $tags){
     $session = $_SESSION['id'];
     $universal = new universal();
     $name = preg_replace("#[\'\"]#i", "", $post_files['name']);
     $size = $post_files['size'];
     $tmp_name = $post_files['tmp_name'];
     $error = $post_files['error'];
     $ext = strtolower(end(explode(".", $name)));
     $allowed = array("mp3");

     if (in_array($ext, $allowed)) {
       if ($error == 0) {
         $new_name = time().".".$ext;
         if (move_uploaded_file($tmp_name, "../../folder/".$session."/audio/"."rand_".$name)) {

           $query = $this->db->prepare("INSERT INTO post (user_id, type, time, about, description, category, tags) VALUES (:user, :type, now(), :about, :description, :category, :tags)");

           $query->execute(array(":user" => $session, ":type" => "audio", ":about" => $title,":description" => $description, ":category" => $category, ":tags" => $tags));

         }
       } else {
         return "Error!!";
       }
     }
   }