Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

alissong

DataGrid Editável

Recommended Posts

Pessoal,

 

Estou construindo um datagrid editável, mas está com esse erro:

linha = 34

caractere = 1

erro = objeto esperado

codigo = 0

url = http:/localhost/site/tabela.php

Estrutura da Tabela:

Campo Tipo Nulo Padrão

n_item int(11) Sim NULL

n_empenho char(14) Sim NULL

cod_produto int(11) Sim NULL

elemento_despesa varchar(8) Sim NULL

item varchar(2) Sim NULL

valor_unitario decimal(10,2) Sim NULL

quantidade decimal(10,2) Sim NULL

valor_total decimal(10,2) Sim NULL

cod_departamento int(11) Sim NULL

Veja o código completo:

BibliotecaAjax.js

var ajax;

var dadosUsuario;

 

// ------- cria o objeto e faz a requisição -------

function requisicaoHTTP(tipo,url,assinc){

if(window.XMLHttpRequest){ // Mozilla, Safari,...

ajax = new XMLHttpRequest();

}

else if (window.ActiveXObject){ // IE

ajax = new ActiveXObject("Msxml2.XMLHTTP");

if (!ajax) {

ajax = new ActiveXObject("Microsoft.XMLHTTP");

}

}

 

if(ajax) // iniciou com sucesso

iniciaRequisicao(tipo,url,assinc);

else

alert("Seu navegador não possui suporte a essa aplicação!");

}

 

// ------- Inicializa o objeto criado e envia os dados (se existirem) -------

function iniciaRequisicao(tipo,url,bool){

ajax.onreadystatechange=trataResposta;

ajax.open(tipo,url,bool);

ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");

//ajax.overrideMimeType("text/XML"); /* usado somente no Mozilla */

ajax.send(dadosUsuario);

}

 

 

// ------- Inicia requisição com envio de dados -------

function enviaDados(url){

criaQueryString();

requisicaoHTTP("POST",url,true);

}

 

 

// ------- Cria a string a ser enviada, formato campo1=valor1&campo2=valor2... -------

function criaQueryString(){

dadosUsuario="";

// var frm = document.forms[0];

var frm = document.getElementById("formAjax");

var numElementos = frm.elements.length;

for(var i = 0; i < numElementos; i++) {

if(i < numElementos-1) {

dadosUsuario += frm.elements.name+"="+encodeURIComponent(frm.elements.value)+"&";

} else {

dadosUsuario += frm.elements.name+"="+encodeURIComponent(frm.elements.value);

}

}

}

 

// ------- Trata a resposta do servidor -------

function trataResposta(){

if(ajax.readyState == 4){

if(ajax.status == 200){

trataDados(); // criar essa função no seu programa

} else {

alert("Problema na comunicação com o objeto XMLHttpRequest.");

}

}

}

Tabela.php

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<title>Web Interativa com Ajax e PHP</title>

<link rel="stylesheet" type="text/css" href="estilo/estilos.css">

<script language="javascript" src="javascrit/bibliotecaAjax.js"></script>

<script language="javascript" src="javascrit/tabelaDados.js"></script>

 

</head>

 

<body>

<div align="center">

<div id="avisos"></div>

<form id="formulario">

<table id="minhaTabela">

<tr class="cabecalho">

<td colspan="11"><div align="center"><strong>CADASTRO DE EMPENHO</strong></div></td>

</tr>

<tr class="cabecalho">

<td bgcolor="#E1E1E1"><strong>Código</strong></td>

<td><strong>Nº EMPENHO</strong></td>

<td><strong>Nº PRODUTO</strong></td>

<td><strong>DESPESA</strong></td>

<td><strong>ITEM</strong></td>

<td><strong>VR. UNIT.(R$)</strong></td>

<td><strong>QUANT.</strong></td>

<td><strong>VR. TOTAL(R$)</strong></td>

<td><strong>Nº SETOR</strong></td>

<td> </td>

<td> </td>

</tr>

<?php

include("conexao\bdinc.php");

$res = mysql_query("SELECT * FROM mov_compra ORDER BY n_empenho");

$total = mysql_num_rows($res);

for($i=0; $i<$total; $i++)

{

$dados = mysql_fetch_row($res);

$n_item = $dados[0];

$n_empenho = $dados[1];

$cod_produto = $dados[2];

$despesa = $dados[3];

$item = $dados[4];

$vr_unitario = $dados[5];

$vr_unitario = number_format($vr_unitario,2,",",""); // formata o preço

$quantidade = $dados[6];

$vr_total = $dados[7];

$vr_total = number_format($vr_total,2,",",""); // formata o preço

$cod_departamento = $dados[8];

$idLinha = "linha$i";

echo "<tr id=\"$idLinha\">";

echo " <td>$n_item</td>";

echo " <td>$n_empenho</td>";

echo " <td>$cod_produto</td>";

echo " <td>$despesa</td>";

echo " <td>$item</td>";

echo " <td>$vr_unitario</td>";

echo " <td>$quantidade</td>";

echo " <td>$vr_total</td>";

echo " <td>$cod_departamento</td>";

echo " <td><a href=\"#\" onclick=\"EditarLinha('$idLinha');\"><img src=\"imagens/editar.gif\" border=\"0\"></a></td>";

echo " <td><a href=\"#\" onclick=\"ExcluirLinha('$idLinha');\"><img src=\"imagens/remover.gif\" border=\"0\"></a></td>";

echo "</tr>";

}

?>

<tr>

<td colspan="11"><div align="right"><a href="java script:NovoRegistro();">[Novo produto]</a></div></td>

</tr>

</table>

</form>

</div>

</body>

</html>

tabeladados.php

<?php

$gmtDate = gmdate("D, d M Y H:i:s");

header("Expires: {$gmtDate} GMT");

header("Last-Modified: {$gmtDate} GMT");

header("Cache-Control: no-cache, must-revalidate");

header("Pragma: no-cache");

header("Content-Type: text/html; charset=ISO-8859-1");

 

include "conexao\bdinc.php";

import_request_variables("g");

 

// atualização de empenho

if($acao=="atualizar") {

if(!empty($despesa) && !empty($item) && !empty($cod_departamento)) {

if(is_numeric($cod_departamento)) {

$res = mysql_query("UPDATE mov_compra SET n_empenho='$n_empenho',cod_produto='$cod_produto',elemento_despesa='$despesa',item=$item,cod_departamento='$cod_departamento' WHERE n_item=$cod");

echo "atualizou";

}

else echo "Código de Departamento !";

}

else echo "Você deve preencher todos os campos!";

}

// exclusão de empenho

elseif($acao=="excluir") {

$res = mysql_query("DELETE FROM mov_compra WHERE n_item=$cod");

echo "excluiu";

}

// cadastro de empenho

elseif($acao=="cadastrar") {

if(!empty($despesa) && !empty($item) && !empty($cod_departamento)) {

if(is_numeric($cod_departamento)) {

$res = mysql_query("INSERT INTO mov_compra(n_empenho,cod_produto,elemento_despesa,item,valor_unitario,quantidade

,valor_total,cod_departamento) VALUES ('$n_emepnho','$cod_produto','$despesa','$item','$vr_unitario','$quantidade','$vr_total','$cod_departamento')");

$novoCodigo = mysql_insert_id($conn);

// retorna a palavra "cadastrou" seguida do código gerado para o produto

echo "cadastrou-$novoCodigo";

}

else echo "Código departamento inválido!";

}

else echo "Você deve preencher todos os campos!";

}

?>

Alguém pode me dizer que besteira estou fazendo.

 

Um abraço.

 

Alissong

Compartilhar este post


Link para o post
Compartilhar em outros sites

PauloRJ,

 

Dei um olhada nesse topico, mas para falar a verdade não entendi nada.

Nesse código que postei qual besteira estou fazendo.

 

 

Um abraço.

 

 

Alissong

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.