problema al enviar una foto por php y guardar la ruta sql

Iniciado por longlibra, 10 Septiembre 2018, 04:10 AM

0 Miembros y 1 Visitante están viendo este tema.

longlibra

que tal a todos!. soy nuevo y espero no molestar,  pero tengo un problema con un formulario lo que quiero es guardar varios datos de un formulario al principio desarrolle la parte de guardar y traer los datos en campos textuales (input, select) funcionando bien.
pero el problema que tengo ahora es que al incluir la imagen y pasarla por php  me arroja error en la parte de usar $_files[ ][ ]; y esto es lo que me arroja al momento de  ejecutar:
undefined index: in foto    php/registrar on line 9
undefined index: in foto    php/registrar on line 11
justo en la parte de usar el elemento $_file[][]; 

les dejo mi codigo para ver si me pueden ayudar ya que llevo un buen rato buscando la solución y la verdad ya me bloquee.

index.html:


<form  action="" name="registro" id="registro"   enctype="multipart/form-data" method="POST">
        <fieldset>   
            <h1 class="h1">Registro de Ponentes</h1><br>
            <br>
            <label class="lregistro">Examinar Foto:                           </label>  <input   type="file"        name="foto"                  id="foto"><br><br>
            <label class="lregistro">Nombre Completo:                         </label>  <input   type="text"        name="nombre_com" id="nombre_com"                    placeholder="Ingresa un nombre   "><br><br>
            <label class="lregistro">Apellido paterno:                        </label>  <input   type="text"        name="apellido_p" id="apellido_p"                    placeholder="Ingresa un apellido"><br><br>
            <label class="lregistro">Apellido paterno:                        </label>  <input   type="text"        name="apellido_m" id="apellido_m"                    placeholder="Ingresa un apellido"><br><br>
            <label class="lregistro">Nombre del Proyecto:                     </label>  <input   type="text"        name="nombre_pr" id="nombre_pr"                     placeholder="ingrese maximo 200 caracteres"><br><br>
            <label class="lregistro">Objetivo General:                        </label>  <input   type="text"        name="ob_general" id="ob_general"                    placeholder="ingrese maximo 300 caracteres"><br><br>
            <label class="lregistro">Fecha de inicio:                         </label>  <input   type="date"        name="fecha_ini"             id="fecha_ini"                     placeholder="Seleciona una fecha"><br><br>
            <label class="lregistro">Fecha de final:                          </label>  <input   type="date"        name="fecha_fin"             id="fecha_fin"                     placeholder="Seleciona una fecha"><br><br>
            <label class="lregistro">Porcentaje de Avance:                    </label>  <select name="porcentaje" id="porcentaje" class="caja">
                                                                                            <option value=""selected>selcecciona un % de avance</option>
                                                                                            <option value="25%">25%</option>
                                                                                            <option value="50%">50%</option>
                                                                                            <option value="75%">75%</option>
                                                                                            <option value="100%">100%</option>
                                                                                        </select>
                                                                                        <br>
            <label class="lregistro">Resumen del proyecto de investigación:   </label> 
            <textarea    name="resumen"              id="resumen"     placeholder="introduce un resumen del proyecto maximo 1200 caracteres " COLS=6 ROWS=10></TEXTAREA><br><br>
            <input   type="button" id="envio" value="Enviar">
        </fieldset>
    </form>
</div>



val.js

$(document).ready(function()
{    // Esta parte del código se ejecutará automáticamente cuando la página esté lista.
    $("#envio").click( function()
     {               
         $(".error").remove();          // removemos los errores despues de pulsar el boton
       //  $(".error1").remove();         // quita el eroor del logueo
                                        // Con esto establecemos la acción por defecto de nuestro botón de enviar.
        if(validacion_registro())       // Primero validará el formulario.
        { 
            $.post("php/registrar.php",$("#registro").serialize(),function(res) // utilizamos la funcion para traer el contenido de un formulario
            {       
                  //alert("salio del php");
                    alert(res);
$("#valores").fadeOut("slow");   // Hacemos desaparecer el div "formulario" con un efecto fadeOut lento.
                if(res ==1)
                    {       
                       // alert('entro');
                        $("#exito").delay(500).fadeIn("slow");      // Si hemos tenido éxito, hacemos aparecer el div "exito" con un efecto fadeIn lento tras un delay de 0,5 segundos.                             
                    }
                else
                            {
                             //   alert('  no entro');
                             $("#fracaso").delay(500).fadeIn("slow");   // Si no, lo mismo, pero haremos aparecer el div "fracaso"
                            }
            });           
        }
    });   
});



registrar.php:


//error_reporting(E_ALL ^ E_NOTICE);
include ('conexion_mysqli.php');
        $conexion= mysqli_connect("localhost","root","","proyectos");  // establecemos la //en caso de usar una direccin de la conexion igualamos la funcion del archivo igualandola a una variable en php
$ruta="../fotos_p/";
$nameimagen     =$_FILES['foto']['name'];
//$nameimagen      = addslashes(file_get_contents($_FILES['foto']['name']));
$tmpimagen      =$_FILES['foto']['tmp_name'];
move_uploaded_file($tmpimagen,$ruta."/".$nameimagen);
$ruta           =$ruta."/".$nameimagen;

$nombre_co      =$_POST["nombre_com"];
$apellido_p     =$_POST["apellido_p"];
$apellido_m     =$_POST["apellido_m"];
$nombre_pr      =$_POST["nombre_pr"];
$objetivo       =$_POST["ob_general"];
$fecha_in       =$_POST["fecha_ini"];
$fecha_fi       =$_POST["fecha_fin"];
$porcen         =$_POST["porcentaje"];
$resumen        =$_POST["resumen"];

//creamos la consulta  para insertar los datos del fomrulario de
$insertar ="insert into informacion_a(foto,nombre_completo,apellido_paterno,apellido_materno, nombre_proyecto,objetivo,fecha_inicio,fecha_final,porcentaje,resumen)
  values('$ruta',$nombre_co','$apellido_p','$apellido_m','$nombre_pr','$objetivo','$fecha_in','$fecha_fi','$porcen','$resumen');";

// mysqli_query() es una palabra reservada que realizara la ejecucuin y la conexion
$resultado= mysqli_query($conexion,$insertar);  //ejecutamos la instruccion de la consulta

if (!$resultado) {
    echo "0";
} else {
    echo "1";
}



de antemano les agradecere mucho su ayuda!