Ir para conteúdo
Fórum Script Brasil

Romero Dias

Membros
  • Total de itens

    591
  • Registro em

  • Última visita

Tudo que Romero Dias postou

  1. Romero Dias

    Tabela dinamica

    Fiz um exemplo aqui, olha se resolve seu problema. O exemplo consiste em recuperar as colunas através dos dados vindos do banco de dados. E então listar os dados destas colunas. <?php // Simulação de dados vindo do banco de dados $arrDados = array( array( 'COLUNA_1' => 'VALOR LINHA 1', 'COLUNA_2' => 'VALOR LINHA 1', 'COLUNA_3' => 'VALOR LINHA 1', 'COLUNA_4' => 'VALOR LINHA 1' ), array( 'COLUNA_1' => 'VALOR LINHA 2', 'COLUNA_2' => 'VALOR LINHA 2', 'COLUNA_3' => 'VALOR LINHA 2', 'COLUNA_4' => 'VALOR LINHA 2' ), array( 'COLUNA_1' => 'VALOR LINHA 3', 'COLUNA_2' => 'VALOR LINHA 3', 'COLUNA_3' => 'VALOR LINHA 3', 'COLUNA_4' => 'VALOR LINHA 3' ) ); //Recupara o nome das coluas $arrColunasTabela = array_keys($arrDados[0]); echo "<table border='1'>"; // Imprime as colunas echo "<tr>"; foreach($arrColunasTabela as $arrColunas) { echo "<td>" . $arrColunas . "</td>"; } echo "</tr>"; // Imprime os dados das colunas foreach($arrDados as $arrLinhas) { echo "<tr>"; foreach($arrColunasTabela as $arrColunas) { echo "<td>" . $arrLinhas[$arrColunas] . "</td>"; } echo "</tr>"; } echo "</table>";
  2. Romero Dias

    NÃO SAIO DO LUGAR

    Deve haver algum script PHP que configura a conexão com banco de dados. você já verificou se este arquivo está correto? Faça um backup da base que esta funcionando e restaure no seu servidor local. De qualquer forma, a mensagem de erro é essencial. Tente inserir o seguinte trecho de código em seus scripts, essa função irá exibir o erro. <?php error_reporting(E_ALL | E_STRICT); ?>
  3. Tenta assim echo "<td align='left'><?php echo substr($cp['obs1'],0,30); ?></td>";
  4. Na estrutura while, armazeno no array $arrDados os valores retornados pelo mssql_query. Se você imprmir o array na tela, você vai ter uma noção do que aconteceu. Tenta fazer o seguinte: <?php $arrDados = array(); $efetua_busca = mssql_query("SELECT * FROM msg_mensagens WHERE login LIKE '$login_ses'"); while($re = mssql_fetch_array($efetua_busca)) { //armazena no array, os dados da consulta $arrDados[] = $re; } echo '<pre>'; print_r($arrDados); echo '</pre>'; ?> Uma boa prática é consultar o manual: php.net
  5. No formulário, o usuário terá que informar o Mes e Ano desejado. Só não entendi essa linha <?php if (!(strcmp(1, $_SESSION['']))) {echo "selected=\"selected\"";} ?> Segue o exemplo: index.php <form id="form1" name="form1" method="post" action="relatorio.php"> Mes:<br/> <select name="select" id="select"> <option value="1" <?php if (!(strcmp(1, $_SESSION['']))) {echo "selected=\"selected\"";} ?>>Janeiro</option> <option value="2" <?php if (!(strcmp(2, $_SESSION['']))) {echo "selected=\"selected\"";} ?>>Fevereiro</option> <option value="3" <?php if (!(strcmp(3, $_SESSION['']))) {echo "selected=\"selected\"";} ?>>Março</option> <option value="4" <?php if (!(strcmp(4, $_SESSION['']))) {echo "selected=\"selected\"";} ?>>Abril</option> <option value="5" <?php if (!(strcmp(5, $_SESSION['']))) {echo "selected=\"selected\"";} ?>>Maio</option> <option value="6" <?php if (!(strcmp(6, $_SESSION['']))) {echo "selected=\"selected\"";} ?>>Junho</option> <option value="7" <?php if (!(strcmp(7, $_SESSION['']))) {echo "selected=\"selected\"";} ?>>Julho</option> <option value="8" <?php if (!(strcmp(8, $_SESSION['']))) {echo "selected=\"selected\"";} ?>>Agosto</option> <option value="9" <?php if (!(strcmp(9, $_SESSION['']))) {echo "selected=\"selected\"";} ?>>Setembro</option> <option value="10" <?php if (!(strcmp(10, $_SESSION['']))) {echo "selected=\"selected\"";} ?>>Outubro</option> <option value="11" <?php if (!(strcmp(11, $_SESSION['']))) {echo "selected=\"selected\"";} ?>>Novembro</option> <option value="12" <?php if (!(strcmp(12, $_SESSION['']))) {echo "selected=\"selected\"";} ?>>Dezembro</option> </select> <br/> Ano: <br/> <INPUT TYPE='text' NAME='ano' VALUE='' /> <br/><br/> <INPUT TYPE='submit' VALUE='Ok'/> </form> relatorio.php $mes = (int)$_POST['select']; $ano = (int)$_POST['ano']; $query = mssql_query("SELECT SUM (valor) as soma FROM conta_mes WHERE month(data) = $mes and year(data) = $ano"); $row = mssql_fetch_array($query); echo 'Valor: ' . $row[0];
  6. Olha se assim resolve: <?php $arrDados = array(); $efetua_busca = mssql_query("SELECT * FROM msg_mensagens WHERE login LIKE '$login_ses'"); while($re = mssql_fetch_array($efetua_busca)) { $arrDados[] = $re; } echo $arrDados[0]['id'] . '<br/>'; echo $arrDados[1]['id'] . '<br/>'; ?>
  7. Bruno, Como o ESerra disse, você pode passar o mës e ano desejado, dessa forma. SELECT SUM (valor) as soma FROM conta_mes WHERE month(data) = 5 and year(data) = 2011
  8. Rodrigo, Aqui nesse trecho, é executado os três metodos <?php include("class.busca.php"); if($_GET['acao'] == "buscar") { $busca = new busca($_POST['palavra']); $busca->pesquisa(); $busca->totalResultados(); $busca->imprimeResultados(); } ?> O método pesquisa(); já faz a conexão com o banco de dados. Os demais métodos não precisão executar $this->cCon(); Olha se funciona assim: function totalResultados() { $this->total = mysql_num_rows($this->sql); } function imprimeResultados(){ echo "Resultados encontrados: " . $this->total; echo "<br><br>"; while($resultados = mysql_fetch_array($this->sql)) { $novo = "<strong><span style=\"color: #FF0000;\">" . $this->k . "</span></strong>"; if(eregi($this->k,$resultados['resposta'])){ $resultados['resposta'] = str_replace($this->k,$novo,$resultados['resposta']); } echo $resultados['resposta']; echo "<br>-------------------------------------------------------------<br>"; } } }
  9. wilfrank, Fiz um exemplo aqui que deve resolver o problema. Faça um teste. <?php $nInicial = 1; $nFinal = 50; $contador = 0; $arrNumeros = array(); foreach(range($nInicial,$nFinal) as $num) { $contador++; switch($contador%4) { case 1 : case 2 : //Guarda o número desejado $arrNumeros[] = $num; } } //Imprime a sequencia de números echo implode(',',$arrNumeros); ?>
  10. Luiz, Acredito que gravar os dados em sessão seria uma boa idéia. Com session, você previne qualquer perda de dados, caso o usuário executar um refresh na página. Em javascript você terá que considerar que o usuário poderá abrir seu formulário em qualquer browser.
  11. A solução mais simples que consigo enxergar, seria, criar 3 tabelas: grupo (armazena todos os grupos)usuario (armazena todos os usuários)grupo_usuario (armazena os usuários que pertencem aos grupos) Segue abaixo o script para criar os tabelas. Presumo que esta utilizando MySQL. CREATE TABLE grupo ( id INT NOT NULL AUTO_INCREMENT, nome VARCHAR NULL, PRIMARY KEY(id) ) TYPE=InnoDB; CREATE TABLE grupo_usuario ( id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, usuario_id INTEGER UNSIGNED NOT NULL, grupo_id INT NOT NULL, PRIMARY KEY(id), INDEX grupo_usuario_FKIndex1(grupo_id), INDEX grupo_usuario_FKIndex2(usuario_id) ) TYPE=InnoDB; CREATE TABLE usuario ( id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, nome VARCHAR NULL, PRIMARY KEY(id) ) TYPE=InnoDB;
  12. Michel. Acredito que a idéia do FIT é o ideal! Pois, o custo da manutenção vai ficar muito alto. Se criar vários bancos. Imagine quando você alterar uma tabela. Vai ter que alterar em todos os bancos. Minha sugestão é: Em suas tabelas, acrescente um atributo id_cliente por exemplo. E então relacione o usuário do sistema a um cliente. Quando o usuário logar no sistema será listado somente os dados do cliente relacionado ao usuário. você pode armazenar na sessão o id_cliente relacionado ao usuário. Assim vai facilitar na hora de exibir os dados pertinentes ao cliente. Fica ai a dica!
  13. Te aconcelho a usar uma função javascript que dispara um alert. Ai dentro do alert você faz a quebra de linha com o \n. <script> function msg() { alert('Primeira Linha \nSegunda Linha'); } </script> <?php echo "<a onclick=\"msg();\">A</a>"; ?>
  14. tente assim. echo "<a onclick=\"alert('ASDF');\">A</a>";
  15. Realmente, bastante estranho. Qual a versão do PHP? Use uma função para fazer a conversão da quebra de linha em tag HTML function NlToBr($inString) { return preg_replace("%\n%", "<br>", $inString); } $textarea = NlToBr($_POST['textarea']); echo $textarea;
  16. Amigo, Utilizo o nl2br(); e não tive problemas. Posta seu código ai! falou
  17. No diretório dos arquivos e log, crie um arquivo com o nome: .htaccess Com o seguinte conteúdo: #Não permite listagem do diretório Options -Indexes Pesquise um pouco sobre htaccess para ver ter uma idéia.
  18. Romero Dias

    Sistema de comentarios

    Tamo as ordens! falou
  19. Romero Dias

    Sistema de comentarios

    Street, Fiz um exemplo aqui. Olhe se este script te ajuda. $comentario = " Linha -" . date('H:i:s'); $conteudoArquivo = file_get_contents('arquivo.html'); //recupera o conteudo do arquivo $abri = fopen('arquivo.html','w'); //abre o arquivo apagando o conteudo $escreve = fwrite($abri,$comentario . $conteudoArquivo); //escrevendo o novo conteudo fclose($abri);
  20. Marlon, Entendi que você precisa exibir um rank com os usuários que tiveram mais de 10 mensagens postadas. Olhe se essa query te ajuda. SELECT usr_id, COUNT(usr_id) AS QTD_POST FROM ma_forum_comentarios GROUP BY usr_id --Agrupa os dados pelo id de usuários HAVING COUNT(usr_id) > 10 --Exibe somente os ids que postaram mais de 10 menssagens
  21. Sunas, você pode melhorar seu código fazendo validações para ter certeza que os dados foram informados corretamente, por exemplo: $usuario = $_POST['usuario']; $total = $_POST['total']; $dados_gerais = $_POST['dados_gerais']; if($_GET['acao'] == "editar") { // arqui você certifica que realmente vai receber um número inteiro $id = (int)$_GET['$id']; if($id) { $sql_update = mysql_query("UPDATE dados SET usuario = '$usuario', total = '$total', dados_gerais = '$dados_gerais' WHERE id = $id"); header("location: exibir_dados.php"); } else { echo "O id não foi informado"; } } if($_GET['acao'] == "excluir") { $id = (int)$_GET['$id']; //verificar se id realmente foi passado via GET if($id) { //aqui estou considerando que o atributo id é do tipo int. $sql_update = mysql_query("DELETE FROM dados WHERE id = $id"); header("location: exibir_dados.php"); } else { echo "O id não foi informado"; } } OU você pode fazer um debug em seu código, imprimindo a query que será executada no banco. Exemplo: Desta forma você vai ver o que realmente está acontecendo, se os dados estão sendo informados corretamente para execução da query. if($_GET['acao'] == "editar") { $id = $_GET['$id']; //$sql_update = mysql_query("UPDATE dados SET usuario = '$usuario', total = '$total', dados_gerais = '$dados_gerais' WHERE id= '$id'"); echo "UPDATE dados SET usuario = '$usuario', total = '$total', dados_gerais = '$dados_gerais' WHERE id= '$id'"; //header("location: exibir_dados.php"); } if($_GET['acao'] == "excluir") { $id = $_GET['$id']; //$sql_update = mysql_query("DELETE FROM dados WHERE id= '$id'"); echo "DELETE FROM dados WHERE id= '$id'"; //header("location: exibir_dados.php"); }
  22. Guilherme, Olha se este código te ajuda. //cria um array com os dados para impressão $arrData = array(1,2,3,4,5,6,7,8,9,10); //recupera a quantidade de elementos dentro do array $qtdReg = count($arrData); //contador $i = 0; while($i != $qtdReg) { echo $arrData[$i]; if($i%3 == 2) { echo "<br/>"; } $i++; } Será impresso na tela o seguinte resultado: 123 456 789 10
  23. Romero Dias

    Dúvida

    você pode fazer dessa forma, segue exemplo: $count = 0; while($row_emb = mysql_fetch_array($sql_emb)) { ?> <td><center><img title='<?=utf8_encode($row_emb[desc_femb])?>' src='<?=$row_emb[img_femb]?>' border='0' /></center></td> <?php if($count%3 == 2) { echo '<br/>'; } $count++; }
  24. Fala Parceiro, O que você fez no seu script foi uma requisição assíncrona, utilizando a biblioteca jQuery. Estude sobre Requisições Assíncronas. Segue um link bem interessante,Clique Aqui. Com esse link você vai entender como funciona essas requisições. Mas o que você precisa é enviar uma mensagem para o usuário? Utilize o alert(); do javascript. Abraço
  25. Amigo, Tinha me esquecido de definir o parâmetro na função deleta_msg(id); , o que deve ter te confundido um pouco. A função JavaScript não precisa ficar dentro do código PHP, você define a função no <head> da arquivo html Faça um teste ai! <html> <head> <script> function deleta_msg(id) { $.ajax({ url : 'deleta_msg.php', data : { id : id }, type : 'post', success : function() { alert('Registro excluido com sucesso!'); } }); } </script> </head> <body> <?php while($res = mssql_fetch_array($efetua_busca)) { if($a == 0) { $cor = "#999999"; $a = 1; } else { $cor = "#CCCCCC"; $a = 0; } $de = $res['de']; $assunto = $res['assunto']; $data = $res['data_envio']; $hora = $res['hora_envio']; $id = $res['id']; echo " <tr> <td bgcolor=$cor onclick='location.href=$id'>$de</td> <td bgcolor=$cor onclick='location.href=$id'>$assunto</td> <td bgcolor=$cor onclick='location.href=$id'>$data - $hora</td> <td bgcolor=$cor><a href='#' onclick='deleta_msg($id);'><img src='../../imagens/no.png' width='14' height='15'/></a> </td></tr>"; } echo "</table>"; ?> </body> </html>
×
×
  • Criar Novo...