alissong 1 Denunciar post Postado Setembro 22, 2008 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 4 Denunciar post Postado Setembro 23, 2008 Leia este topico completo sobre datagrid. http://forum.imasters.com.br/index.php...mp;#entry849061 Compartilhar este post Link para o post Compartilhar em outros sites
alissong 1 Denunciar post Postado Setembro 23, 2008 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