Javascript 数据和文件未存储在数据库和目录中
我不知道我错在哪里。我知道我是一个业余爱好者,我的代码不是很好。这里,我的JQuery正在发送数据,但我似乎无法获取存储的数据和文件。我在JQuery中使用了FormData()。这是我的密码: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
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!!";
}
}
}