Ir para conteúdo
Fórum Script Brasil

DemianCalixto

Membros
  • Total de itens

    4
  • Registro em

  • Última visita

Sobre DemianCalixto

DemianCalixto's Achievements

0

Reputação

  1. Bom, pessoal, eu criei um script para escrever alguns dados de um formulário para um arquivo XML, como segue: function escreveNovo() { $nomes = trim($_POST["nome"]); $resps = trim($_POST["resp"]); $endes = trim($_POST["ende"]); $teles = trim($_POST["tele"]); $ramos = trim($_POST["ramo"]); $emiss = trim($_POST["emis"]); $vencs = trim($_POST["venc"]); $spn = strlen($nomes); $spr = strlen($resps); $spe = strlen($endes); if (empty($nomes) || empty($resps) || empty($endes)) { echo("Preencha os campos obrigatórios! <a href=\"http://localhost/visa/inclui.php\">Voltar </a>"); exit; } else { header("Content-type: text/xml"); $indi = strpos($resps, " "); $espa = $indi - 1; $titu = substr($resps, 0, $espa); $pri = $tabela->createElement("estabelecimento"); $tabela->appendChild($pri); $sec = $tabela->createAttr("dono"); $pri->appendChild($sec); $ter = $tabela->createElement("nome"); $pri->appendChild($ter); $qua = $tabela->createElement("responsavel"); $pri->appendChild($qua); $qui = $tabela->createElement("endereco"); $pri->appendChild($qui); $sex = $tabela->createElement("telefone"); $pri->appendChild($sex); $set = $tabela -> createElement("ramo"); $pri->appendChild($set); $oit = $tabela -> createElement("emissao"); $pri->appendChild($oit); $non = $tabela -> createElement("vencimento"); $pri->appendChild($non); $utit = $tabela->createTextNode($titu); $sec->appendChild($utit); $enom = $tabela->createTextNode($nomes); $ter->appendChild($enom); $pser = $tabela->createTextNode($resps); $qua->appendChild($pser); $edne = $tabela->createTextNode($endes); $qui->appendChild($edne); $elet = $tabela->createTextNode($teles); $sex->appendChild($elet); $omar = $tabela->createTextNode($ramos); $set->appendChild($omar); $sime = $tabela->reateTextNode($emiss); $oit->appendChild($sime); $cnev = $tabela->createTextNode($vencs); $non->appendChild($cnev); } } quando eu executo o script, retorna o erro: Fatal error: Call to a member function createElement() on a non-object in [... etc etc etc] Alguém sabe me explicar o que significa isto??? Agradeço!
  2. Pessoal, resolvi o problema, declarando as variáveis de $_POST dentro da função escreveNovo(). Mas agora deu problema na geração do XML!!!! Assunto para outro tópico, que postarei logo. Abraços e valeu pela ajuda!!!!!!
  3. esqueci de mencionar isto: já fiz o teste com echo, e ele funciona tanto com aspas simples quanto duplas, retona os valores direitinho. Só dá problema mesmo na página salva.php, onde não funciona nem de um jeito nem de outro.
  4. Buenas, tchê, bom dia a todos! Sou novo nesse negócio de PHP, mas estou tentando fazer algo legal. Pretendo desenvlver uma aplicação para cadastro de estabelecimentos para a Vigilância Sanitária aqui no meu município. Ainda em fase inicial de experimentação, me deparei com um problema grande já no primeiro formulário, para inclusão de estabelecimento. O código: <html> <head> <title>VISA - Incluir Estabelecimento</title> </head> <body> <form action="salva.php" method="post"> <p><b>Nome*: </b> <input type="text" name="nome" /></p> <p><b>Responsável*: </b> <input type="text" name="resp" /></p> <p><b>Endereço*: </b> <input type="text" name="ende" /></p> <p><b>Telefone: </b> <input type="text" name="tele" /></p> <p><b>Ramo de atividade: </b> <input type="text" name="ramo" /></p> <p><b>Emissão do último alvará: </b> <input type="text" name="emis" /></p> <p><b>Vencimento do alvará: </b> <input type="text" name="venc" /></p> <p><input type="submit" value="Incluir dados" name="incl" /></p> </body> </html> bom, já deu pra ver que a página manda os dados para o salva.php, que é assim: <?php $tabela = new DOMDocument('1.0', 'utf8'); $tabela->formatOutput = true; $nomes = trim($_POST['nome']); $resps = trim($_POST['resp']); $endes = trim($_POST['ende']); $teles = trim($_POST['tele']); $ramos = trim($_POST['ramo']); $emiss = trim($_POST['emis']); $vencs = trim($_POST['venc']); // --------------------------------- function escreveNovo() { if (empty($nomes) || empty($resps) || empty($endes)) { echo("Preencha os campos obrigatórios! <a href=\"http://localhost/visa/inclui.php\">Voltar </a>"); exit; } else { header("Content-type: text/xml"); $indi = strpos($resps, " "); $espa = $indi - 1; $titu = substr($resps, 0, $espa); $pri = $tabela->createElement("estabelecimento"); $tabela->appendChild($pri); $sec = $tabela->createAttr("dono"); $pri->appendChild($sec); $ter = $tabela->createElement("nome"); $pri->appendChild($ter); $qua = $tabela->createElement("responsavel"); $pri->appendChild($qua); $qui = $tabela->createElement("endereco"); $pri->appendChild($qui); $sex = $tabela->createElement("telefone"); $pri->appendChild($sex); $set = $tabela -> createElement("ramo"); $pri->appendChild($set); $oit = $tabela -> createElement("emissao"); $pri->appendChild($oit); $non = $tabela -> createElement("vencimento"); $pri->appendChild($non); $utit = $tabela->createTextNode($titu); $sec->appendChild($utit); $enom = $tabela->createTextNode($nomes); $ter->appendChild($enom); $pser = $tabela->createTextNode($resps); $qua->appendChild($pser); $edne = $tabela->createTextNode($endes); $qui->appendChild($edne); $elet = $tabela->createTextNode($teles); $sex->appendChild($elet); $omar = $tabela->createTextNode($ramos); $set->appendChild($omar); $sime = $tabela->reateTextNode($emiss); $oit->appendChild($sime); $cnev = $tabela->createTextNode($vencs); $non->appendChild($cnev); } } // ----------------------------------------- escreveNovo(); $tabela->save('estab.xml'); ?> O problema reside já no início da função escreveNovo(): na cláusula if, por algum motivo bizarro os dados do formulário são tratados como vazios (embora tenham sido preenchidos corretamente), e o programa pára na mensagem estipulada. Alguém sabe me explicar por que esse negócio não vai adiante com os dados? tenho o WAMP instalado na versão mais recente, e sim, pretendo usar XML em vez de MySQL, já que vou trabalhar com um volume pequeno de dados. Desde já agradeço pela ajuda!!
×
×
  • Criar Novo...