Ir para conteúdo
Fórum Script Brasil

paulo ch8

Membros
  • Total de itens

    11
  • Registro em

  • Última visita

Tudo que paulo ch8 postou

  1. RESOLVIDO. funcionou como descrito acima define('CONSULTA',"http://192.179.0.150/Nucleo/Nucleo2.0/2011.05.05/Consulta.php?NB=$NB"); $strConsulta = file_get_contents(CONSULTA); $dadosProcesso = simplexml_load_string($strConsulta); print_r($dadosProcesso); echo $dadosProcesso[nb]; A diferença é só o campo do objeto array que não recebe apóstrofo. -_-' O meu problema agora é no retorno do XML que recebe caracteres que não estão sendo aceitos: Alguém sabe como resolver isso? E alguém sabe se essa é uma boa forma de realizar consultas ao banco de dados?
  2. consegui a resposta da página através do comando file_get_contents a diferença é que eu devo colocar o ip no caminho do site: define('CONSULTA',"http://192.179.0.150/Nucleo/Nucleo2.0/2011.05.05/Consulta.php?NB=$NB"); $strConsulta = file_get_contents(CONSULTA); echo $strConsulta; o echo me apresenta as tags do XML devidamente formatadas. Agora eu preciso saber como acessar os elementos para apresentar na página. O código que gera o XML é o descrito acima. Estou tentando acessa-los através do SimpleXML: $dadosProcesso = simplexml_load_string($strConsulta); echo $dadosProcesso->Processo['NB']; mas não está me retornando o objeto.
  3. eu preciso recuperar esta página que gera um XML: <?php require_once('DB\DbLogin.php'); extract($_GET); header("Content-type: text/xml; charset=ISO-8859-1"); echo '<?xml version="1.0" encoding="utf-8"?>'; $pesquisa = new DB_DbLogin(); printf ("<Documento teste='oi'>"); if($pesquisa->consulta("SELECT * FROM processo WHERE NB =".$NB)){ $linhaNB = mysql_fetch_assoc($pesquisa->resultado); printf ("<Processo idProcesso='%s' NB='%s' Especie='%s' DER='%s' Descricao='%s' Documentos='%s' Comprev='%s' Excluido='%s' />", $linhaNB['idProcesso'], $linhaNB['NB'], $linhaNB['Especie'], $linhaNB['DER'], $linhaNB['Descricao'], $linhaNB['Documentos'], $linhaNB['Comprev'], $linhaNB['Excluido']); //echo "<Processo idProcesso=$NB>"; //printf ("</Processo>"); } printf ("</Documento>"); ?> Tentei o simplexml_load_file define('CONSULTA','http://localhost/teste/Consulta.php?NB=1205712469'); $xml=simplexml_load_file($contents); echo $xml['teste']; echo $xml->Processo['idProcesso']; E tentei o file_get_contents: $content = http_build_query(array( 'NB' => '1205712469', )); $context = stream_context_create(array( 'http' => array( 'method' => 'GET', 'content' => $content, ) )); $contents = file_get_contents('http://localhost/teste/Consulta.php', null, $context); echo $contents; $xml=simplexml_load_file($contents); echo $xml['teste']; echo $xml->Processo['idProcesso']; Não funcionaram.
  4. Veja o sscanf do PHP: http://php.net/manual/en/function.sscanf.php
  5. Olá! Está muito difícil de encontrar. Tenho uma página php que me retorna um documento XML. Gostaria de fazer sua requisição POT ou GET através de outra página PHP para processar o XML. As páginsa estã na mesma pasta do servidor. Estou testando no localhost Já tentei File_get_contents e não consegui, da seguinte forma: $content = http_build_query(array( 'cidade' => 'Rio de Janeiro', 'tipo' => 'Apartamento', )); $context = stream_context_create(array( 'http' => array( 'method' => 'POST', 'content' => $content, ) )); $contents = file_get_contents('teste.php', null, $context); Alguma outra idéia?
  6. abro a conexão com a função mysql_connect e mysql_select_db. Já testei em outra máquina com outro wamp mas também aconteceu a mesma coisa. Eu teria que usar algum comando de Transaction, commit? Se bem que o manual do sql diz que ele é autocommit. Meu código de conexão é este: $servidor = "localhost"; $db = "processosdb"; if($conexao = mysql_connect($servidor,'root','')){ if(!mysql_select_db($db)){ //echo "Não foi possível selecionar a base de dados<br />"; $this->dbconnect = false; //return false; } else{ //echo "conectou a base de dados<br />"; $this->dbconnect = true; //return true; } } else{ //echo "Não foi possível conectar ao banco de dados"; $this->dbconnect = false; //return false; }
  7. Olá, fiz um insert através de PHP, com o comando mysql_query da seguinte forma: $sql = "INSERT INTO processo (`Especie`, `idRequerente`) VALUES ('$this->especie', '$this->idRequerente')"; mysql_query($sql) Logo em seguida eu faço a consulta também com o mysql_query e funciona bem no Chrome mas quando eu uso o Internet Explorer, ele executa a insert, mas quando eu realizo a consulta em seguida o registro não aparece. Eu tenho que fechar e abrir o IE para a consulta retornar o registro. Existe algum comando para ele atualizar a conexão com o banco de dados?
  8. Não existe maneira de passar a url com os parâmetros GET e recuperar a página como em um objeto xmlhttp, acessando seus elementos como XML? Como num responseXML acessar os elementos da página com getElementsByTagName sem exibi-la?
  9. Resolvido. Eu não conseguia verificar as falhas nos resultados porque o retorno do php voltava ao xmlhttp e eu não conseguia ver os erros do retorno. Consegui inspecionando o elemento xmlhttp com o depurador do Chrome. Finalmente: Erro de sintaxe e outras coisas... eis o correto: javascript function catchDados(valor) { var elemento = document.getElementById('idPosicao'); objetoXML(); if (!xmlhttp) { elemento.innerHTML = 'Impossível iniciar o objeto XMLHttpRequest.'; return; } else { elemento.innerHTML = 'Carregando...'; } xmlhttp.onreadystatechange = function () { //Se a requisição estiver completada if (xmlhttp.readyState == 4 || xmlhttp.readyState == 0) { //Se o status da requisição estiver OK if (xmlhttp.status == 200) { //Insere no 'elemento' a página postada montaCombo(xmlhttp.responseXML); } else { //Insere no 'elemento' o texto atribuído elemento.innerHMTL = 'Página não encontrada!'; } } } xmlhttp.open('GET', 'situacaoPosicao.php?idSituacao='+valor, true); xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xmlhttp.send(null); } function montaCombo(XML){ var items = XML.getElementsByTagName("posicao"); posicoes = document.getElementById("idPosicao"); opt = document.createElement("option"); opt.value = ""; opt.text = ""; posicoes.options.add(opt); for(var i = 0 ; i < items.length ; i++) { var item = items; id = item.getElementsByTagName("idPosicao")[0].firstChild.nodeValue; nome = item.getElementsByTagName("Descricao")[0].firstChild.nodeValue; opt = document.createElement("option"); opt.value = id; opt.text = i+1 +" - " + nome; posicoes.options.add(opt); } } Arquivo php: <?php class DB_Login{ function conectar($nmUsuario,$pwdSenha){ $servidor = "localhost"; $db = "processosdb"; if($conexao = mysql_connect($servidor,$nmUsuario,$pwdSenha)){ if(!mysql_select_db($db)){ echo "Não foi possível selecionar a base de dados<br />"; return fales; } else{ //echo "conectou a base de dados<br />"; return true; } } else{ echo "Não foi possível conectar ao banco de dados"; return false; } } } extract($_GET); header("Content-type: text/xml; charset=ISO-8859-1"); echo '<?xml version=1.0" encoding="ISO-8859-1"?>'; $conexao = new DB_Login; if ($conexao->conectar('root','')){ $sql ="SELECT ps.`idPosicao`, p.`Descricao` FROM posicao_has_situacao ps, posicao p WHERE ps.`idPosicao` = p.`idPosicao` AND ps.`idSituacao` = '$idSituacao'"; $resultado = mysql_query($sql); echo "<Posicoes>"; while ( $record = mysql_fetch_array($resultado, MYSQL_ASSOC) ) { printf ("<posicao>\n"); printf ("<idPosicao>%s</idPosicao>\n", $record['idPosicao]); printf ("<Descricao>%s</Descricao>\n", $record['Descricao']); printf ("</posicao>\n"); } echo "</Posicoes>"; } ?>
  10. Como eu faço para acessar um elemento de outra página sem abri-la? Eu quero acessar um elemento <p> que é o resultado gerado por uma página PHP. A página da qual eu quero extrair o elemento não é do meu servidor, por isso não tenho acesso direto a página. Eu acessar o elemento sem abrir a página. como eu devo fazer?
  11. Socorro!!! Estou tentando desesperadamente retornar um XML para criação de combobox dinamica mas não consigo obter resultado. Eu chamo pelo script: xmlhttp.onreadystatechange = function () { //Se a requisição estiver completada if (xmlhttp.readyState == 4 || xmlhttp.readyState == 0) { //Se o status da requisição estiver OK if (xmlhttp.status == 200) { //Insere no 'elemento' a página postada montaCombo(xmlhttpPosicao.responseXML); } else { //Insere no 'elemento' o texto atribuído elemento.innerHMTL = 'Página não encontrada!'; } } } xmlhttp.open('POST', 'situacaoPosicao.php?idSituacao='+valor, true); xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xmlhttp.send('idSituacao='+valor); e passo para o php: situacaoPosicao.php: <?php class DB_Login{ var $conexao function conectar($nmUsuario,$pwdSenha){ $servidor = "localhost"; $basedados = "processosdb"; if($conexao = mysql_connect($servidor,$nmUsuario,$pwdSenha)){ echo "condectou db"; if(!mysql_select_db($basedados)){ return fales; } else{ return true; } } else{ return false; } } function desconectar(){ mysql_close($conexao); } } extract($_GET); header("Content-type: text/xml; charset=ISO-8859-1"); echo '<?xml version="1.0" encoding="ISO-8859-1"?>'; $conexao = new DB_Login; if ($conexao->conectar('root','')){ $sql ="SELECT ps.`idPosicao`, p.`Descricao` FROM posicao_has_situacao ps, posicao p WHERE ps.`idPosicao` = p.`idPosicao` AND ps.`idSituacao` = '$idSituacao'"; $resultado = mysql_query($sql); $qtdResultdados = mysql_num_rows($resultado); echo "<Posicoes>"; while ( $record = mysql_fetch_array($resultado, MYSQL_ASSOC) ) { echo ("<posicao>\n"); echo ("<idPosicao>%s</idPosicao>\n", $record['idPosicao']); echo ("<Descricao>%s</Descricao>\n", $record['Descricao']); echo ("</posicao>\n"); } echo "</Posicoes>"; $db->desconectar; } ?> Mas ele nunca reconhece o xmlhttpPosicao.responseXML e retorna xmlhttp.status 500. O que eu devo fazer?
×
×
  • Criar Novo...