Comunidad de diseño web y desarrollo en internet online

enviar valor select a php por ajax

Citar            
MensajeEscrito el 03 Nov 2020 04:04 pm
Buenas

Estoy atascado con este codigo, que envia un formulario a php para ser insertado en la SQL.
Funciona bien, envia las variables y son insertadas en la base de datos, excepto el select categorias2

eh puesto un alert con el valor del select y si que me lo hace, asi que el valor lo esta cogiendo bien, pero no me lo recoge el php....

alguna idea?
Gracias

Código Javascript :

$("#fupForm").on('submit', function(e){
        e.preventDefault();
        $.ajax({
            type: 'POST',
            url: 'submit.php',
            data: new FormData(this),
            contentType: false,
            cache: false,
            processData:false,
            beforeSend: function(){
                $('.submitBtn').attr("disabled","disabled");
                $('#fupForm').css("opacity",".5");
            },
            success: function(msg){
                $('.statusMsg').html('');
                if(msg == 'ok'){
                    $('#fupForm')[0].reset();
                    $('.statusMsg').html('<span style="font-size:18px;color:#34A853">Formulario enviado.</span>');
                }else{
                    $('.statusMsg').html('<span style="font-size:18px;color:#EA4335">Hubo un problema.</span>');
                }
                $('#fupForm').css("opacity","");
                $(".submitBtn").removeAttr("disabled");
            }
        });
    });


PHP

Código PHP :

$name = $_POST['name'];
    $email = $_POST['email'];
    $lista = $_POST['categorias2'];
    
    //include database configuration file
    include_once 'dbConfig.php';
    
    //insert form data in the database
    $insert = $db->query("INSERT form_data (name,email,file_name,select2) VALUES ('".$name."','".$email."','".$uploadedFile."','".$lista."')");
    
    echo $insert?'ok':'err';

Por rbg

11 de clabLevel



 

chrome
Citar            
MensajeEscrito el 04 Nov 2020 02:01 pm
Es muy difícil deducir que estas mandando, ya que la línea que lo define es esta:

data: new FormData(this),

Usar this de esta forma, cuando habitualmente el data es un string urlencoded (y el PHP espera name, email y categorías2)me parece raro. Que te muestra si haces un console.log de this?

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

chrome
Citar            
MensajeEscrito el 04 Nov 2020 03:17 pm
buenas

Nada no me sale nada en la consola,

Por rbg

11 de clabLevel



 

chrome
Citar            
MensajeEscrito el 04 Nov 2020 04:18 pm
Este es el HTML, el form 2 campos de texto un file y bueno son 2 select, aunque para probar solo puse para enviar 1

Código HTML :

<form enctype="multipart/form-data" id="fupForm" >
    <div class="form-group">
        <label for="name">NAME</label>
        <input type="text" class="form-control" id="name" name="name" placeholder=
"Enter name" required />
    </div>
    <div class="form-group">
      <label for="email">EMAIL</label>
        <input type="email" class="form-control" id="email" name="email" placeholder=
"Enter email" required />
    </div>
    <div class="form-group">
        <label>Categorias</label>
        <select id="categorias">
            <option value="showAll" selected="selected">Categorias</option>
            <?php
            require_once 'config.php';
            
            $stmt = $dbcon->prepare('SELECT * FROM categorias');
            $stmt->execute();
            
            while($row=$stmt->fetch(PDO::FETCH_ASSOC))
            {
                extract($row);
                ?>
                <option value="<?php echo $id_cat; ?>"><?php echo $name_cat; ?></option>
                <?php
            }
            ?>
            </select>
      </div>    
      <div id="select2lista"></div>

    <div class="form-group">
        <label for="file">File</label>
        <input type="file" class="form-control" id="file" name="file" required />
    </div>

    <input type="submit" name="submit" class="btn btn-danger submitBtn" value="SAVE"/>
</form>


hice un append despues, y con un alert, descarte que si que me recogia el valor de lo que estaba seleccionado en el select, pero no he conseguido enviarlo al php para insertarlo en la SQL

Por rbg

11 de clabLevel



 

chrome

   Página 1 de 1

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.