-
Total de itens
2.314 -
Registro em
-
Última visita
Posts postados por ursolouco
-
-
Saudações,
Estou enfrentando um problema que o PHP não pega o retorno de forma correta da procedure.
Procedure
SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROCEDURE [SISREN_P0000_MAPA_RESERVA_LISTA] @ID_SALA INT = NULL, @ID_ATIVIDADE INT = NULL, @PERIODO_INICIO DATETIME = NULL, @PERIODO_TERMINO DATETIME = NULL, @HORARIO_INICIO NVARCHAR(5) = NULL, @HORARIO_TERMINO NVARCHAR(5) = NULL AS BEGIN DECLARE @QUERY NVARCHAR(4000); DECLARE @SPARAMETER NVARCHAR(4000); SET @QUERY = ''; SET @QUERY = @QUERY + 'SELECT RESERVA.* FROM T0010_RESERVA AS RESERVA '; SET @QUERY = @QUERY + 'INNER JOIN T0006_SALA AS SALA ON SALA.ID = RESERVA.ID_SALA '; SET @QUERY = @QUERY + 'INNER JOIN T0100_PESSOAL AS PESSOAL ON PESSOAL.PESS_CODIGO = RESERVA.ID_RESERVANTE '; SET @QUERY = @QUERY + ' LEFT JOIN T0012_ATIVIDADE AS ATIVIDADE ON ATIVIDADE.ID = RESERVA.ID_ATIVIDADE '; SET @QUERY = @QUERY + ' LEFT JOIN T0003_DISCIPLINA AS DISCIPLINA ON DISCIPLINA.ID = RESERVA.ID_DISCIPLINA '; SET @QUERY = @QUERY + 'WHERE 1 = 1 '; IF @ID_SALA IS NOT NULL SET @QUERY = @QUERY + 'AND RESERVA.ID_SALA = @ID_SALA '; IF @ID_ATIVIDADE IS NOT NULL SET @QUERY = @QUERY + 'AND RESERVA.ID_ATIVIDADE = @ID_ATIVIDADE '; IF @PERIODO_INICIO IS NOT NULL SET @QUERY = @QUERY + 'AND @PERIODO_INICIO BETWEEN RESERVA.PERIODO_INICIO AND RESERVA.PERIODO_TERMINO '; IF @PERIODO_TERMINO IS NOT NULL SET @QUERY = @QUERY + 'AND @PERIODO_TERMINO BETWEEN RESERVA.PERIODO_INICIO AND RESERVA.PERIODO_TERMINO '; IF @HORARIO_INICIO IS NOT NULL SET @QUERY = @QUERY + 'AND @HORARIO_INICIO BETWEEN RESERVA.HORARIO_INICIO AND RESERVA.HORARIO_TERMINO '; IF @HORARIO_TERMINO IS NOT NULL SET @QUERY = @QUERY + 'AND @HORARIO_TERMINO BETWEEN RESERVA.HORARIO_INICIO AND RESERVA.HORARIO_TERMINO '; SET @SPARAMETER = '@ID_SALA INT, @ID_ATIVIDADE INT, @PERIODO_INICIO DATETIME, @PERIODO_TERMINO DATETIME, @HORARIO_INICIO NVARCHAR(5), @HORARIO_TERMINO NVARCHAR(5) '; EXECUTE SP_EXECUTESQL @QUERY, @SPARAMETER OUTPUT, @ID_SALA, @ID_ATIVIDADE, @PERIODO_INICIO, @PERIODO_TERMINO, @HORARIO_INICIO, @HORARIO_TERMINO -- SELECT @QUERY AS 'RETORNO' -- RETURN END
Funciona pefeirtamente via SQL SERVER MANAGEMENT STUDIO, porém, via PDO com PDO, sem chance. teste.php<?php require_once('library/__autoload.php'); if(isset($pesquisar)) { $filtro = new stdclass(); $filtro->id_sala = $id_sala; $filtro->id_atividade = $id_atividade; $filtro->periodo_inicio = $periodo_inicio; $filtro->periodo_termino = $periodo_termino; $filtro->horario_inicio = $horario_inicio; $filtro->horario_termino = $horario_termino; try { $objMapaReserva = new MapaReserva(); $arrPesquisa = array(); $arrPesquisa = $objMapaReserva->pesquisar($filtro); new Depurador( $arrPesquisa ); } catch(Exception $e) { print( $e->getTraceAsString() ); } } ?> <form method="post" action="?pesquisar=1" target="_self"> <input type="hidden" name="id_sala" value="" /> <input type="hidden" name="id_atividade" value="" /> <input type="hidden" name="periodo_inicio" value="" /> <input type="hidden" name="periodo_termino" value="" /> <input type="hidden" name="horario_inicio" value="" /> <input type="hidden" name="horario_termino" value="" /> <input type="submit" value="Executar" /> </form>
Alguém tem alguma idéia do que possa ser ? :huh:
Abraços
-
JamesM,
A saida que eu digo se é positivo ou negativo a autenticação do usuário.
É como se você digitasse: http://www.site.com.br/login.php?username=...;loginButton=Go
Esta saida, você pode pegar e trata-la via PHP e validar ou não o conteudo.
Entendeu!
-
Qual a saida do arquivo login.php ?
-
Salve,
Primeiro de tudo é mudar a sua arquitetura de autenticação.
O idéal para seu problema é trabalhar com algum tipo de webservice (REST/SOAP/etc...) para autenticar as informações do segundo site via XML para que você possa proteger a integridade e segurança das informações.
Existem diversos tipo e exemplos na web (use o google) que demostram como fazer este tipo de coisa.
Vela a penar dar uma pesquisada.
Abraços
-
Exemplo:
<?php //categoria.class.php class categoria { public $id; public $descricao; public $opr; public $enviar; public $rs; public $con; public function __construct() { } function listar() { $conn = Conect::factoryPDO(); $sql = $conn->prepare("SELECT * FROM tbl_subcategoria"); $sql->execute(); $data = $sql->fetchAll(); if(count($data)) { foreach($data as $key => $array) { } } } } //arquivo2.php include_once('categoria.class.php'); $categoria = new Categoria(); $categoria->listar();
-
Brother,
Verifique se seu arquivo UTF-8 possui assinatura BOM.
Se positivo, converta o mesmo usando notepad++.
Abraços
-
Brother,
Existe o projeto xajax, porém, vai gerar javascript que faz a função do AJAX :mellow:
Existe alguma maneira de resolver isso sem a utilização de Ajax ou JQuery?Apenas com o PHP?
-
Quase isso, mas não quero ficar digitando: 'mysql:host=localhost;dbname=exemplo_select', 'root', 'senha' toda vez que for digitar um comando sql, entendeu?
Brother,
Me desculpe, as você entendeu o funcionamento da classe ? :huh:
Você iria montar um unico arquivo, depois, só usar da seguinte forma:
$pdo = Database::factoryPDO()
Pronto!
Já tem um objeto PDO (conectado) para uso.
Entendeu ?
-
Sonyer,
Se não me engano, os retrovisores estão acessiveis somente ao escopo de string e não passando para linguagem de programação.
-
-
Salve,
Veja se pode lhe ajudar
<?php //Database.class.php class Database { public static function factoryPDO() { try { $dsn = 'mssql:host=dominio.com;dbname=database_name'; $username = 'usernam'; $password = 'password'; $pdo = new pdo($dsn, $username, $password); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); return $pdo; } catch(Exception $e) { throw new Exception($e->getMessage(), $e->getCode()); } } }
-
Brother,
Tá tudo sem pé e sem cabeça...
Vamos reformular
<?php class Categoria { private $conn; public function __construct() { $this->conn = new PDO('pgsql:dbname=bd_atelie; user=postgres; password=pglocal; host=localhost; port=5432'); $this->conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } public function listar() { $sql = "select * from tbl_categoria"; $result = $this->conn->query($sql); while($row = $result->Fetch(PDO::FETCH_OBJ)) { echo $row->cat_codigo . '_' . $row->cat_descricao . "<br>\n"; } } } //exemplo de uso try { $categoria = new Categoria(); $categoria->listar(); } catch(Exception $e) { printf('<h1>%s</h1>', $e->getMessage()); } ?>
E por ai vai..
-
:huh:
ó pai, me perdoe por este tipo de código;-)??
Não entendi, tem algum problema na script?
Hahahha é brincadeira que fazemos quando vemos código muito antigo (que mistura apresentação com lógica de negócio).
-
Mili,
Já experimentou usar transações em suas operações ?
-
-
<?php function getTotal() { $sql = "select count(*) as Total from tbl_categoria"; $res = pg_query($sql); $reg = pg_fetch_assoc($res); return $reg['Total']; } echo getTotal();
-
Brother,
Fiz na pressa pois estou saindo fora...
Veja se pode lhe ajudar
<?php mysql_select_db($database_acesso_bd, $acesso_bd); $query_rs_lista_noticia = "SELECT cn_id, cn_titulo FROM site_noticias WHERE cn_status = 1 ORDER BY cn_id DESC limit 10"; $rs_lista_noticia = mysql_query($query_rs_lista_noticia, $acesso_bd) or die(mysql_error()); $totalRows_rs_lista_noticia = mysql_num_rows($rs_lista_noticia); do { /* ó pai, me perdoe por este tipo de código;-) */ ?> <div style="padding-bottom:px; padding-top:5px; text-align:left;"> <a href="noticia.php?cn_id=<?php echo $row_rs_lista_noticia['cn_id']; ?>"> <?php echo $row_rs_lista_noticia['cn_titulo']; ?></a> </div> <?php } while ($row_rs_lista_noticia = mysql_fetch_assoc($rs_lista_noticia)); ?>
Abraços
-
Salve,
Fiz bem rápido... me desculpe se houver algum erro.
<?php function lang_fetcharray($lang) { global $phpExt, $root_dir; $file = $root_dir . LANGUAGE_DIR . $lang . LANGUAGE_FILE_EXT; $data = array(); if(file_exists($file)) { $data = file($file); // $file_contents = file_get_contents($file); // $compiled_language_array = preg_split('/\n/', $file_contents); // return $compiled_language_array; } return $data; }
Abraços
-
B) E isso ai...
Opa consegui fazer... valeu usulouco fiz dessa forma e deu certo... Abraços! -
B) É isso ai!
Grande UrsoLouco, voce detonou nessa ER, serviu perfeitamente, eu cada vez mais me surpreendo com as ER's, comprei o livro do aurelio e estou começando a estuda-lo, vi que o caminho é arduo, mas ainda chego lá... e com as dicas que você deu agora, andei varios passos pra frente, muito muito muito obrigado.... valeu mesmo..... -
<?php switch($row_rsProdutos['id_categ']) { case 3: ?> <h1>Aqui vem o conteudo</h1> <?php break; case 4: ?> <h1>Aqui vem o conteudo</h1> <?php break; case 10: ?> <h1>Aqui vem o conteudo</h1> <?php break; default: ?> <h1>Aqui vem o conteudo</h1> <?php break; } ?>
-
Walley,
Veja o código abaixo
<?php import_request_variables('gp'); $string = '123456A-9-9'; // $string = '123456A-99-9'; // $string = '123456A-9-99'; // $string = '123456A-99-99'; // $string = '123456A-99- 99'; // $string = '123456A-99 - 99'; // $string = '123456A- 99 - 99'; // $string = '123456A - 99 - 99'; if(preg_match('/^[0-9]{1,6}[A-Za-z]{1}(\s+)?[-](\s+)?[0-9]{1,2}(\s+)?[-](\s+)?[0-9]{1,2}$/im', $string)) { echo 'CASOU'; } else { echo 'NÃO CASOU'; }
Vá descomentando a variavel $string para testar
Abraços
-
Salve,
Não sou muito bom com expressões regulares, mas lá vai...
$scanER = "/^[0-9]{1,6}[A-Za-z]{1}(\s+)?[-](\s+)?[0-9]{2}(\s+)?[-](\s+)?[0-9]{2}$/im";
Veja se lhe ajuda,
Grande abraço,
-
B) Não me agradeça, faça o mesmo por alguém!!!
Abraços
Beleza funcionou, obrigado a todos
(Resolvido)Problemas com OO
em PHP
Postado
Salve,
Complicado hein.....