Ir para conteúdo
Fórum Script Brasil

wash

Membros
  • Total de itens

    400
  • Registro em

  • Última visita

Tudo que wash postou

  1. wash

    Erro de variavel

    Olá! supondo que a linha 71 seja essa: <?php foreach ($lista_tarefas as $tarefa): echo "Tarefa: . $tarefa" ?> a mensagem está dizendo que você está tentando usar a variável $lista_tarefas, mas ela não existe (ainda não foi declarada/criada)!
  2. wash

    Problema com codigo PHP

    Certifique-se de que a versão do php é anterior a 7. (a partir da versão 7 do php, não funcionam mais as extensões mysql_*) no topo do arquivo, habilite a exibição de erros com error_reporting(E_ALL);
  3. Olá! Para conseguir montar o layout você vai precisar de alguns elementos invisíveis pra "segurar" essa estrutura. Há algumas maneiras possíveis de se resolver esse layout. Segue sugestão: Os elementos com borda traçada em magenta, serão invisíveis e não terão espaço <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Layout</title> <style type="text/css"> html *{ box-sizing: border-box; } html, body{ margin:0; background-color: #ddd; } main{ width: 100%; max-width: 800px; min-width: 320px; position:relative; margin:0 auto; background-color: #fafafa; box-shadow:1px 1px 3px #333; padding:12px; } main *{ border-radius:4px; vertical-align: top; clear: left; min-height: 50px; } header, footer, aside, .content div{ border:1px solid #000; padding:12px; } .inline > *{ float:left; width: 50%; clear: right; height: 160px; } .inline .content{ width:70%; } .inline .content > div{ height:100px; } .inline aside{ height:400px; width:30%; } </style> </head> <body> <main> <header></header> <div class="content inline"> <div></div> <div></div> </div> <div class="inline"> <div class="content"> <div></div> <div></div> <div></div> <div></div> </div> <aside></aside> </div> <footer></footer> </main> </body> </html>
  4. Com o .htaccess daquela forma, se o que estiver na url não for pasta nem arquivo, será entregue ao arquivo index.php Você pega o que foi entregue ao arquivo index.php com a variável de servidor $_SERVER['QUERY_STRING'] O router(roteador) você deve criar para definir qual arquivo será chamado e que parte da url será o slug, você pode criá-lo em .php mesmo
  5. Olá! O sr. vai precisar usar um arquivo(.htaccess) de configuração no apache/nginx com conteúdo +- assim: RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?$1 [L] Aí é só criar um router e definir que parte da url é a view e o slug
  6. Percebi que estás a executar a mesma query várias vezes, apenas uma única execução é necessária Tá misturando muita lógica com apresentação
  7. Vou tentar ajudar. Pelo que vi nos exemplos em http://php.net/manual/pt_BR/function.range.php O primeiro vai servir muito bem: O exemplo #1, mostra um intervalo de 0 até 12, mas você precisa do intervalo de 1 até 3000; No lugar do zero, coloque 1, e no lugar do doze, coloque 3000. Assim: <?php // array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, ..., 3000) foreach (range(1, 3000) as $number) { // No exemplo, nesta posição era exibido apenas o valor de $number, troque pela sua hash, assim: echo hash('sha512', $number).'<br>'; // E concatente com a quebra de linha }
  8. wash

    agenda

    Olá! Qual é o erro que aparece? Sempre que executar uma query, verifique se ocorreu alguma falha: $sql = mysql_query("INSERT INTO teste (id,hora,data) VALUES('','$hora','$data')") or die(mysql_error());
  9. Olá! Defina o timezone assim: date_default_timezone_set('America/Sao_Paulo'); Busque a hora_inicial e a hora_final do database antes de exibir o formulário de login Você pode exibir o formulário de login apenas se estiver dentro do horário Pode desabilitar os inputs do login E ainda, ao receber dados postados, se não estiver dentro do horário, mostre a tela de login sem processar os dados
  10. Olá! Creio que você vai precisar resolver com apenas uma query, fazendo alguns joins Um único fetch E algum tratramento do objeto/array resultante
  11. Olá! Baixei aqui. O sr. tem certeza de que está funcionando? E não entendi qual é a questão.
  12. Olá, segue sugestão: <?php // variáveis para conexão com banco de dados ONLINE $host = 'aws.mysql.com.br'; $user = 'admin@admin.com'; $password = 'admin'; $Database = 'controle_frotas'; // verificar se está em LOCALHOST if (preg_match('/^(localhost|was)/', $_SERVER['SERVER_NAME'])) { // variáveis para conexão em LOCALHOST $host = 'localhost'; // define o host do banco de dados $user = 'root'; // user do banco de dados $password = ''; // senha do banco de dados $Database = 'controle_frotas'; // nome do banco de dados } // estabelecer conexão com o mysql $sqli = new mysqli($host, $user, $password); // verificar se houve erro na conexão if ($sqli->connect_error) { // se houve erro, mostra erro na tela die("<p><b>Erro!</b> Falha na conexão:<br>$sqli->connect_error</p>"); } // alterar o tipo de codificação da conexão com o banco de dados, para utf8 if (!$sqli->set_charset('utf8')) { die("<p>O charset não é utf8: $sqli->error</p>"); } // se não abrir o banco de dados para trabalhar if (!$sqli->select_db($Database)) { die("<p class='error'><b>Erro!</b> Não foi possível abrir o banco de dados: <b>$Database</b><br>$sqli->error</p>"); } <?php include_once 'Models/Connect.php'; if (sizeof($_POST)) { // mostrar o que foi postado na tela: echo '<pre>Foi postado:<br>'; print_r($_POST); echo '</pre>'; $campos = implode(', ', array_keys($_POST)); $valores = implode("', '", $_POST); // montar a query de inserção $query = "INSERT INTO cadastro ($campos) values ('$valores')"; // mostrar a query montada na tela: echo '<pre>Query:<br>'; print_r($query); echo '</pre>'; // executar a query: $sqli->query($query); // verificar se houve alguma falha na execução da query if ($sqli->error) { echo '<p><b>Falha ao executar a query</b><br>' . $sqli->error.'</p>'; } else { echo '<p>Inserção efetuada com sucesso!</p>'; } } else { echo '<p><b>Warning!</b> Nada foi postado</p>'; } <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Controle de Frotas</title> <link rel="stylesheet" href="_css/estilo.css"> <script type="text/javascript" src="js/validacao.js"></script> </head> <body> <div class="container"> <nav> <ul class="menu"> <a href="index.php"><li>Cadastro</li></a> <a href="consultas.php"><li>Consultas</li></a> </ul> </nav> <section> <h1>Cadastro de Veiculos e Hora</h1> <form method="post" action="processa.php"> <br><br> Nome Motorista<br> <input type="text" name="nome" class="campo" maxlength="40" required autofocus><br> Tipo de Veiculo<br> <input type="text" name="tipo_veiculo" class="campo" maxlength="40" required><br> Placa do Veiculo<br> <input type="text" name="placa_veiculo" class="campo" maxlength="7" required><br> Data<br> <input type="date" name="data_cadastro" class="campo" required><br> Hora Inicial<br> <input type="time" name="hora_ini" class="campo" required><br> Hora Final<br> <input type="time" name="hora_fim" class="campo" required><br> Observação<br> <textarea name="observacao" class="observacao" id="texto"></textarea><br> <input type="submit" value="Cadastrar" class="btn" > <input type="reset" value="Limpar" class="btn"> </form> </section> </div> </body> </html> drop schema if exists controle_frotas; create schema controle_frotas; use controle_frotas; CREATE TABLE cadastro ( codigo INT(11) AUTO_INCREMENT PRIMARY KEY, nome VARCHAR(40) NOT NULL, tipo_veiculo VARCHAR(50) NOT NULL, placa_veiculo VARCHAR(7) unique, data_cadastro DATE NOT NULL, hora_ini TIME NOT NULL, hora_fim TIME NOT NULL, observacao VARCHAR(255) NULL DEFAULT NULL )ENGINE=MyISAM; Só lembrando que os dados postados precisam ser tratados, antes de enviá-los ao banco de dados
  13. Olá! Você pode fazer alguns testes no próprio script pra descobrir onde ocorre alguma falha. Teste assim e veja o que acontece: <?php // ativa a exibição de possíveis falhas error_reporting(E_ALL); // == definição de variáveis: == // $date = date('H:i, jS F'); // se algo foi postado if (sizeof($_POST)) { // define nomes de variaveis abreviados $tireqty = $_POST['tireqty']; $oilqty = $_POST['oilqty']; $sparkqty = $_POST['sparkqty']; $address = $_POST['address']; $totalqty = $tireqty + $oilqty + $sparkqty; } else { // caso nada tenha sido postado, exibe erro na tela: die('<p><b>ERRO!</b> Nada foi postado!</p>'); } // verificar se existe a superglobal $_SERVER_VARS: if (isset($_SERVER_VARS['DOCUMENT_ROOT'])) { $DOCUMENT_ROOT = $_SERVER_VARS['DOCUMENT_ROOT']; } else { // se não existir a variável, exibe erro na tela: die('<p><b>ERRO!</b> A variável <b>$_SERVER_VARS[\'DOCUMENT_ROOT\']</b> não existe!</p>'); } ?> <!doctype html> <html> <head> <meta charset="utf-8"> <title>Bob's auto Parts - Order Results</title> </head> <body> <h1>Bob's Auto Parts</h1> <p>Pedido processado.</p> <?= $date; ?> <h2>Resultado pedido</h2> <p>A sua encomenda é a seguinte: </p> <?php if ($totalqty == 0) { echo '<font color=red size=5> Você não selecionou nenhum item na página anterior!<br> </font>'; } else { if ($tireqty > 0) echo $tireqty . ' pneus<br>'; if ($oilqty > 0) echo $oilqty . ' litros de óleo<br>'; if ($sparkqty > 0) echo $sparkqty . ' velas de ignição<br>'; } if ($tireqty < 10) $discount = 0; elseif ($tireqty >= 10 && $tireqty <= 49) $discount = 5; elseif ($tireqty >= 50 && $tireqty <= 99) $discount = 10; elseif ($tireqty >= 100) $discount = 15; echo 'Total de itens pedido: ' . $totalqty . '<br>'; $totalamount = 0.00; define('TIREPRICE', 100 - $discount); define('OILPRICE', 10); define('SPARKPRICE', 4); $totalamount = $tireqty * TIREPRICE + $oilqty * OILPRICE + $sparkqty * SPARKPRICE; echo 'Subtotal: R$' . number_format($totalamount, 2) . '<br>'; $taxrate = 0.10; // o imposto de vendas local é 10% $totalamount = $totalamount * (1 + $taxrate); echo 'Total incluindo impostos: $' . number_format($totalamount, 2) . '<br>'; echo 'Entregar em: ' . $address . '<br>'; // verificar se a variável $find existe: if (isset($find)) { switch ($find) { case 'a' : echo '<p>Cliente Regular.</p>'; break; case 'b' : echo '<p>Cliente Obtido por propaganda de TV.</p>'; break; case 'c' : echo '<p>Cliente Lista Telefônica.</p>'; break; case 'd' : echo '<p>Cliente Boca a Boca.</p>'; break; default : echo '<p>Não sabemos como o Cliente nos encontrou.</p>'; break; } } else { // caso a variável $find não exista: die('<p><b>ERRO!</b> A variável <b>$find</b> não existe!</p>'); } $outputstring = $date . "\t" . $tireqty . " pneus \t" . $oilqty . " Óleo\t" . $sparkqty . " Velas de Ignição\t\R$" . $totalamount . "\t" . $address . "\n"; // pasta onde o arquivo txt será salvo $folder = $DOCUMENT_ROOT . '/../orders/'; // verificar se a pastinha existe: if (is_dir($folder)) { // abre o arquivo para anexar fopen($folder . 'orders.txt', 'ab'); if (!$fp) { die('<p><b>Seu pedido não poderá ser processado nesse momento.</b><br>Por favor, tente novamente mais tarde.</p>'); } fwrite($fp, $outputstring, strlen($outputstring)); fclose($fp); echo '<p>Pedido Gravado!</p>'; } else { die("<p><b>ERRO!</b> A pastinha <b>$folder</b>, não existe!</p>"); } ?> </body> </html>
  14. wash

    Organizando Loop

    //itere os resultados +- dessa maneira: while ($webinar = $result->fetch_assoc()) { $dados[] = $webinar; } // quebre o array em grupos de 3, assim: $quebrado_de_3_em_3 = array_chunk($dados, 3); // veja o resultado na tela, assim: echo '<pre>'; print_r($quebrado_de_3_em_3); echo '</pre>'; die();
  15. wash

    Organizando Loop

    E atualize seu php. As extensões mysql_* não são usada há muitos anos! uns 5 já veja:
  16. Olá! Sugiro que inicie as chaves estrangeiras com fk (foreign key). troque id_carro por fk_veiculo Supondo que a id do carro esteja na url, você pode colocá-la no form usando um input:hidden assim: receba, trate e associe a id da url à variável $id, depois, crie o input: <input type="hidden" name="fk_veiculo" value="<?=$id?>">
  17. wash

    Numeracao numa tabela

    Mostre-nos como você gera sua tabela
  18. wash

    Ajuda com herança

    Olá! Muito provavelmente não encontrou um dos arquivos requeridos. Certifique-se de que todos começão com letra maiúscula e estão na pasta pasta do index.php E não use caracteres especiais nos nomes das pastas.
  19. wash

    update imagem de perfil

    Olá! Verifique se algum arquivo foi postado se nenhum arquivo foi enviado, então, não atualize a coluna da imagem
  20. Olá! Creio que não entendi. Mas tente assim: <?php $outroValor = 0; $neto = 0; if (!empty($_POST['alumno'])) { $sql = mysql_query("SELECT * FROM pagos WHERE fecha between '$fechai' AND '$fechaf' and alumno='$alumno' "); while ($row = mysql_fetch_array($sql)) { $neto = $neto+$row['valor']; $outroValor += $row['outroValor']; } }
  21. wash

    Filtro em 2 tabelas

    Olá! Abaixo do error_reporting...teste: ini_set("memory_limit",-1); set_time_limit(0); ini_set('max_execution_time', 300); //300 seconds = 5 minutes Agora q vi lá em cima: sys.fit-turbo.com você está rodando num server, né? creio q vai ter q editar seu arquivo php.ini Verificar se há algum limite de uso de memória por parte do servidor. É apache ou nginx?
  22. wash

    Filtro em 2 tabelas

    Olá! Acima do error_reporting teste: ini_set("memory_limit",-1);
  23. wash

    AJAX + PHP + JSON

    Olá! Observei rapidamente seu script, e seguem algumas observações: a) Não use <table> dentro de <head>, tudo o que for aparecer na tela, deve ficar dentro das tags <body></body> b) Não existe <input type="label", veja as possibilidades aqui: http://www.w3schools.com/tags/tag_input.asp d) Seu script possui vários elementos com a mesma id, id é identidade, imagine vários elementos com a mesma identidade... veja mais aqui: http://desenvolvimentoparaweb.com/css/diferencas-entre-ids-e-classes/ e) Não entendi o trecho php, todos os 21 campos de pontuação entre 0 e 10 são de preenchimento obrigatório. No entanto... o trecho php só observa uma única variável: 'codigoa'... É o script do arquivo grava_dados.php? f) Siga os passos: 1. Execute a query sql 2. Verifique se houve alguma falha na execução da query (se houve, mostre na tela) 3. Se não houve falha, verifique se foi encontrado algum resultado. 4. Se foi encontrado algum resultado, exiba em formato json 5. Se não foi encontrado nenhum resultado, exiba alguma mensagem de que nenhum resultado foi encontrado. Sugestões: Use os campos de entrada numérica assim: <input type="number" name="c5" id="b" placeholder="0 - 10" size="2" min="0" max="10" required> Arquivo de conexão com o banco: Connect.php <?php // variáveis para conexão com banco de dados online $host = 'localhost'; $user = 'root'; $password = ''; $database = 'scriptbrasil'; // estabelecer conexão com o mysql $sqli = new mysqli($host, $user, $password); // verificar se houve erro na conexão if ($sqli->connect_error) { // se houve erro, mostra erro na tela die("<p><b>Erro!</b> Falha na conexão:<br>$sqli->connect_error</p>"); } // alterar o tipo de codificação da conexão com o banco de dados, para utf8 if (!$sqli->set_charset('utf8')) { die("<p>O charset não é utf8: $sqli->error</p>"); } // se não abrir o banco de dados para trabalhar if (!$sqli->select_db($database)) { die("<p><b>Erro!</b> Não foi possível abrir o banco de dados: <b>$database</b><br>$sqli->error</p>"); } Arquivo onde a query de consulta será executada: <?php include 'sistema_php/Connect.php'; // verifique se existe a variável codigoa na url: if (isset($_GET['codigoa'])) { $codigo = $_GET['codigoa']; // defina a sua query de busca $query = ('SELECT * FROM cadastrotecnico where cod=' . $codigo); //(a1,a2,a3,a4,a5,a6,a7,8,a9,a10,a11,a12,a13,b1,b2,b3,c1,c2,c3,c4,c5) '$a1','$a2','$a3','$a4','$a5','$a6','$a7','$a8','$a9','$a10','$a11','$a12','$a13','$b1','$b2','$b3','$c1','$c2','$c3','$c4','$c5','$data_avaliacao','$codigo_avaliador','$nometecnico';'?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?' // execute a sua query: $result = $sqli->query($query); // verifique se houve erro com a execução da query: if ($sqli->error) { // exiba mensagem de erro die("<p><b>FALHA NA EXECUÇÃO DA QUERY!</b><br>$sqli->error</p><p><b>QUERY</b><br>$query</p>"); // se não houve erros e há algum resultado } elseif ($result->num_rows) { // enquanto houver resultado while ($row = $result->fetch_assoc()) { // mostre na tela como json echo json_encode($row); } // se nenhum resultado foi encontrado, } else { die('Nenhum resultado encontrado, chefe!'); } }
  24. wash

    Impressão de selecionados

    Olá! Você vai precisar passar as ids das linhas selecionadas e executar uma nova query na página que vai ser aberta para impressão. Onde irá adicionar as ids no seu where, ex.: AND id in(1,7,8,22,35)...
×
×
  • Criar Novo...