Pass PHP array via Jquery

Asked

Viewed 793 times

-1

Good evening, I’m not getting past the values of a array to another page via jQuery (do not know if this is possible) to update the data, I have the following code:

<script src="js/Jquery.js">
<script language="text/javascript">
    $(document).ready(function(){
        $('#enviar').on('click', function(event){
            event.preventDefault();
            $('#myForm').on('submit', function(){
                var dados = {
                    //Aqui é onde recebe os dados do formulário
                    //Eu tentei assim, mas não envia os dados como array para o arquivo update.php
                    dados = $(this).serializeArray();
                }
                
                //Não tenho certeza de que essa parte funciona, não testei, mas por enquanto não é tão importante! 
                $.ajax({
                    url : 'update.php',
                    type: 'POST',
                    data: dados,
                    success(data){
                        $('#resultado').html('Dados atualizados com sucesso!');
                    }
                });
            });
        });
    })
</script>
<form method="POST" id=myForm>
    <?php
        //$vetor->listaNomes() é uma função que lista os nomes cadastrados no banco de dados
        foreach($vetor->listaNomes() AS $key => $value) {
            echo '<input type="text" name="nome[]" value="$value->nome">';
        }
    ?>  
    <button type="submit" id="enviar">ENVIAR</button>
</form>
<div id="resultado"></div>

<?php
    foreach($_POST['nome'] as $key => $value) {
        //Aqui eu faço os updates dos campos
    }
?>

1 answer

2

I rearranged your code $.ajax(), see if it works:

$(function () {
    $('#myForm').on('submit', function (event) {
        event.preventDefault();

        $.ajax({
            url : 'update.php',
            cache: false,
            type: 'POST',
            data: $(this).serialize()
        })
        .done(function(data){
            console.log(data);
        })
        .fail(function(){
            console.log('Falha ao tentar retornr dados!');
        });
    });
});

Browser other questions tagged

You are not signed in. Login or sign up in order to post.