
Nill
Membros-
Total de itens
205 -
Registro em
-
Última visita
Tudo que Nill postou
-
vlw ai pessoal, conseguir aqui if(!$abbre = fopen("../conexao/conexao.php", "w+")) { $msg .= " <label class=\"letra_erro\"><b>Erro abrindo arquivo ao abrir: conexao.php</b><label>"; exit; }
-
bom em pesquisa pela net, fiz o arquivo para alterar o meu arquivo conexao.php porém não estou conseguindo apontar o local onde o mesmo estar! Toda vez que gera ele gerar no raiz da pasta, queria apontar o local onde ele se encontra, tipo "../../conexao/conexao.php" Como faço isso? //Preparando o conteúdo pra ser gravado $arquivo_text = ""; $arquivo_text .= $inicio." ".$conect." ".$dbco." ".$fim; // Abre ou cria o arquivo conexao.php // "w+" representa que o arquivo é aberto para ser escrito e leitura //TENTA ABRIR O conexao.php if(!$abbre = fopen("conexao.php", "w+")) { $msg .= " <label class=\"letra_erro\"><b>Erro abrindo arquivo ao abrir: conexao.php</b><label>"; exit; } // Escreve no arquivo fwrite($abbre, $arquivo_text); // Fecha o arquivo fclose($abbre);
-
vlw ai pessoal, conseguir descobrir aqui.......... era somente isso extension_loaded('pgsql')
-
Pessoal, estou desenvolvendo um install de um sistema que fiz, e estava precisando de saber via php, pode ser tb outra liguagem pra web, se o Postgres estar instalado/startado no computador do usuario, se não ele não passava para a proxima tela. Em mysql já vi isso em um sistema que baixei... Em pg tem como fazer? <table border="0" width="200" cellspacing="0" cellpadding="2"> <tr> <td><b>PHP Version</b></td> <td align="right"><?php echo PHP_VERSION; ?></td> <td align="right" width="25"><img src="images/<?php echo ((PHP_VERSION >= 4) ? 'tick.gif' : 'cross.gif'); ?>" border="0" width="16" height="16"></td> </tr> </table> <br /> <table border="0" width="200" cellspacing="0" cellpadding="2"> <tr> <td><b>PHP Extensions</b></td> <td align="right" width="25"></td> </tr> <tr> <td>MYSQL</td> <td align="right"><img src="images/<?php echo (extension_loaded('mysql') ? 'tick.gif' : 'cross.gif'); ?>" border="0" width="16" height="16"></td> </tr> </table> Achei este codigo na net, mas já tentei mudar para PG e não to conseguindo!!!!!!!
-
ai pessoal, estava fazendo uma pesquiza na net para melhorar a performace do PHP e encontrei este artigo do Lucas Stephanou, na verdade ele traduziu de Reinhold, . Para quem quizer da uma olhada no blog do Lucas -> http://blog.lucas-ts.com/.... Espero que seja util ai para alguém, assim como foi pra mim. [uPDATE] Algumas correções de português, adicionados exemplos. Obrigado Pablo. [/uPDATE] Ai esta: (Thank you Reinhold) 1. Se um método pode ser estatico, declare ele estatico. O fator de otimização é 4x+ 2. echo é mais rapido que print. Veja 3. Prefira usar echo com multiplo parametros ao invés de concatenar string 3.1echo "parametro um", $var , "outro parametro" 4. Set o valor maximo do seus loops FOR antes e não no for #onde: 1. for($i=0;$i<count($array);$i++) 2. #use: 3. $max_for = count($array); 4. for($i=0;$i<$max_for;$i++) 5. Sempre de unset em variaveis que não serão mais usadas, principalemente grandes arrays. 6. Tente não usar métodos magicos, como: __get, __set, __autoload 7. require_once() tem custo elevado, prefira include[_once], como alertado pelo Pablo, o include_once é mais custoso que o include. 8. Use caminhos completos em includes e requires, o PHP gastara menos tempo resolvendo os caminhos. 9. Se você deseja descobrir quando o script começou a ser executado, $_SERVER[’REQUEST_TIME’] é melhor que time() 10. Se você puder, use strncasecmp, strpbrk e stripos no lugar de funcões regex 11. str_replace é mais rápida que preg_replace, mas strtr é ainda 4x mais rapida que str_replace. 12. Se uma função, como troca de string , aceitar tanto arrays quanto caracteres unicos e a sua lista de argumentos não for muito longa, considere escrever algumas vezes o mesmo codigo passando um caracter por vez ao invés de uma linha passando arrays nos argumentos de pesquisa e troca. 13. É melhor usar switch/case do que multiplos if’s e else. 14. Usar supressão de erros com @ na frente da função é muito lento. 15. Ative o mod_deflate do apache( modulo de compressão de resposta). 16. Feche as conexões ao banco de dados quando você não for mais usa-lo. 17. $row[’id’] é 7x mais rapido que $row[id] 18. Mensagens de erros tem custo elevado, desligue-as em produção. 19. Não use funcões dentro de loops, como: 19.1 for ($x=0; $x < count($array); $x) A função count() é chamada em cada iteração. 20. Incrementando uma variavel local é mais rapido. 21. Incrementando uma variavel global é 2x mais lento que em uma variavel local. 22. Incrementando uma propriedade ( $this->prop++) é 3x mais lento que em uma variavel local. 23. Incrementando uma variavel local não definida é de 9x a 10x mais lento do que uma variavel local pré-inicializada. 24. Declarando uma variável global sem usá-lo em uma função também atrasa as coisas (com aproximadamente a mesma quantidade incrementando como uma variavel local).O PHP provavelmente faz um checagem para ver se existe a nível global 25. A invocação de métodos parece ser independente do número de métodos definidos em uma classe, em uma classe de teste onde se adicionou 10 metódos não teve mudança de performance. 26. Métodos em classes derivadas rodam mais rápido do que aqueles definidos na classe base. 27. Use ‘ ao invés de ” em strings quando não for preciso usar variaveis ou escapes, assim o PHP não necessita procurar e interpretar esses caracteres especiais. 28. Prefira usar HTML puro se for possivel, scripts PHP são servidos de 2x a 10x mais lentos que equivalentes. 29. Em cada requisição seus scripts PHP são recompilados, use uma solução de cache, isso pode te dar um ganho de 25 a 100% . Veja 30. Quando lidando com string e você precisar verificar se a string possui certo tamanho, você entendidamente desejara usar a função strlen(). Essa função é bastante rapida, já que ela não faz nenhum calculo, apenas retorna o tamanho já conhecido da string disponivel na estrutura zval(estrutura interna do C usada para guardar variaveis PHP). No entanto como strlen() é uma função ela ainda assim é lenta, porque o PHP precisa fazer varias operações como lowercase e buscas na hashtable, e em seguida executar a dita função. Algumas vezes você podera aumentar a velocidade do seu código usando um truque com isset(). Exemplo: Digamos que voce tem : if (strlen($foo) < 5) { echo “Foo is too short”; } 1. # versus 2. if (!isset($foo{5})) { echo "Foo is too short"; } Usando isset() sera mais rapido que strlen(), porque diferente de strlen(), isset() é um construtor de linguagem e não uma função, isso quer dizer que a sua execução não necessita busca na hashtable nem uso de lowercase. Virtualmente você não sobrecarga no código atual para determinar o tamanho da string. 31. Quando incrementando ou decrementando o valor de uma variavel, $i++ normalmente é mais lenta que ++$i. Isso é especifico para PHP, ou seja, não se aplica a outras linguagens, não sai por ai modificando seu código java ou C. Isso se da porque $i++ usa 4 opcodes enquanto ++$i precisa de somente 3. 32. Nem tudo precisa ser OOP, gera muita sobrecarga, cada chamada de método e objeto consome um monte de memória. 33. Não implemente cada estrutura de dados como uma classe, arrays são utéis também. 34. Não divida muito os métodos, pense bem cada código que sera reusado. 35. Você sempre podera dividir o código no futuro, caso necessario. 36. Faça uso das incontaveis funções pré-definidas. 37. Se você tem muito tempo consumido por funções em seu código, considere escreva-las como extensões C. 38. Faça Profile do seu código. Um profiler mostra quanto tempo cada parte do seu código consome. A extensão Xdebug já contém um profiler.
-
Bom pessoal, estou com um problema... Tenho que fazer um install para o sistema que desenvolvemos aqui na empresa, porém havia feito o via php mesmo, fiz com base do sistema oscommerce, porém o pessoal não querem dessa forma, me pediram pra fazer via software, tipo quando instalamos o office por exemplo. Bom pesquisei na net e conseguir varios softwares que faz isso, porém, o que eu prescizo e o seguinte: O install além de instalar o sistema que desenvolvemos em PHP, tem que instalar o software de banco de dados e o servidor de php. Todos os programas que achei na net so geram a instalação, eles não pegam um programa exe e execultam junto a instalação.... Deu pra entender... Queria que me indicassem um software ou uma solução pra isso... Eu havia pensado em fazer uma aplicação em uma liguagem de programação tipo VB ou Delphi, fazendo tipo a instalação de drivers de uma placa mão... colocando um botão para cada itens que deseja instalar, mas não querem isso tb... Caso alguém tem alguma ideia ai.. vlw
-
vlw ai pessoal, conseguir achar o errro. $add_sql = "INSERT INTO tbl_carrinho (idcarrinho. cdcarrinho, nmcarrinho, preço, qtdcarrinho, sessao ) apos o campo idcarrinho estava com ponto... vlw ai pela ajuda..... fiquei analizando o que poderia esta faltando e me deparei com esse problema...
-
Column count doesn't match value count at row 1 bom pessoal, estou fazendo uma loja virtual, a titulo de apredizando da linguagem... me deparei com o erro acima, sei que é na query, quando vou fazer a inserção no banco, mas não estou conseguindo achar o erro, caso alguém possa me ajudar ai.. sql -- -- Extraindo dados da tabela `tbl_fabricante` -- INSERT INTO `tbl_fabricante` (`cdfabricante`, `nmfabricante`, `tsinsert`, `tscancelado`, `tsdelete`) VALUES (1, 'Sony', '2008-08-15 11:26:59', '0000-00-00 00:00:00', '0000-00-00 00:00:00'), (2, 'LG', '2008-08-15 11:29:55', '0000-00-00 00:00:00', '0000-00-00 00:00:00'), (3, 'Dell', '2008-08-15 11:37:49', '0000-00-00 00:00:00', '0000-00-00 00:00:00'), (4, 'Sansung', '2008-08-15 11:37:49', '0000-00-00 00:00:00', '0000-00-00 00:00:00'); -- -------------------------------------------------------- -- -- Estrutura da tabela `tbl_produtos` -- CREATE TABLE IF NOT EXISTS `tbl_produtos` ( `cdproduto` int(11) NOT NULL auto_increment, `cdfabricante` int(11) default NULL, `nmproduto` varchar(150) NOT NULL, `imgproduto` varchar(50) NOT NULL, `dsproduto` varchar(256) default NULL, `qtdproduto` int(11) default NULL, `preço` double(10,2) NOT NULL, `tsinsert` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `tsdelete` timestamp NOT NULL default '0000-00-00 00:00:00', `tscancelado` timestamp NOT NULL default '0000-00-00 00:00:00', PRIMARY KEY (`cdproduto`), KEY `tbl_produtos_tbl_fabricante` (`cdfabricante`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=5; -- -- Extraindo dados da tabela `tbl_produtos` -- INSERT INTO `tbl_produtos` (`cdproduto`, `cdfabricante`, `nmproduto`, `imgproduto`, `dsproduto`, `qtdproduto`, `preço`, `tsinsert`, `tsdelete`, `tscancelado`) VALUES (1, 1, 'TV LCD 32" HDDVD', '003.jpg', 'TV LCD 32" HDDVD com tecnologia BluRay', 10, 2999.99, '2008-08-15 13:34:32', '0000-00-00 00:00:00', '0000-00-00 00:00:00'), (2, 2, 'Computador HP', '002.jpg', 'Computador HP Pavillon, HD200gb, 2mb, Processador Quad Core', 9, 1450.00, '2008-08-15 13:30:52', '0000-00-00 00:00:00', '0000-00-00 00:00:00'), (3, 3, 'Notebook HP', '001.jpg', 'Notebook Core 2 Duo, Gravador de DVD', 5, 1998.00, '2008-08-15 13:33:17', '0000-00-00 00:00:00', '0000-00-00 00:00:00'), (4, 2, 'Gravador de DVD', '004.jpg', 'Gravador de DVD, tecnologia BluyRay', 8, 99.00, '2008-08-15 13:34:45', '0000-00-00 00:00:00', '0000-00-00 00:00:00'); -- -------------------------------------------------------- carrinho.php <?php // Iniciamos nossa sess�o que vai indicar o usu�rio pela session_id session_start(); include "conexao/conexao.php"; // Recuperamos os valores passados por parametros $acao = $_GET['acao']; $cod = $_GET['cod']; // Verificamos se a acao � igual a incluir if ($acao == "incluir") { // Verificamos se cod do produto � diferente de vazio if ($cod != '') { // Se for diferente de vazio verificamos se � num�rico if (is_numeric($cod)) { // Tratamos a variavel de caracteres indevidos $cod = addslashes(htmlentities($cod)); // Verificamos se o produto referente ao $cod j� est� no carrinho para o session id correnpondente $query_rs_carrinho = "SELECT * FROM tbl_carrinho WHERE tbl_carrinho.cdcarrinho = '".$cod."' AND tbl_carrinho.sessao = '".session_id()."'"; $rs_carrinho = mysql_query($query_rs_carrinho, $conn) or die(mysql_error()); $row_rs_carrinho = mysql_fetch_assoc($rs_carrinho); $totalRows_rs_carrinho = mysql_num_rows($rs_carrinho); // Se o total for igual a zero � sinal que o produto ainda n�o est� no carrinho if ($totalRows_rs_carrinho == 0) { // Aqui pegamos os dados do produto a ser incluido no carrinho $query_rs_produto = "select * from tbl_produtos where cdproduto = '".$cod."'"; $rs_produto = mysql_query($query_rs_produto, $conn) or die(mysql_error()); $row_rs_produto = mysql_fetch_assoc($rs_produto); $totalRows_rs_produto = mysql_num_rows($rs_produto); // Se total for maior que zero esse produto existe e ent�o podemos incluir no carrinho if ($totalRows_rs_produto > 0) { $registro_produto = mysql_fetch_assoc($rs_produto); // Incluimos o produto selecionado no carrinho de compras $add_sql = "INSERT INTO tbl_carrinho (idcarrinho. cdcarrinho, nmcarrinho, preço, qtdcarrinho, sessao ) VALUES('','".$row_rs_produto['cdcarrinho']."','".$row_rs_produto['nmcarrinho']."','".$row_rs_produto['preço']."','1','".session_id()."')"; $rs_produto_add = mysql_query($add_sql, $conn) or die(mysql_error()); } } } } } // Verificamos se a acao � igual a excluir if ($acao == "excluir") { // Verificamos se cod do produto � diferente de vazio if ($cod != '') { // Se for diferente de vazio verificamos se � num�rico if (is_numeric($cod)) { // Tratamos a variavel de caracteres indevidos $cod = addslashes(htmlentities($cod)); // Verificamos se o produto referente ao $cod est� no carrinho para o session id correnpondente $query_rs_car = "SELECT * FROM tbl_carrinho WHERE cdcarrinho = '".$cod."' AND sessao = '".session_id()."'"; $rs_car = mysql_query($query_rs_car, $conn) or die(mysql_error()); $row_rs_carrinho = mysql_fetch_assoc($rs_car); $totalRows_rs_car = mysql_num_rows($rs_car); // Se encontrarmos o registro, excluimos do carrinho if ($totalRows_rs_car > 0) { $sql_carrinho_excluir = "DELETE FROM tbl_carrinho WHERE cdcarrinho = '".$cod."' AND sessao = '".session_id()."'"; $exec_carrinho_excluir = mysql_query($sql_carrinho_excluir, $conn) or die(mysql_error()); } } } } // Verificamos se a a��o � de modificar a quantidade do produto if ($acao == "modifica") { $quant = $_POST['qtdcarrinho']; // Se for diferente de vazio verificamos se � num�rico if (is_array($quant)) { // Aqui percorremos o nosso array foreach($quant as $cod => $qtd) { // Verificamos se os valores s�o do tipo numeric if(is_numeric($cod) && is_numeric($qtd)) { // Fazemos nosso update nas quantidades dos produtos $sql_modifica = "UPDATE tbl_carrinho SET qtdcarrinho = '$qtd' WHERE cdcarrinho = '$cod' AND sessao = '".session_id()."'"; $rs_modifica = mysql_query($sql_modifica, $conn) or die(mysql_error()); } } } } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Carrinho de Compras</title> <style type="text/css"> <!-- .style3 {font-size: 10px; font-family: Verdana, Arial, Helvetica, sans-serif; } .style4 { color: #FF0000; font-weight: bold; } --> </style> </head> <body> <div align="center"><img src="imgs/carrinho.jpg" width="589" height="102" /> </div> <form action="carrinho.php?acao=modifica" method="post"> <table width="100%" border="1" cellspacing="0" cellpadding="0"> <tr> <th width="36%" scope="col"><div align="left">PRODUTO</div></th> <th width="22%" scope="col">PREÇO</th> <th width="13%" scope="col">QUANTIDADE</th> <th width="14%" scope="col">SUBTOTAL</th> <th width="15%" scope="col"> </th> </tr> <? $sql_meu_carrinho = "SELECT * FROM tbl_carrinho WHERE sessao = '".session_id()."' ORDER BY nome ASC"; $exec_meu_carrinho = mysql_query($sql_meu_carrinho, $conn) or die(mysql_error()); $qtd_meu_carrinho = mysql_num_rows($exec_meu_carrinho); if ($qtd_meu_carrinho > 0) { $soma_carrinho = 0; while ($row_rs_produto_carrinho = mysql_fetch_assoc($exec_meu_carrinho)) { $soma_carrinho += ($row_rs_produto_carrinho['preço']*$row_rs_produto_carrinho['qtdcarrinho']); ?> <tr> <td><span class="style3"> <?=$row_rs_produto_carrinho['nome']?> </span></td> <td><div align="center" class="style3"><?= number_format($row_rs_produto_carrinho['preço'],2,",","."); ?></div></td> <td><div align="center" class="style3"><input type"text" size="2" name="qtdcarrinho[<?=$row_rs_produto_carrinho['cdcarrinho']?>]" value="<?=$row_rs_produto_carrinho['qtdcarrinho']?>" /></div></td> <td><div align="center" class="style3"><?= number_format($row_rs_produto_carrinho['preço']*$row_rs_produto_carrinho['qtdcarrinho'],2,",","."); ?></div></td> <td><div align="center"><a href="carrinho.php?cod=<?=$row_rs_produto_carrinho['cdcarrinho']?>&acao=excluir"><img src="imgs/del_carrinho.jpg" width="110" height="21" border="0" /></a></div></td> </tr> <? } } ?> <tr> <td colspan="3"><div align="right"><strong>TOTAL:</strong> </div> <div align="right"></div> <div align="right"></div></td> <td><div align="center" class="style3 style4"> <?= number_format($soma_carrinho,2,",","."); ?></div></td> <td> </td> </tr> <tr> <td colspan="5"><table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <th width="33%" height="60" scope="col"><span class="style3"><a href="produtos.php"><img src="imgs/comprando.jpg" width="287" height="40" border="0" /></a></span></th> <th width="33%" scope="col"> </th> <th width="34%" scope="col"><label> <input type="image" name="imageField" src="imgs/atualizar.jpg" /> </label></th> </tr> </table></td> </tr> </table> </form> </body> </html> produtos.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Carrinho de Compras</title> </head> <body> <div align="center"> <?php include "conexao/conexao.php"; //********************************************************************* // CONFIGURA��O DE BANCO DE DADOS //********************************************************************* $con = mysql_connect($hostname_conn,$username_conn,$password_conn); $bd = mysql_select_db($database_conn); ?> <table cellSpacing=1 cellPadding=0 width="50%" align=center border=0> <tr> <td> <? //********************************************************************* // GERA A INSTRU��O SQL E CHAMA A FUN��O PARA GERAR AS COLUNAS //********************************************************************* $sql = "SELECT * FROM tbl_produtos ORDER BY RAND() LIMIT 0,4"; GeraColunas(2, $sql) ?> </td> </tr> </table> <? //********************************************************************* // FUN��O: GERACOLUNAS // Parametros: // $pNumColunas (int) > Quant. de colunas para distribui��o // $pQuery (string) > Query de registros //********************************************************************* function GeraColunas($pNumColunas, $pQuery) { $resultado = mysql_query($pQuery); echo ("<table width='100%' border='0'>\n"); for($i = 0; $i <= mysql_num_rows($resultado); ++$i) { for ($intCont = 0; $intCont < $pNumColunas; $intCont++) { $linha = mysql_fetch_array($resultado); if ($i > $linha) { if ( $intCont < $pNumColunas-1) echo "</tr>\n"; break; } $cod = $linha['cdproduto']; $nome = $linha['nmproduto']; $img = $linha['imgproduto']; $preço = number_format($linha['preço'],2,",","."); if ( $intCont == 0 ) echo "<tr>\n"; echo "<td>"; // Aqui voc� inclui o conteudo echo "<table width='266' border='0' cellspacing='0' cellpadding='0'>"; echo "<tr>"; echo "<td width='250' height='141' valign='middle'><div align='center'><img src='produtos/".$img."' border='0' width='189' height='141' /></div></td>"; echo "</tr>"; echo "<tr>"; echo "<td>"; echo "<table width='92%' border='0' align='center' cellpadding='0' cellspacing='0'>"; echo "<tr>"; echo "<td><div align='center' style='font-size:10px;font-family:Verdana'><strong><a href='carrinho.php?cod=".$cod."&acao=incluir'>".$nome."</a></strong></div><strong><div align='center'><font color='#FF0000' size='4px'> R$ ".$preço." </font></strong></div></td>"; echo "</tr>"; echo "<tr>"; echo "<td><div align='center' style='font-size:10px;font-family:Verdana'><a href='carrinho.php?cod=".$cod."&acao=incluir'><img src='imgs/add_carrinho.jpg' border='0'/></a></div><br></td>"; echo "</tr>"; echo "</table>"; echo "</td>"; echo "</tr>"; echo "</table>"; // Aqui � o final do conteudo echo "</td>"; if ( $intCont == $pNumColunas-1 ) { echo "</tr>\n"; } else { $i++; } } } echo ('</table>'); } ?> </div> </body> </html> </div> </body> </html>
-
vlw ai.. consegui aqui
-
Tem como escrever na uma mensagem na barra de status em PHP, pois em javaScript eu consigo, mas no Firefox não funcionou... ou so tem jeito mesmo em javascript????
-
não deu certo, como estão precisando do grafico com urgência eu fiz ele usando sessão... mas mesmo assim vou ter que se virar e fazer funcionar com $_GET. grafico_qse_geral.php <?PHP include "../conexao/conexao.php"; include "../ft/ft_funcoes.php"; $cdvestibularqse = anti_injection_array($_GET["cdvestibular"]); $cod_perguntaqse = anti_injection_array($_GET["pergunta"]); $url = "qse_geral.php?cdperguntaqse=".$cod_perguntaqse."&cdvestibularqse=".$cdvestibularqse; $titulo = "Gráfico QSE"; utf8_decode($titulo); ?> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title><?$titulo?></title> <link rel="stylesheet" href="../Contents/Style.css" type="text/css" /> <script language="JavaScript" src="fusion/JSClass/FusionCharts.js"></script> </head> <body> <table width="98%" border="0" cellspacing="0" cellpadding="3" align="center"> <tr> <td valign="top" class="text" align="center"> <div id="chartdiv" align="center"> FusionCharts. </div> <script type="text/javascript"> var chart = new FusionCharts("fusion/Charts/FCF_Bar2D.swf", "ChartId", "600", "350"); chart.setDataURL("<? echo $url; ?>"); chart.render("chartdiv"); </script> </td> </tr><tr> <td valign="top" class="text" align="center"> </td> </tr> <tr> </table> <?PHP $sql = @pg_query("Select respostaqse.cdrespostaqse, respostaqse.nmrespostaqse From candidato Inner join vestibularcurso on vestibularcurso.cdvestibularcurso = candidato.cdvestibularcurso Left join candidatorespostaqse on candidatorespostaqse.cdcandidato = candidato.cdcandidato Left join respostaqse on respostaqse.cdrespostaqse = candidatorespostaqse.cdrespostaqse Left join perguntaqse on perguntaqse.cdperguntaqse = respostaqse.cdperguntaqse Where vestibularcurso.cdvestibular = '".$cdvestibularqse."' AND perguntaqse.cdperguntaqse is not NULL and perguntaqse.tsdelete is null and candidato.tsdelete is null and candidato.tscancelado is null and perguntaqse.tsdelete is null and perguntaqse.cdperguntaqse = '".$cod_perguntaqse."' Group by respostaqse.cdrespostaqse, respostaqse.nmrespostaqse Order by respostaqse.cdrespostaqse, respostaqse.nmrespostaqse"); //-> Gerando imagens para a legenda $array_peg = array("<img border=\"0\" src=\"fusion/img/a.jpg\" width=\"19\" height=\"21\">", "<img border=\"0\" src=\"fusion/img/b.jpg\" width=\"19\" height=\"21\">", "<img border=\"0\" src=\"fusion/img/c.jpg\" width=\"19\" height=\"21\">", "<img border=\"0\" src=\"fusion/img/d.jpg\" width=\"19\" height=\"21\">", "<img border=\"0\" src=\"fusion/img/e.jpg\" width=\"19\" height=\"21\">", "<img border=\"0\" src=\"fusion/img/f.jpg\" width=\"19\" height=\"21\">", "<img border=\"0\" src=\"fusion/img/g.jpg\" width=\"19\" height=\"21\">", "<img border=\"0\" src=\"fusion/img/h.jpg\" width=\"19\" height=\"21\">", "<img border=\"0\" src=\"fusion/img/i.jpg\" width=\"19\" height=\"21\">", "<img border=\"0\" src=\"fusion/img/j.jpg\" width=\"19\" height=\"21\">", "<img border=\"0\" src=\"fusion/img/l.jpg\" width=\"19\" height=\"21\">", "<img border=\"0\" src=\"fusion/img/m.jpg\" width=\"19\" height=\"21\">", "<img border=\"0\" src=\"fusion/img/n.jpg\" width=\"19\" height=\"21\">", "<img border=\"0\" src=\"fusion/img/o.jpg\" width=\"19\" height=\"21\">", "<img border=\"0\" src=\"fusion/img/p.jpg\" width=\"19\" height=\"21\">", "<img border=\"0\" src=\"fusion/img/q.jpg\" width=\"19\" height=\"21\">", "<img border=\"0\" src=\"fusion/img/r.jpg\" width=\"19\" height=\"21\">", "<img border=\"0\" src=\"fusion/img/s.jpg\" width=\"19\" height=\"21\">", "<img border=\"0\" src=\"fusion/img/t.jpg\" width=\"19\" height=\"21\">"); //-< echo "<class=\"\"> Legenda:"."<br>\n"."<br>\n"; $linha = @pg_num_rows($sql); $i = 0; while ($i < $linha) { $nome = @pg_fetch_array($sql, $i, PGSQL_NUM); echo $array_peg[$i]." ".utf8_decode($nome[1])."<br>\n"; $i ++; } ?> </body> </html> neste arquivo grafico_qse_geral.php, eu recebo os parametros via get de um treeview e execulto a query abaixo que gera a legenda perfeitamente, porem eu prescizo passar esses mesmos parametros para o arquivo qse_geral.php, eu não posso usar sessão ai estava fazendo dessa forma: declarei uma variavel $url que recebe os parametros $url = "qse_geral.php?cdperguntaqse=".$cod_perguntaqse."&cdvestibularqse=".$cdvestibularqse;, e mando imprimir esta variavel dentro do javascript chart.setDataURL("<? echo $url; ?>");, quando é uma variavel so, funcionou, mas quando é mais de uma não funcionou. qse_geral.php include "../conexao/conexao.php"; include "../ft/ft_funcoes.php"; $cdvestibularqse = anti_injection_array($_GET ['cdvestibularqse']); $cod_perguntaqse = anti_injection_array($_GET['cdperguntaqse']); //-> pegando o nome da pergunta $nmpergunta = @pg_query("Select perguntaqse.cdperguntaqse, perguntaqse.nmperguntaqse From candidato Inner join vestibularcurso on vestibularcurso.cdvestibularcurso = candidato.cdvestibularcurso Left join candidatorespostaqse on candidatorespostaqse.cdcandidato = candidato.cdcandidato Left join respostaqse on respostaqse.cdrespostaqse = candidatorespostaqse.cdrespostaqse Left join perguntaqse on perguntaqse.cdperguntaqse = respostaqse.cdperguntaqse Where vestibularcurso.cdvestibular = '".$cdvestibularqse."' AND perguntaqse.cdperguntaqse is not NULL and perguntaqse.tsdelete is null and candidato.tsdelete is null and perguntaqse.cdperguntaqse = '".$cod_perguntaqse."' and candidato.tscancelado is null Group by perguntaqse.cdperguntaqse, perguntaqse.nmperguntaqse Order by perguntaqse.cdperguntaqse, perguntaqse.cdperguntaqse"); //-< //->pegando dados do banco $result = @pg_query("Select respostaqse.cdrespostaqse, respostaqse.nmrespostaqse, count(*) as qtd From candidato Inner join vestibularcurso on vestibularcurso.cdvestibularcurso = candidato.cdvestibularcurso Left join candidatorespostaqse on candidatorespostaqse.cdcandidato = candidato.cdcandidato Left join respostaqse on respostaqse.cdrespostaqse = candidatorespostaqse.cdrespostaqse Left join perguntaqse on perguntaqse.cdperguntaqse = respostaqse.cdperguntaqse Where vestibularcurso.cdvestibular = '".$cdvestibularqse."' AND perguntaqse.cdperguntaqse is not NULL and perguntaqse.tsdelete is null and candidato.tsdelete is null and candidato.tscancelado is null and perguntaqse.tsdelete is null and perguntaqse.cdperguntaqse = '".$cod_perguntaqse."' Group by respostaqse.cdrespostaqse, respostaqse.nmrespostaqse Order by respostaqse.cdrespostaqse, respostaqse.nmrespostaqse"); //-< $nmpergunta = @pg_fetch_array($nmpergunta); //-> 19 cores diferentes para exibir o grafico $array_cor = array("AFD8F8", "F6BD0F", "8BBA00", "FF8E46", "008E8E", "D64646", "8E468E", "588526", "B3AA00", "008ED6", "9D080D", "A186BE", "FFCCCC", "FFFF00", "FF33CC", "66FF33", "00CCFF", "FF9900", "FFFF99"); //-< //->resolvendo problema acentuação $titulo = $nmpergunta[1]; utf8_decode ($titulo); //-< //->Tirulo do grafico e das posições X e Y, e a rotação do grafico echo "<graph caption=\"$titulo\" xAxisName=\" \" yAxisName=\"Quantidade\" decimalPrecision=\"0\" formatNumberScale=\"0\" chartRightMargin=\"30\">"; $i = 0; while($dados = @pg_fetch_array($result)) { echo "<set name=\" \" value=\"".$dados['qtd']."\" color=\"".$array_cor[$i]."\" />"; $i ++; } echo "</graph>"; ?> o que esta acontecendo e que o primeiro arquivo não esta passando os parametros corretamente para o segunda, caso tenha uma ideia diferente ai to aberto a sugestões... vlw
-
<script type="text/javascript"> var chart = new FusionCharts("fusion/Charts/FCF_Bar2D.swf", "ChartId", "600", "350"); chart.setDataURL("qse_geral.php?cdpergunta=47."&cdvestibular=48"); chart.render("chartdiv"); </script> tenho que passar 2 parametro para outro arquivo, o qse_geral.php, fiz dessa forma conforme acima: chart.setDataURL("qse_geral.php?cdpergunta=47"."&cdvestibular=48");, porém não funcionou, quando passo somente 1 parametro funciona, mas quando é mais de um não. Alguém pode me da uma ajuda ai nessa???
-
Vlw ai pessoal, conseguir fazer depois de muinta consulta. <select name=\"rel\" id=\"rel\" class=\"select_2\" onChange=\"var num_formapagto = $('#formapagto').size(); if (this.value == 2 || this.value == 3 ) { if (num_formapagto == 1) { $('#formapagto').remove(); } } else { if (num_formapagto == 0) { $('#aux').before('<option value=formapagto id=formapagto>Forma de Pagamento</option>'); } } \"> <option value=\"\">Selecione uma opção</option> <option value=\"0\">Cancelados</option> <option value=\"1\">Confirmados</option> <option value=\"2\">Inscritos</option> <option value=\"3\">Inscritos / Confirmados</option>
-
tenho 2 select e gostaria de fazer o seguinte. dependendo da opção que o user selecionar neste primeiro select eu tenho que filtrar no 2 select. Ex. Se o user selecionar uma das 2 primeiras opção desse 1º select (Cancelados/Confirmados), no 2º select eu não posso exibir a opção Forma de Pagamento. E selecionar as 2 ultimas (Incritos/incritos-confitmados), ai tenho que exibir a opção forma de pagamento. <select name=\"rel\" id=\"rel\" class=\"select_2\" <option value=\"\">Selecione uma opção</option> <option value=\"0\">Cancelados</option> <option value=\"1\">Confirmados</option> <option value=\"2\">Inscritos</option> <option value=\"3\">Inscritos / Confirmados</option> </select> <select name=\"tipo\" id=\"tipo\" class=\"select_2\"> <option value=\"\">Selecione uma opção</option> <option value=\"formapagto\" id=\"formapagto\">Forma de Pagamento</option> <option value=\"gpsanguineo\">Grupo Sanguíneo</option> <option value=\"disciplina\">Língua Estrangeira</option> . . . <option value=\"sexo\">Sexo</option> </select> Deu pra entender, tentei usar onChange mas não deu certo. Funcionou somente no Firefox, não rodou no IE. Ficou assim. <tr> <td align=\"right\"> <label class=\"letra_1\"><b>* Status: </b></label> </td> <td align=\"left\"> <select name=\"rel\" id=\"rel\" class=\"select_2\" onChange=\"if (this.value == 0 || this.value == 1) { $('#formapagto').attr('disabled', false); $('#tipo0').attr('selected', true); } else { $('#formapagto').attr('disabled', true); $('#tipo0').attr('selected', true); }\"> <option value=\"\">Selecione uma opção</option> <option value=\"0\">Cancelados</option> <option value=\"1\">Confirmados</option> <option value=\"2\">Inscritos</option> <option value=\"3\">Inscritos / Confirmados</option> </select> <img name=\"imagem_erro\" id=\"imagem_erro_rel\" class=\"imagem_erro\" src=\"imagens/erro.gif\"> </td> </tr> <tr> <td align=\"right\"> <label class=\"letra_1\"><b>* Tipo: </b></label> </td> <td align=\"left\"> <select name=\"tipo\" id=\"tipo\" class=\"select_2\"> <option value=\"\" id=\"tipo0\">Selecione uma opção</option> = <option value=\"cidade\">Cidade</option> <option value=\"cor\">Cor</option> <option value=\"curso\">Curso</option> <option value=\"escola\">Escola</option> <option value=\"estadocivil\">Estado Civíl</option> <option value=\"formapagto\" id=\"formapagto\">Forma de Pagamento</option> <option value=\"gpsanguineo\">Grupo Sanguíneo</option> <option value=\"disciplina\">Língua Estrangeira</option> <option value=\"localinscricao\">Local de Inscrição</option> <option value=\"orgaoemissor\">Órgao Emissor</option> <option value=\"nacionalidade\">País</option> <option value=\"raca\">Raça</option> <option value=\"religiao\">Religião</option> <option value=\"sexo\">Sexo</option> </select> <img name=\"imagem_erro\" id=\"imagem_erro_tipo\" class=\"imagem_erro\" src=\"imagens/erro.gif\"> </td> </tr> aguém pode me da uma ajudar nessa
-
Para fazer isso eu uso uma Biblioteca chamada Fusion Charts, os gráficos ficam bem interativos. Caso não conheça essa biblioteca, olhe este artigo http://imasters.uol.com.br/artigo/8350/php..._fusion_charts/ Qualquer coisa se não conseguir post o codigo ai.
-
achei numa pesquisa no google um codigo quase do jeito que prescizava, fiz pequenas alterações.. vlw ai pela ajuda de todos..
-
Pesquisei aqui no forum e não achei uma validação que me atenda. Por isso estou postando. Tenho essa tela: Estava precisando validar se a data que o cara digitou existe, validando ano bi sexto, e tb, como tenho data inicial e data final conforme na imagem acima, tenho que verificar se o usuário digitou a data inicial menor que a data final. E tb tem que funconar em navegadores diferentes, ainda num sei como que faz isso, mas todos os scripts que faço so funciona no IE.. Alguém tem algo assim que possa me ajudar???
-
eu havia pensando em fazer de outra forma, mas vou seguir sua logica, acho que vai fufar melhor do que a especificação que veio pra mim fazer. vou ir fazendo aqui na medida que surgi as duvidas vou postando aqui. pode fechar o tópico, que fufou aqui beleza. vlw pela dica
-
E o seguinte, tenho essa tela: gero um relatorio pdf com ela, porém o campo data não é obrigatorio. A logica para fazer isso é tranquilo. o que não estou conseguindo fazer é a query, pois o usuario, pode digitar a data inicial somente ou a data final ou nenhuma delas.. se o usuario digitar todas ou nenhuma delas, esta fufanfo beleza, agora não to conseguindo fazer se ele digitar somente a data inicial ou somente a data final. Select to_char(candidato.dtinscricao,'DD/MM/YYYY') as data, count(dtinscricao) as qtinscritos From candidato Inner join vestibularcurso on vestibularcurso.cdvestibularcurso = candidato.cdvestibularcurso Where vestibularcurso.cdvestibular = 47 and candidato.nmcidade = 'Ipatinga' and candidato.dtinscricao BETWEEN $dtinicial AND $dtfinal and candidato.tsdelete is NULL and candidato.dtinscricao is NOT NULL Group by candidato.dtinscricao Order by candidato.dtinscricao o problema e a 6º linha da query, eu coloquei ela assim so para visualização, pois meu codigo que monta a query deacordo com o que o user selecionar. Deu pra entender? segue parte do codigo.... // Tratando quando o usuário não informa a data... if ($dtinicial == "") { $cond_data = "??????????????"; } if ($dtfinal == "") { $cond_data = "??????????????"; } if ($dtinicial == "" || $dtfinal == "") { $cond_data = ""; } else { $cond_data = "candidato.dtinscricao BETWEEN ".$dtinicial." and ".$dtfinal." and"; } //----------------------------------------------------------------------------------------------- if ($tipo == "cor" || $tipo == "gpsanguineo" || $tipo == "raca" || $tipo == "religiao") { $cons_candidato = "Select ".$tipo.".cd".$tipo.", (CASE when nm".$tipo." is null then 'Não Responderam' else nm".$tipo." end) as ".$tipo." From candidato Inner join vestibularcurso on vestibularcurso.cdvestibularcurso = candidato.cdvestibularcurso Left join ".$tipo." on ".$tipo.".cd".$tipo." = candidato.cd".$tipo." Where ".$cond_data." candidato.tsdelete is NULL and vestibularcurso.tsdelete is NULL Group by ".$tipo.".cd".$tipo.", ".$tipo.".nm".$tipo." Order by ".$tipo.".nm".$tipo.""; }
-
vwl Denis, tinha me esquecido desse detalhe, vlw cara, fufo legal agora.. explodir o dados que o user digitava e convertir para o formato '2008-05-27' , deu certo.. vlw
-
tenho a query abaixo e esta funcionando perfeitamente, ela me retorna ago do tipo: DATA QTinscritos 16/06/2008 10 18/06/2008 15 20/06/2008 08 22/06/2008 60 23/06/2008 80 24/06/2008 09 26/06/2008 22 27/06/2008 60 Select to_char(candidato.dtinscricao,'DD/MM/YYYY') as data, count(dtinscricao) as qtinscritos From candidato Inner join vestibularcurso on vestibularcurso.cdvestibularcurso = candidato.cdvestibularcurso Where vestibularcurso.cdvestibular = 47 and candidato.nmcidade = 'Ipatinga' and candidato.tsdelete is NULL and candidato.dtinscricao is NOT NULL Order by candidato.dtinscricao o meu problema e o seguinte, prescizo passar parametro para reduzir a qtd de datas tipo exibir somente da data 16/06/2008 até a data 20/06/2008. Deu pra entender???? tentei usar candidato.dtinscricao BETWEEN '24/05/2008' AND '27/05/2008' and, mas num deu certo
-
vlw ai pessoal, consegui aqui sem querer... dei um enter sem querer na linha e funcionou, no final da linha.. vlw pela ajuda ai pessoal... $arquivo_text .= "$dados[nmcandidato],$dados[dsendereco],$dados[nuendereco],$dados[dscomplemento],$dados[nmbairro],$dados[nucep],$dados[nmcidade],$dados[sguf]; ";
-
É o seguinte; faço uma consulta no banco, e os dados que me retornam e gerado um arquivo txt, porém esta gerando sequencial, tipo nome,endereçocompleto,cidade,esatado;nome,endereçocompleto,cidade,esatado; eu presciso que de uma quebra de linha tipo: nome,endereçocompleto,cidade,esatado; nome,endereçocompleto,cidade,esatado; como faço isso, tentei "\n" e "%n", mas num deu.. alguém pode me ajudar nessa ai? <? include "../conexao/conexao.php"; $csv = @pg_query("Select candidato.nmcandidato, candidato.dsendereco, candidato.nuendereco, candidato.dscomplemento, candidato.nmbairro, candidato.nucep, candidato.nmcidade, uf.sguf From candidato Inner join vestibularcurso on vestibularcurso.cdvestibularcurso = candidato.cdvestibularcurso left join cep on candidato.cdcep = cep.cdcep left join bairro on bairro.cdbairro = cep.cdbairro left join cidade on cidade.cdcidade = bairro.cdcidade left join uf on uf.cduf = candidato.cduf where candidato.tsdelete is null and candidato.tscancelado is null and vestibularcurso.cdvestibular = 47 Order by candidato.nmcandidato"); $arquivo_text = ''; while ($datas = @pg_fetch_array($csv)) { $arquivo_text .= "$datas[nmcandidato],$datas[dsendereco],$datas[nuendereco],$datas[dscomplemento],$datas[nmbairro],$datas[nucep],$datas[nmcidade],$datas[sguf];"; } $exte = (isset($cvs)) ? '.cvs' : '.txt'; $abbre = fopen(Telegrama.$exte, "w+"); fwrite($abbre, $arquivo_text); fclose($abbre); echo "Arquivo Criado"; ?>
-
como faço para pegar um valor qualquer independente da quantidade e jogar dentro de um array acresentando 0 a sua esquerda até chegar a 10 casas. Exemplo tenho o numero 1081 -> dentro do array queria que ficasse assim $numero = array("0", "0", "0", "0", "0", "0", "1", "0", "8", "1"); ou seja 0000001081. outro exemplo -> 10 -> dentro do array 0000000010. eu até conseguir fazer aqui, mas num é num array, ai tentei mudar para o array, mas não to conseguindo $x = $nome_gabarito[0]; $num = 9 - strlen($x); for ($i = 0; $i < $num; $i ++) { $y = "0"; } $y.$x; deu para enteder?
-
Vlw ai pessoal... conseguir resolver aqui.. $cons_curso = @pg_query("SELECT nmcurso FROM curso WHERE tsdelete is null ORDER BY nmcurso ASC"); $linha_curso = @pg_num_rows($cons_curso); $i = 0; while ($i < $linha_curso){ $nome_curso = pg_fetch_array($cons_curso, $i, PGSQL_NUM); echo $nome_curso[0] . " <br>\n"; $i ++; }