我需要一些帮助,因为我不确定发生了什么,我在其他机会上尝试了相同的代码并且它有效,但由于某些原因现在不是,我需要通过JQuery上传文件Ajax,这是html表单:
<form enctype="multipart/form-data" id="formulario">
<input type="text" id="atributo1" placeholder="Ingrese atributo 1...">
<input type="text" id="atributo2" placeholder="Ingrese atributo 2..."><br>
SELECT:
<select id="atributo3">
<option value="opcion1" selected>Opcion 1</option>
<option value="opcion2">Opcion 2</option>
<option value="opcion3">Opcion 3</option>
</select><br><br>
<input type="file" id="atributon">
<button type="button" onclick="Alta()">Crear</button>
<button type="button" onclick="Listar()">Volver</button>
</form>
在它下面是来自js的接收端:
function Alta(){
var form = new FormData($("#formulario")[0]);
form.append("queHacer","Alta");
console.log(form);
$.ajax({url: "nexo.php", type: "POST", data: form, contentType: false, processData: false})
.then(function(exito){
$("#contenidoinner").html(exito);
},function(error){
$("#contenidoinner").html(error);
});
}
PHP代码是一个简单的var_dump来验证:
switch($_POST['queHacer']){
case "Alta":
echo var_dump($_FILES).var_dump($_POST);
break;
}
但当我同时执行VAR_DUMPS时,$ _FILES为空:
&#34; array(0){} array(1){[&#34; queHacer&#34;] =&gt; string(4)&#34; Alta&#34; }&#34;
不确定我做错了什么,因为我有另一个程序使用相同的代码并且它正常工作。