Todo va bien hasta el momento. No es nada complejo. El problema lo tengo por haberle ingresado al formulario lo de la imagen. ya que al pasar los parametros del form por medio de la funcion ajax. Como que no se envia la imagen como tal. (O realmente no se que es) y no puedo usar la variable "$_FILES" para trabajar la imagen en el script que guarda en la bd.
Alguien que pueda decirme como puedo pasar una imagen para trabajarla con $_FILES?
Aqui pongo los codigos para explicarme mejor.
Cita:
cargarProyecto.php
Código PHP:
Ver original
echo "<div id=\"contenido\"> <h3 class=\"titulo\">Cargar Proyectos</h3>"; $conTipoProy="select * from tipoProyecto;"; $traerTipoProy=ejecutarQuery($conTipoProy); $selectTipo="<select name=\"tp\">"; $selectTipo.="<option value=$tipoProyecto[2]>$tipoProyecto[1]</option>"; } $selectTipo.="</select>"; echo "<h4>el formato no es valido</h4>"; } echo" <form name=\"formProy\" method=\"post\" enctype=\"multipart/form-data\"> <table> <tr> <th>Tipo de Proyecto</th> <td>$selectTipo</td> </tr> <tr> <th>Nombre del Proyecto</th> <td><input type=\"text\" name=\"nombre\" size=\"40\"></td> </tr> <tr> <th>Imagen Principal</th> <td><input type=\"file\" name=\"imag\"></td> </tr> </table> <input type=\"button\" name=\"cargar\" value=\"Cargar\" onclick=\"regProy();\"> </form>";
Cita:
funciones Ajax
Código Javascript:
Ver original
function regProy(){ //alert ("hola mundo"); //Inicializo objeto ajax = objetoAjax(); //Preparacion de la petición. ajax.open("POST", "registroProyecto.php",true); //Indicar procendia de la información ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); //capturar datos var datosForm = formProyecto(); //enviar datos en el cuerpo de la petición alert(datosForm); ajax.send(datosForm); //manejador de datos al ejecutarse peticion ajax.onreadystatechange=procesarData; } function formProyecto(){ var campos=document.formProy.elements; // alert(campos); var datos=new Array(); for(var i=0;i<campos.length;i++){ //(alert(i); parametros=encodeURIComponent(campos[i].name)+"="; parametros+=encodeURIComponent(campos[i].value); alert(parametros); datos.push(parametros); }//fin for parametros=datos.join("&"); //DEVOLVER la cadena return parametros; }//fin funcion proyecto function procesarData(){ if(ajax.readyState == listoAjaxCompleto){ if(ajax.status==200){ nodoTexto=ajax.responseText; alert(nodoTexto) padre=document.getElementById('informacion'); padre.innerHTML=nodoTexto; }//fin if status }//fin if }
Al intentar capturar en registroProyecto.php el archivo de imagen.
asi
$imgPrin=$_FILES['imag'];
me da el siguiente error:
Cita:
pero capturandolo con $_POST me muestra el nombre de la imagen. :S pero no puedo acceder a las caracteristicas. Alguien que pueda darme una idea? GRACIASSSSSS!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1 Notice: Undefined index: imag in C:\wamp\www\termotex\registroProyecto.php on line 8