Ir para conteúdo
Fórum Script Brasil
  • 0

<b>Fatal error</b>: Uncaught PDOException: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined in C:\xampp\htdocs\stock\includes\inserirdados\entradas.php:28 Stack trace: #0 C:\xampp\htdocs\stock\includes\inserirdados\entradas.php(28): P


aniceto fernando

Pergunta

<?php

require_once("../../conexao/config.php");
    $referencia = $_POST['referencia'];
    $categoria = $_POST['categoria'];
    $nome = $_POST['nome'];
    $quantidade = $_POST['quantidade'];
    $precounit = $_POST['precounit'];
    $precopublico = $_POST['precopublico'];
    $vd = $_POST['vd'];
    $descricao = $_POST['descricao'];
    // $data = date('Y-m-d h:i:s');

    $res2 = $pdo->prepare("INSERT INTO entrada (referencia, categoria,
    nome, quantidade, precounit, precopublico, vd, descricao)
    VALUES(:referencia, :categoria, :nome, :quantidade, :precounit,
    :precopublico, :vd, :descricao ");

    $res2->bindValue(':referencia', $referencia);
    $res2->bindValue(':categoria', $categoria);
    $res2->bindValue(':nome', $nome);
    $res2->bindValue(':quantidade', $quantidade);
    $res2->bindValue(':precounit', $precounit);
    $res2->bindValue(':precopublico', $precopublico);
    $res2->bindValue(':vd', $vd);
    $res2->bindValue(':descricao', $descricao);

    var_dump($referencia);
    var_dump($categoria);
    var_dump($nome);
    var_dump($quantidade);
    var_dump($precounit);
    var_dump($precopublico);
    var_dump($vd);
    var_dump($descricao);

    if ($res2->execute()) {
        echo json_encode('Comentário Salvo com Sucesso');
    } else {
        echo json_encode('Falha ao salvar comentário');
    }


// codigo ajax

$('#inserir_entradas').submit(function (e) {
  e.preventDefault()
  var referencia = $('#referencia').val();
  var categoria = $('#categoria').val();
  var nome = $('#nome').val();
  var quantidade = $('#quantidade').val();
  var precounit = $('#precounit').val();
  var precopublico = $('#precopublico').val();
  var vd = $('#vd').val();
  var descricao = $('#descricao').val();
  // var foto = $('#foto').val();

  if (referencia == '' && categoria == '' && nome == '' && quantidade == ''
    && precounit == '' && precopublico == '' && vd == '' && descricao == '') {


    alert('Preencha Todos os campos!');
  }
  $.ajax({
    url: 'http://localhost/stock/includes/inserirdados/entradas.php',
    type: 'POST',
    // method: 'POST',
    data: {
      referencia: referencia,
      categoria: categoria,
      nome: nome,
      quantidade: quantidade,
      precounit: precounit,
      precopublico: precopublico,
      vd: vd,
      descricao: descricao

    },
    dataType: 'json'
  }).done(function (result) {
    $('#referencia').val('');
    $('#categoria').val('');
    $('#nome').val('');
    $('#quantidade').val('');
    $('#precounit').val('');
    $('#precopublico').val('');
    $('#vd').val('');
    $('#descricao').val('');
    console.log(result);
    // console.log(nome);
    // console.log(categoria);
    // console.log(quantidade);
    // console.log(precounit);
    // console.log(precopublico);
    // console.log(vd);
    // console.log(descricao);

  });



});

 

Editado por aniceto fernando
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Tem jeito de passar a listagem do config.php e entradas.php?

A primeira coisa que eu vi foi a ausência de separação do código PHP e do código JavaScript.

A segunda coisa que eu vi foi a tentativa de converter os comentários em json, não há porque fazer isso.

A terceira coisa que eu vi foi o código JavaScript, ele não faz parte do contexto desse código, ele procura os elementos #inserirdados, #referencia, que não estão disponíveis nesse código na forma de HTML.

Finalmente, fiz um teste com o resumo do seu código e não encontrei nenhum problema:

<?php
$pdo=new PDO("mysql:host=localhost;dbname=astudy","root","");
if(isset($_POST['referencia'])){
  $referencia = $_POST['referencia'];
  $res2=$pdo->prepare("insert into entrada (referencia) values (:referencia)");
  $res2->bindValue(':referencia', $referencia);
  var_dump($referencia);
  if ($res2->execute()) {echo 'Comentário salvo com Sucesso';} else {
        echo 'Falha ao salvar comentário'; }
}
?>

<form method=post>
Referencia <input id=referencia name=referencia><input type=submit>
</form>

Ou seja, além dos arquivos config.php e entradas.php, eu precisaria também da estrutura da tabela entrada do MySQL para saber como apareceu o erro de parâmetros que o PHP reclamou.

Editado por Frank K Hosaka
Link para o comentário
Compartilhar em outros sites

  • 0
14 horas atrás, Frank K Hosaka disse:

Tem jeito de passar a listagem do config.php e entradas.php?

A primeira coisa que eu vi foi a ausência de separação do código PHP e do código JavaScript.

A segunda coisa que eu vi foi a tentativa de converter os comentários em json, não há porque fazer isso.

A terceira coisa que eu vi foi o código JavaScript, ele não faz parte do contexto desse código, ele procura os elementos #inserirdados, #referencia, que não estão disponíveis nesse código na forma de HTML.

Finalmente, fiz um teste com o resumo do seu código e não encontrei nenhum problema:

<?php
$pdo=new PDO("mysql:host=localhost;dbname=astudy","root","");
if(isset($_POST['referencia'])){
  $referencia = $_POST['referencia'];
  $res2=$pdo->prepare("insert into entrada (referencia) values (:referencia)");
  $res2->bindValue(':referencia', $referencia);
  var_dump($referencia);
  if ($res2->execute()) {echo 'Comentário salvo com Sucesso';} else {
        echo 'Falha ao salvar comentário'; }
}
?>

<form method=post>
Referencia <input id=referencia name=referencia><input type=submit>
</form>

Ou seja, além dos arquivos config.php e entradas.php, eu precisaria também da estrutura da tabela entrada do MySQL para saber como apareceu o erro de parâmetros que o PHP reclamou.

14 horas atrás, Frank K Hosaka disse:

Tem jeito de passar a listagem do config.php e entradas.php?

A primeira coisa que eu vi foi a ausência de separação do código PHP e do código JavaScript.

A segunda coisa que eu vi foi a tentativa de converter os comentários em json, não há porque fazer isso.

A terceira coisa que eu vi foi o código JavaScript, ele não faz parte do contexto desse código, ele procura os elementos #inserirdados, #referencia, que não estão disponíveis nesse código na forma de HTML.

Finalmente, fiz um teste com o resumo do seu código e não encontrei nenhum problema:

<?php
$pdo=new PDO("mysql:host=localhost;dbname=astudy","root","");
if(isset($_POST['referencia'])){
  $referencia = $_POST['referencia'];
  $res2=$pdo->prepare("insert into entrada (referencia) values (:referencia)");
  $res2->bindValue(':referencia', $referencia);
  var_dump($referencia);
  if ($res2->execute()) {echo 'Comentário salvo com Sucesso';} else {
        echo 'Falha ao salvar comentário'; }
}
?>

<form method=post>
Referencia <input id=referencia name=referencia><input type=submit>
</form>

Ou seja, além dos arquivos config.php e entradas.php, eu precisaria também da estrutura da tabela entrada do MySQL para saber como apareceu o erro de parâmetros que o PHP reclamou.

 

já Consegui inserir, o problema estava no fechamento de Paranteses no insert

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...