Jump to content

Jack Oliveira

Members
  • Content count

    620
  • Joined

  • Last visited

Everything posted by Jack Oliveira

  1. Jack Oliveira

    PRODUTOS com a maior quantidade de PEDIDOS

    Veja se dará certo select * from (select PRODUTO.descricao, PRODUTO.Idproduto, sum(ITEMPEDIDO.quantidade) total FROM ITEMPEDIDO, PRODUTO WHERE PRODUTO.Idproduto=ITEMPEDIDO.Idproduto GROUP BY ITEMPEDIDO.Idproduto ORDER BY total DESC) WHERE ROWNUM <= 4;
  2. Jack Oliveira

    remover valor duplicado de uma string

    Pode fazer assim <? $string = 'abcaaade'; echo preg_replace("/(.)\\1+/","$1", $string); //Ou Passando pela função function VerificarDuplicidadeString($str) { return preg_replace("/(.)\\1+/","$1", $str); } ?> Para pegar pela função $string="abcaaade"; <p><?= VerificarDuplicidadeString($string); ?></p>
  3. Jack Oliveira

    required em todos os options do select

    Você precisa definir o atributo value de option para a string vazia da seguinte forma <form name="aprendiz"> <select name="teste" multiple size="3" style="width:50px;" required> <option value="">Selecione uma Opção</option> <option value="aa">aa</option> <option value="bb">bb</option> <option value="cc">cc</option> </select> <hr> <input type="submit" value="enviar"> </form>
  4. Jack Oliveira

    dizer se tem ou não dados repetidos no array

    Ola @Biel. seria isso que precisa <? //OUTRA FORMA AQUI $dados = array("Biel 1", "Biel 2", "Biel 1", "Biel 1", "Biel 4", "Biel 5"); $DadosNovaArray = array(); foreach ($dados as $key => $value) { if(isset($DadosNovaArray[$value])) $DadosNovaArray[$value] += 1; else $DadosNovaArray[$value] = 1; } foreach ($DadosNovaArray as $ResultadoDuplicado => $ResultadoNaoDuplicado) { echo '<strong>Duplicada:</strong> '.$ResultadoDuplicado; //tem dados duplicado no array if($ResultadoNaoDuplicado > 1) echo "($ResultadoNaoDuplicado)"; //não tem dados duplicado no array echo "<br />"; } ?> <? //OUTRA FORMA AQUI $dados = array("New1", "New2", "New3", "New4", "New1", "New2"); $Contagem = 0; $Resultado =''; $CheckedValueArray = array(); for ($i=0; $i < count($dados); $i++) { $NovaArray = $dados[$i]; if(! in_array($NovaArray, $CheckedValueArray)) { for( $j=$i; $j < count($dados); $j++) { if ($dados[$j] === $NovaArray) { $Contagem++; } } $CheckedValueArray[] = $NovaArray; if ($Contagem > 1) { //tem dados duplicado no array $Resultado .= "<strong>Original: </strong> " .$NovaArray. " <strong>Repetida: </strong> ". $NovaArray." é Duplicada<br/>"; }else{ //não tem dados duplicado no array $Resultado .= "<strong>Original: </strong> " .$NovaArray. "<br/>"; } $Contagem = 0; } } echo $Resultado; ?> Espero que uns deste 2 exemplos ai ajuda em algo
  5. Jack Oliveira

    Limitar palavras

    Tem uma forma de fazer isso também veja <? // Limita Quantidade de Caracteres function LimitarTexto($texto, $limite, $final = null, $quebra = false){ $tamanho = strlen($texto); if($tamanho <= $limite){ $texto; } else { if($quebra == true){ $texto = trim(substr($texto, 0, $limite))."..."; } else { $ultimo_espaco = strrpos(substr($texto, 0, $limite), " "); $texto = trim(substr($texto, 0, $ultimo_espaco))."..."; } } return $texto; } ?> Chama função da seguinte forma <span> <?= LimitarTexto($New['titulo'],'80','...'); ?> </span> Onde esta 80 Limita Quantidade de Caracteres a serem mostrado
  6. Jack Oliveira

    Vitrine com produtos classificados

    Da pra fazer também usando uma função Eu mesmo uso desta forma espero que te ajuda da melhor forma tbm <? // Categoria do Item function VerificaCategoriaItem($Item, $Tabela){ $QueryCategoria = DBRead("{$Tabela}",'categoria',"WHERE id = '{$Item}'"); if (is_array($QueryCategoria)) { foreach ($QueryCategoria as $categoria) { echo $categoria['categoria']; } } } ?> Assim fica facil de você poder fazer em todos os outros produtos com categorias deferentes entende? Chama ela da seguinte forma <?php $QueryProduto = DBRead('tbl_produto','*'); if (is_array($QueryProduto)) { foreach ($QueryProduto as $Pro) { ?> <span>ID: <?= $Pro['id']; ?></span><br> <span>Produto: <?= $Pro['titulo']; ?></span><br> <span>Categoria: <?= VerificaCategoriaItem($Pro['id_categoria'],'tbl_categoria'); ?></span> <?php }} ?> Espero ter ajudado
  7. Jack Oliveira

    Pegando Id_user pelo DataTables

    Ola pessoal boa noite Vou tentar resumir da melhor forma aqui o que preciso Seria o seguinte estou pegando os dados do banco de dados para serem listando pelo datatables usando php Ao lista todos conteudos do banco funciona normal até aqui esta perfeito Porem em outra parte que seria para os clientes que tiverem seus dados cadastros e eles mesmo forem atualizar que cada um deles veja seus dados entende? Fiz de algumas formas pensando que daria certo porem não tive resultados que preciso. Espero que possam entender o que preciso irei posta apenas a parte do que esta sendo o problema, creio que vocês que tem melhor conhecimento vai entender.... <?php header('Content-Type: application/json'); require_once ('../database/config.php'); require_once ('../database/config.database.php'); require_once ('../database/config.session.php'); require_once('../includes/funcoes.php'); require('../controller/ssp.class.php'); $sql_details = array( 'user' => DB_USERNAME, 'pass' => DB_PASSWORD, 'db' => DB_DATABASE, 'host' => DB_HOSTNAME ); //$table = DBRead('listagem','id_user',"WHERE id_user = '".DadosSession('id')."'") //$table = 'listagem'; // Desta forma lista tudo, mais não é o que preciso /*no console sempre da erro nesta linha */$table = 'listagem','id_user',"WHERE id_user = '".DadosSession('id')."'"; // Quero que me mostra apenas cada item por usuario $primaryKey = 'id'; $columns = array( array( 'db' => 'id', 'dt' => 0, 'formatter' => function ($id, $row) { ob_start(); ?> <? //Aqui vai mais colunas ?> <?php //Aqui seria o final do código return ob_get_clean(); } ) ); $response = SSP::simple($_GET, $sql_details, $table, $primaryKey, $columns); echo json_encode($response); ?> Coloquei apenas mais o que esta sendo preciso aqui sobre o PHP
  8. Ola pessoal boa noite preciso salvar umas coisas no banco de dados usando ao clicar no botão que esteja aparecendo sem que recarregue a página Seria isso aqui HTML do botão <div class="btn-group"> <a href="javascript:void(0)" class="rate-btn toggole-contnet"> <i class="fa fa-thumbs-o-up" aria-hidden="true"></i> Sim </a> <a href="javascript:void(0)" class="rate-btn toggole-contnet"> <i class="fa fa-thumbs-o-down" aria-hidden="true"></i> Não </a> </div> No PHP para salvar no banco esta da seguinte forma. <?php if(isset($_POST['AvaliComentario'])) { // Se o cookie ainda não foi setado $cookie = isset($_COOKIE["avali_comentario_".$Comentario['id']]) ? $_COOKIE["avali_comentario_".$Comentario['id']] : null; if (!isset($cookie)) { $Adicionar = array( 'comentario_id' => $Comentario['id'], 'up' => post('up'), 'down' => post('down') ); $Query = DBCreate('avali_comentario', $Adicionar); // Se for um sucesso a query if ($Query) { // Seta um cookie setcookie("avali_comentario_".$Comentario['id']."", true, time()+60*60*24*6004); // Retorna false, ou seja, sucesso echo false; Redireciona(''.$URLSHARE.''); }else{ //AbreAlerta("Erro! Ouve um erro ao ".$dados['titulo']."!"); //Redireciona(''.$URLSHARE.''); } }else{ //Sweet('Atenção!!!', 'Você já deu sua Curtida para '.$dados['titulo'].'!', 'warning', 'Fechar'); //AbreAlerta("Ops! Você já deu sua Curtida para ".$dados['titulo']."!"); //Redireciona(''.$URLSHARE.''); } } Só preciso para quando clicar uns dos botão ele salvar sem precisar carregar a página... Se ter um forma diferente para fazer fico grato pelas dicas que puderem dar ai..
  9. Jack Oliveira

    Salvar dados na tabela com JAVASCRIPT

    Ola @Omar~ Quero fazer usando data-value Tu sabes como posso usar ou seja montar ele para que seja gravado apenas se for clicado em uns dos botões? Na minha tabela fiz isso aqui, sem que não tem nada a ver aqui... CREATE TABLE `avali_comentario` ( `id` int(11) NOT NULL AUTO_INCREMENT, `comentario_id` int(11) NOT NULL, `up` int(11) NOT NULL, `down` int(11) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1; Veja aqui no html como que posso bloquear se uns dos botão já tiver sindo clicado? <div class="btn-group"> <form method="post" action="" id="ajax_form"> <a href="javscript:void(0)" data-value="1" class="rate-btn toggole-contnet"> <i class="fa fa-thumbs-o-up" aria-hidden="true"></i> Sim </a> <a href="javscript:void(0)" data-value="2" class="rate-btn toggole-contnet"> <i class="fa fa-thumbs-o-down" aria-hidden="true"></i> Não </a> </form> </div> No javascript fiz isso <script type="text/javascript"> jQuery(document).ready(function(){ jQuery('#ajax_form').submit(function(){ var dados = jQuery( this ).serialize(); jQuery.ajax({ type: "POST", url: "ajax/avaliar_listagem.php", data: dados, success: function( data ) { alert( data ); } }); return false; }); }); </script> No avaliar_listagem.php seria o mesmo aqui no PHP <?php if(isset($_POST['AvaliComentario'])) { // Se o cookie ainda não foi setado $cookie = isset($_COOKIE["avali_comentario_".$Comentario['id']]) ? $_COOKIE["avali_comentario_".$Comentario['id']] : null; if (!isset($cookie)) { $Adicionar = array( 'comentario_id' => $Comentario['id'], 'up' => post('up'), 'down' => post('down') ); $Query = DBCreate('avali_comentario', $Adicionar); // Se for um sucesso a query if ($Query) { // Seta um cookie setcookie("avali_comentario_".$Comentario['id']."", true, time()+60*60*24*6004); // Retorna false, ou seja, sucesso echo false; Redireciona(''.$URLSHARE.''); }else{ AbreAlerta("Erro! Ouve um erro ao ".$dados['titulo']."!"); //Redireciona(''.$URLSHARE.''); } }else{ //Sweet('Atenção!!!', 'Você já deu sua Curtida para '.$dados['titulo'].'!', 'warning', 'Fechar'); AbreAlerta("Ops! Você já deu sua Curtida para ".$dados['titulo']."!"); //Redireciona(''.$URLSHARE.''); } } Sobre o que tu mandou qui vou dar um estudada nele.. Vou criar uma tabela para pegar as informações necessárias Obrigado pela esta ajuda
  10. Jack Oliveira

    Salvar dados na tabela com JAVASCRIPT

    Sobre aqui certo vou fazer obrigado....
  11. Jack Oliveira

    Salvar dados na tabela com JAVASCRIPT

    Ola @Omar~ Boa tarde então esta aparte que usará cookies seria bloquear para que os mesmo não fazem mais de uma vez... Porem os usuários que poderá fazer as avaliações será quando fazerem algum comentário e sim poder dar sua avaliação, neste caso eles não teria login entende?? Teria como fazer pelo IP de uso do usuários ou seja da maquina ou mesmo da rede da internet IP?
  12. Jack Oliveira

    [Resolvido] Função para formatar URL

    Boa noite @Matheus Tavares obrigado..... Funcionou como precisava vlw mesmo....
  13. Jack Oliveira

    [Resolvido] Função para formatar URL

    Ola pessoal boa noite Bom pessoal estou fazendo uma função para formatar url de rede social, FACEBOOK, INSTAGRAM & TWITTER, não sei se esta da forma correta em fazer. Ex: https://www.facebook.com/minha-pagina quero pegar apenas o final que seria minha-pagina Isso seria tanto no instagram e twitter Fiz da seguinte forma <?php function FormatarUrlRedeSocial($URL){ if (strstr($URL, 'https://facebook.com/') || strstr($URL, 'http://facebook.com/')) { $UrlRedeSocial = explode('facebook.com/', $URL); return $UrlRedeSocial[1]; } elseif (strstr($URL, 'http://') || strstr($URL, 'https://')){ $UrlRedeSocial = explode($URL); $UrlRedeSocial = explode($UrlRedeSocial[1]); return $UrlRedeSocial[0]; } else { return $URL; } } ?> Porem quero que seja apenas uma função unica para todos Tipo https://www.facebook.com/<?= FormatarUrlRedeSocial($dados['url_facebook']); ?> https://www.instagram.com/<?= FormatarUrlRedeSocial($dados['url_instagram']); ?> https://www.twitter.com/<?= FormatarUrlRedeSocial($dados['url_twitter']); ?> Bom do porque não usar os link´s direto, bom pois em outras parte que vou pegar este nome no final não poderia ter o link completo Então decide fazer uma função onde não vou precisar criar vários campos na tabela sem necessidades. Espero que possam entender o que preciso. Se puder da uma ajuda fico grato...
  14. Jack Oliveira

    Duvida excluir um valor do BD após 30 dias

    Bom vou dar uma ideia talvez não seja a melhor. Mais tente da seguinte forma, ou seja conforme deseja fazer ai <?php $DataAtual = date('d/m/Y'); // Data Atual //$DataValida = date('d/m/Y', strtotime($dados['data_banco_de_dados'])); // Data do banco de dados $DataValida = date('d/m/Y', strtotime('2021-07-13')); // Data do banco de dados // transforma a data do formato BR para o formato americano, ANO-MES-DIA $DAtual = implode('-', array_reverse(explode('/', $DataAtual))); $DValida = implode('-', array_reverse(explode('/', $DataValida))); // converte as datas para o formato timestamp $DA = strtotime($DAtual); $DV = strtotime($DValida); // verifica a diferença em segundos entre as duas datas e divide pelo número de segundos que um dia possui $ResultadoFinal = ($DV - $DA) /86400; ?> <?php if ($ResultadoFinal != -1) { }else{ //Atualizar O Usuario /* Acredito que neste campo vip 1 a 5 seria os nivel certo? Onde esta o 17 seria o id do ususario */ // DBUpdate('usuarios', array('nivel' => '0'), "id = '{$id}'"); DBUpdate('usuarios', array('vip' => '1'), "id = '17'"); Redireciona('./index.php'); } ?> Espero ter ajudado
  15. Jack Oliveira

    habilitado ou desabilita input

    Bom se eu entende tu queres quando for clicado no botão ele ser gravado no banco de dados, pos ser gravado exibi a alteração certo? Vou posta um forma que uso, e me ajuda muito... Primeiro vamos ao gravar no banco que seria isso.. OBS: so ajustar conforme for o seu código ai <? // Habilitar if (isset($_GET['Habilitar'])) { $id = get('Habilitar'); $Atualiza = array( 'habilitado' => 'S' ); $Query = DBUpdate("minha_tbl",$Atualiza,"id = '{$id}'"); if ($Query != 0) { Redireciona('?sucesso'); } elseif ($Query == 0) { Redireciona('?erro'); } } // Desabilitar if (isset($_GET['Desabilitar'])) { $id = get('Desabilitar'); $Atualiza = array( 'habilitado' => 'N' ); $Query = DBUpdate("minha_tbl",$Atualiza,"id = '{$id}'"); if ($Query != 0) { Redireciona('?sucesso'); } else { Redireciona('?erro'); } } ?> Na parte onde vai ter opção de habilitar e desabilitar ficaria assim <?php if ($habilitado =='S') { ?> <span><a href="?Desabilitar=<?= $row['id']; ?>"><small class='btn btn-info' <?php Tooltip('Desabilitar '.$row['titulo'].'?','top'); ?>>Habilitado</small></a></span> <?php } else { ?> <span><a href="?Habilitar=<?= $row['id']; ?>"><small class='btn btn-danger' <?php Tooltip('Habilitar '.$row['titulo'].'?','top'); ?>>Desabilitado</small></a></span> <?php } ?> Espero ter ajudo......
  16. Jack Oliveira

    Erro ao Atualizar

    Ola Matheus Tavares Boa noite, obrigado pela resposta.. Então fiz assim tbm e não deu certo.... Nesta parte se tu observar no form que mostrei ira ver como fiz para chamar ou seja tem os id´s relacionado a cada Ex: <?php //Departamento FAQ $QueryDepartamentoFaq = DBRead('tbl_department_faq','*',"WHERE dep_id='{$dep_id}'"); if (is_array($QueryDepartamentoFaq)) { foreach ($QueryDepartamentoFaq as $Fa) { $arr_fq_id[] = $Fa['fq_id']; $arr_fq_title[] = $Fa['fq_title']; $arr_fq_content[] = $Fa['fq_content']; }} if(isset($arr_fq_title)): for($i=0;$i<count($arr_fq_title);$i++) { ?> <tr> <td> <input autocomplete="off" type="text" class="form-control" style="width:100%" name="fq_title" value="<?= $arr_fq_title[$i]; ?>"> </td> <td> <textarea class="form-control" cols="30" rows="10" style="width:100%;height:50px;" name="fq_content"><?= $arr_fq_content[$i]; ?></textarea> </td> <td> <span class="btn btn-danger btn-xs"><a onclick="DeletarItem(<?= $arr_fq_id[$i]; ?>, 'DeletarFaq');" href="#!" style="color: #fff;">Excluir</a></span> </td> </tr> <?php //}} } endif; ?> Aqui onde esta "WHERE dep_id='{$dep_id}' nesta parte ele pega o ID da pagina que esta sendo editando {$dep_id} Entende??
  17. Jack Oliveira

    Htaccess - problema para utilizar https no subdominio

    Olá boa noite tente assim RewriteEngine on RewriteCond %{HTTPS} off [OR] RewriteCond %{HTTP_HOST} !^www\. [NC] RewriteRule (.*) https://www.dominio.com%{REQUEST_URI} [R=301,L] Veja aqui
  18. Jack Oliveira

    Carregar página com Ajax e executar Scripts ou Jquery

    Ola Omar admiro muito sobre o que tu post aprendo cada vez mais sobre suas coisas Sei que qui não seria um lugar certo para esta duvida.... Mais uma duvida qual as vantagem sobre usar jQuery e usar javascript, se o jQuery é tão ruim assim porque que muitos usam ele ainda? Apesar que o JAVASCRIPT é até melhor de entender, ainda tenho que aprender muito sobre JAVASCRIPT.
  19. Jack Oliveira

    Como alterar um texto conforme o horário?

    Ola pode fazer da seguinte forma com PHP <?php $hr = date("H"); if($hr >= 12 && $hr<18) { $Resultado = "Boa tarde!";} else if ($hr >= 0 && $hr <12 ){ $Resultado = "Bom dia!";} else { $Resultado = "Boa noite!";} echo "$Resultado"; ?>
  20. Jack Oliveira

    imprimir dado array na ordem crescente

    olha não sei se a minha resposta vai ser a melhor, mais tente assim <?php $dados = array("um" , "dois" , "tres" ); //shuffle($dados); sort($dados); // vai classificar o Array em ordem Crescente for($i=0; $i<1; $i++){ print $dados[$i].'<br>'; } ?> <?php $dados = array("um" , "dois" , "tres" ); //shuffle($dados); rsort($dados); // vai classificar o Array em ordem Descrecente for($i=0; $i<1; $i++){ print $dados[$i].'<br>'; } ?> Na duvida de uma olha aqui com php E veja aqui com javascript
  21. Jack Oliveira

    Erro ao Atualizar

    Ola pessoal boa noite.. Vou tentar explicar aqui o meu problema da melhor forma que der, espero que possam entender... Amigos eu estou tendo um problema em fazer uma atualização Bom quando vou cadastrar da sucesso e é gravado normal no banco de dados ate ai esta ok.. Seria o seguinte dentro de um form ele gera linhas ou seja + inputs caso seja preciso entende? Usando javascript´s, quando vou atualizar as informações que esta nas tabelas ou seja são 3 tabelas tbl_department dep_id nome news etc.... tbl_department_openning_hour hou_id titulo time dep_id <-- Aqui onde pega o id da tabela tbl_department tbl_department_faq faq_id titulo conteudo dep_id <-- Aqui onde pega tbm o id da tabela tbl_department Obs: Ele Grava normal no banco de dados, porem quando atualizar que não esta dando certo, e é preciso que seja atualizado todos os input das tabelas tbl_department_faq e tbl_department_openning_hour. Acredito que já entenderam aqui umas das parte que seria preciso. Bom vou posta uma parte do HTML do FORM para melhor entender o que seria ok!!, Sei que não tem nada a ver com o PHP, mais como tinha dito apenas para melhor entender.. <?php $dep_id = get('EditarItem'); $QueryTblDepartment = DBRead('tbl_department','*',"WHERE dep_id = '{$dep_id}'"); if (is_array($QueryTblDepartment)) { foreach ($QueryTblDepartment as $TblDepartment) { ?> <form method="post" action="?Atualizar=<?= $TblDepartment['dep_id']; ?>" enctype="multipart/form-data"> <div class="col-md-6"> <div class="form-group"> <label>Titulo:</label> <input class="form-control" name="dep_name" value="<?= $TblDepartment['dep_name']; ?>" placeholder="Exemplo: Globo City" autocomplete="off" required> </div> </div> <div class="col-md-6"> <div class="form-group"> <label>Telefone:</label> <input class="form-control telefone" name="dep_phone" value="<?= $TblDepartment['dep_phone']; ?>" placeholder="Exemplo: (00) 0000-0000" autocomplete="off"> </div> </div> <div class="col-md-6"> <div class="form-group"> <label>WhatsApp:</label> <input class="form-control whatsapp" name="dep_whatsapp" value="<?= $TblDepartment['dep_whatsapp']; ?>" placeholder="Exemplo: (00) 0.0000-0000" autocomplete="off"> </div> </div> <div class="col-md-6"> <div class="form-group"> <label>Fax:</label> <input class="form-control" name="dep_fax" value="<?= $TblDepartment['dep_fax']; ?>" placeholder="Exemplo: (00) 0000-0000" autocomplete="off"> </div> </div> <div class="form-group"> <label>Seção de FAQ:</label> <table id="fqSection" class="table table-bordered table-striped"> <thead> <tr> <th style="width:50%;">Titulo</th> <th>Contente</th> <th>Ação</th> </tr> </thead> <tbody> <?php //Departamento FAQ $QueryDepartamentoFaq = DBRead('tbl_department_faq','*',"WHERE dep_id='{$dep_id}'"); if (is_array($QueryDepartamentoFaq)) { foreach ($QueryDepartamentoFaq as $Fa) { $arr_fq_id[] = $Fa['fq_id']; $arr_fq_title[] = $Fa['fq_title']; $arr_fq_content[] = $Fa['fq_content']; }} if(isset($arr_fq_title)): for($i=0;$i<count($arr_fq_title);$i++) { ?> <tr> <td> <input autocomplete="off" type="text" class="form-control" style="width:100%" name="fq_title" value="<?= $arr_fq_title[$i]; ?>"> </td> <td> <textarea class="form-control" cols="30" rows="10" style="width:100%;height:50px;" name="fq_content"><?= $arr_fq_content[$i]; ?></textarea> </td> <td> <span class="btn btn-danger btn-xs"><a onclick="DeletarItem(<?= $arr_fq_id[$i]; ?>, 'DeletarFaq');" href="#!" style="color: #fff;">Excluir</a></span> </td> </tr> <?php //}} } endif; ?> </tbody> </table> <!-- Aqui para criar novos input para serem gravado no banco caso seja preciso --> <input type="button" class="btn btn-info btn-small" id="btnAddFaq" value="+ Adicionar linha" style="margin-bottom:10px;"> </div> <center><hr> <button class="btn btn-primary">Atualizar</button> <br><br> </center> </div> </form> <?php } } ?> Bom ai esta apenas um pouco do form tem mais coisa que seria igual o que preciso resolver Agora a parte do PHP que preciso resolver, vou posta apenas uma parte para poder entender tbm <?php // Atualizar Item de Departamento if (isset($_GET['Atualizar'])) { $dep_id = get('Atualizar'); $fq_empty = 0; if( !empty($_POST['fq_title']) && !empty($_POST['fq_content']) ) { $fq_empty = 1; foreach ($_POST['fq_title'] as $value) { //Sempre mostra o erro nesta linha $arr1[] = $value; } foreach ($_POST['fq_content'] as $value) { //Sempre mostra o erro nesta linha $arr2[] = $value; } $j=0; for($i=0;$i<count($arr1);$i++) { //Sempre mostra o erro nesta linha if($arr1[$i]=='' && $arr2[$i]=='') {continue;} else { $new_arr1[$j] = $arr1[$i]; $new_arr2[$j] = $arr2[$i]; $j++; } } } $AtualizarDepartment = array( 'dep_name' => post('dep_name'), 'dep_slug' => UrlAmigavel(post('dep_name')), 'dep_detail' => post('dep_detail'), 'dep_address' => post('dep_address'), 'dep_phone' => post('dep_phone'), 'dep_whatsapp' => post('dep_whatsapp'), 'dep_fax' => post('dep_fax'), 'dep_email' => post('dep_email'), 'meta_title' => post('dep_name'), 'meta_keyword' => post('meta_keyword'), 'meta_description' => LimitarTexto(post('dep_detail'),'200','...') ); $QueryTblDepartment = DBUpdate('tbl_department', $AtualizarDepartment, "dep_id = '{$dep_id}'", TRUE); if ($QueryTblDepartment != 0) { Redireciona('?sucesso&Department'); } else { Redireciona('?erro&Department'); } // Atualizar tbl_department_faq if($fq_empty == 1) { for($i=0;$i<count($new_arr1);$i++) { $TblDepartmentFaq = array( 'fq_title' => $new_arr1[$i], 'fq_content' => $new_arr2[$i], 'dep_id' => $dep_id ); $QueryTblDepartmentFaq = DBUpdate('tbl_department_faq', $TblDepartmentFaq, "dep_id = '{$dep_id}'"); } } if ($QueryTblDepartmentFaq != 0) { Redireciona('?sucesso&AtualizarFaq'); } else { Redireciona('?erro&AtualizarFaq'); } // Criar Novo input para tbl_department_faq if($fq_empty == 1) { for($i=0;$i<count($new_arr1);$i++) { $SqlFaq = array( 'fq_title' => $new_arr1[$i], 'fq_content' => $new_arr2[$i], 'dep_id' => $QueryTblDepartment ); $QueryFaq = DBRead('tbl_department_faq', $SqlFaq); } } if ($QueryFaq != 0) { Redireciona('?sucesso&Faq'); } else { Redireciona('?erro&Faq'); } } Neste caso ao mesmo tempo que teria que atualizar a tbl_department_faq faq_id titulo conteudo dep_id <-- Aqui onde pega tbm o id da tabela tbl_department Ele precisa grava caso seja preciso criar nova linha ou seja criar novo input para atualizar junto entende? Pessoal espero que eu tenha sido bem objetivo aqui para que possam entender.... Desde já agradeço
  22. Jack Oliveira

    Encurtamento de palavra no meio

    pode usar desta forma também caso desejar // Limita Quantidade de Caracteres function LimitarTexto($texto, $limite, $final = null, $quebra = false){ $tamanho = strlen($texto); if($tamanho <= $limite){ $texto; } else { if($quebra == true){ $texto = trim(substr($texto, 0, $limite))."..."; } else { $ultimo_espaco = strrpos(substr($texto, 0, $limite), " "); $texto = trim(substr($texto, 0, $ultimo_espaco))."..."; } } return $texto; } <?php $MeuTexto = 'Lorem ipsum dolor sit amet, omnis signiferumque in mei, mei ex enim concludaturque. Senserit salutandi euripidis no per, modus maiestatis scribentur est an. '; ?> <!-- Onde esta 80 você defina a quantidade de caracteres vai aparecer --> <?= LimitarTexto($MeuTexto,'80','...'); ?> Espero ter ajudado.....
  23. Ola galera boa noite Pessoal preciso enviar um arquivo por e-mail, onde o sistema faz backups do banco de dados manual e automatico preciso que seja enviado apenas o sql que for gerado tanto manual quanto automatico ambos esta fazendo o backups normalmente sem problemas Segue o código a baixo <?php session_start(); require_once('../../database/config.php'); require_once('../../database/config.database..php'); require_once('../../includes/funcoes.php'); require_once('controller.php'); if (!is_dir('../../backups')) { @mkdir('../../backups', 0777, true); } $name_backup = "Backups_" . date("ymdHis"); $querySQL = DBCreate('backups', [ 'name' => "Banco_de_dados_" . $name_backup, 'type' => 'sql', 'status' => 'Iniciado' ], true); $queryZIP = DBCreate('backups', [ 'name' => "Arquivos_ZIP_" . $name_backup, 'type' => 'zip', 'status' => 'Iniciado' ], true); try { require_once("Mysqldump.php"); $dump = new Ifsnop\Mysqldump\Mysqldump('mysql:host=' . DB_HOSTNAME . ';dbname=' . DB_DATABASE . '', '' . DB_USERNAME . '', '' . DB_PASSWORD . ''); $dump->start("../../backups/Banco_{$name_backup}.sql"); if (file_exists("../../backups/Banco_{$name_backup}.sql")) { DBUpdate('backups', array('status' => 'concluido'), "id = '{$querySQL}'"); } } catch (\Exception $e) { $return = [ "title" => "Oops!", "msg" => "Erro ao exportar banco de dados.", "icon" => "error" ]; DBUpdate('backups', array('status' => 'Erro ao exportar banco de dados'), "id = '{$querySQL}'"); Redireciona('?erro'); } try { $filename = "Arquivos_ZIP_{$name_backup}.zip"; $rootPath = realpath('../../wa/'); $zip = new ZipArchive(); $zip->open("../../backups/$filename", ZipArchive::CREATE | ZipArchive::OVERWRITE); $files = new RecursiveIteratorIterator( new RecursiveDirectoryIterator($rootPath), RecursiveIteratorIterator::LEAVES_ONLY ); foreach ($files as $name => $file) { if (!$file->isDir()) { $filePath = $file->getRealPath(); $relativePath = substr($filePath, strlen($rootPath) + 1); $zip->addFile($filePath, $relativePath); } } $zip->close(); } catch (\Exception $e) { $return = [ "title" => "Oops!", "msg" => "Erro ao criar arquivo de backup no formato zip!", "icon" => "error" ]; DBUpdate('backups', array('status' => 'Erro ao criar arquivo de backup no formato zip'), "id = '{$queryZIP}'"); } DBUpdate('backups', array('status' => 'concluido'), "id = '{$queryZIP}'"); if (empty($return)) { $return = [ "title" => "Deu Certo!", "msg" => "Backup Realizado com Sucesso!", "icon" => "success" ]; } echo json_encode($return); if (!empty(getConfigBackup('mail_notify'))) { @require_once('../../controller/class.phpmailer/PHPMailerAutoload.php'); $mail = new PHPMailer(); $mail->CharSet = "UTF-8"; $mail->isSMTP(true); $mail->SMTPSecure = getConfigBackup('mail_seguranca'); $mail->Host = getConfigBackup('mail_host'); $mail->Username = getConfigBackup('mail_email'); $mail->Password = getConfigBackup('mail_senha'); $mail->Port = getConfigBackup('mail_porta'); $mail->From = getConfigBackup('mail_email'); $mail->FromName = ConfigPainel('site_nome'); $mail->Subject = "Seu Backup está pronto!"; if (strstr(getConfigBackup('mail_notify'), ';')) { $email = explode(';', getConfigBackup('mail_notify')); foreach ($email as $key => $value) { $mail->AddAddress($value); } } else { $mail->AddAddress(getConfigBackup('mail_notify')); } $dados = "Olá, o Backup do painel " . ConfigPainel('site_nome') . " foi realizado com sucesso. Ele está disponível em seu dashboard na área de backups. Acesse o Painel para Gerenciar seus backups."; $mail->Body = "<div id='m_-7598057918015146334m_-2331253013811829785wrapper' dir='ltr' style='background-color:#f7f7f7;margin:0;padding:70px 0 70px 0;width:100%'> <table border='0' cellpadding='0' cellspacing='0' height='100%' width='100%'> <tbody> <tr> <td align='center' valign='top'> <div id='m_-7598057918015146334m_-2331253013811829785template_header_image'></div> <table border='0' cellpadding='0' cellspacing='0' width='600' id='m_-7598057918015146334m_-2331253013811829785template_container' style='background-color:#ffffff;border:1px solid #dedede;border-radius:3px!important'> <tbody> <tr> <td align='center' valign='top'> <table border='0' cellpadding='0' cellspacing='0' width='600' id='m_-7598057918015146334m_-2331253013811829785template_header' style='background-color:#333333;border-radius:3px 3px 0 0!important;color:#ffffff;border-bottom:0;font-weight:bold;line-height:100%;vertical-align:middle;font-family:&quot;Helvetica Neue&quot;,Helvetica,Roboto,Arial,sans-serif'> <tbody> <tr> <td id='m_-7598057918015146334m_-2331253013811829785header_wrapper' style='padding:36px 48px;display:block'> <h1 style='color:#ffffff;font-family:&quot;Helvetica Neue&quot;,Helvetica,Roboto,Arial,sans-serif;font-size:30px;font-weight:300;line-height:150%;margin:0;text-align:left'>Backup Realizado com sucesso</h1> </td> </tr> </tbody> </table> </td> </tr> <tr> <td align='center' valign='top'> <table border='0' cellpadding='0' cellspacing='0' width='600' id='m_-7598057918015146334m_-2331253013811829785template_body'> <tbody> <tr> <td valign='top' id='m_-7598057918015146334m_-2331253013811829785body_content' style='background-color:#ffffff'> <table border='0' cellpadding='20' cellspacing='0' width='100%'> <tbody> <tr> <td valign='top' style='padding:48px'> <div id='m_-7598057918015146334m_-2331253013811829785body_content_inner' style='color:#636363;font-family:&quot;Helvetica Neue&quot;,Helvetica,Roboto,Arial,sans-serif;font-size:14px;line-height:150%;text-align:left'> <p style='margin:0 0 16px'></p> $dados </div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </div>"; $mail->IsHTML(true); $mail->Send(); $mail->ClearAllRecipients(); $mail->ClearAttachments(); } Lembrando so ser enviado o que for sql Ex: Banco_de_dados_Backups_210412193634.sql SQL_Backup_210412180942.sql Conforme for gerando o backups no create tem type sql Não sei isso vai ajudar em algo mais a tabela backups esta assim INSERT INTO `backups` (`id`, `name`, `type`, `created_at`, `status`) VALUES (1, 'SQL_Backup_210412180942', 'sql', '2021-04-12 21:09:42', 'concluido'), (2, 'ZIP_Backup_210412180942', 'zip', '2021-04-12 21:09:42', 'Iniciado'), (3, 'Banco_de_dados_Backups_210412193634', 'sql', '2021-04-12 22:36:34', 'concluido'), (4, 'Arquivos_ZIP_Backups_210412193634', 'zip', '2021-04-12 22:36:34', 'Iniciado'); Se puderem da esta ajuda fico grato
  24. Boa noite pessoal Quero fazer uma verificação em tempo real no banco de dados antes de clicar para cadastra, ver se o nome que esta no input name="nome_empresa_link" ver se ele já existe no banco de dados. no caso so permitir preencher outro campos se o input que esta sendo verificado estiver correto ou seja tudo ok... Lembrando este input ele é preenchido conforme é digitado no input name="nome_empresa" Não sei se isso interfere ao fazer a verificação HTML <div class="col-md-6"> <div class="form-group"> <label for="nome_empresa">Nome</label> <input type="text" autocomplete="off" id="nome_empresa" maxlength="100" name="nome_empresa" class="form-control input_nome_empresa" required placeholder="Nome da Loja"> </div> </div> <div class="col-md-6"> <div class="form-group"> <label for="nome_empresa_link">Url Amigavél</label> <em id="resposta"></em> <input type="text" autocomplete="off" id="nome_empresa_link" name="nome_empresa_link" maxlength="100" class="form-control input_nome_empresa_link" required placeholder="/ Use maiúsculas, minúsculas e underline."> <?= $site; ?><span><em style="color: green;" id="nome_empresa_link"></em>/</span> </div> </div> No PHP fazer verificação fiz isso... <?php if(isset($_POST['nome_empresa_link'])) { $nome_empresa_link=$_POST['nome_empresa_link']; $checkdata = DBCount('ws_empresa','nome_empresa_link',"WHERE nome_empresa_link = '{$nome_empresa_link}'"); if ($checkdata >= 0) { //echo "Um nome igual este já esta sendo usado no sistema"; swal('Atenção!!!', 'A URL AMIGAVÉL não disponivél para cadastro \n tente com outro nome!', 'warning', 'Fechar'); } /*else { echo "<font color='green'>Disponivél...</font>"; } */ exit(); } ?> No ajax fiz assim <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <script language="javascript"> var nome_empresa_link = $("#nome_empresa_link"); nome_empresa_link.blur(function() { $.ajax({ url: 'notificacao/checkdata.php', type: 'POST', data:{"nome_empresa_link" : nome_empresa_link.val()}, success: function(data) { console.log(data); data = $.parseJSON(data); $("#resposta").text(data.nome_empresa_link); } }); }); </script> Só que não retorna nada
  25. Jack Oliveira

    [RESOLVIDO] ERRO ao fazer cadastro

    Ola pessoal bom dia Bom estou tentando fazer um formulario de cadastros com ajax mais sempre me retorna o erro uma msg que definir caso não esteja fazendo Houve um erro ao fazer o seu cadastro, tente novamente! Mais já olhei tudo que podia não há porque dar erro pois esta sendo colocando os campos certos para cadastrar No Ajax esta da seguinte forma <script> $(function(){ $('.form').submit(function(){ $('.loading').html("<img src='loading.gif' width='45'>"); $.ajax({ url: '<?= ConfigPainel('site_url');?>controlers/cadastro_empresa_users.php', type: 'POST', data: $('.form').serialize(), success: function(data){ $('.mostrar').html(data); $('.loading').hide(); $('.form')[0].reset(); } }); return false; }); }); </script> no html no form fiz assim pegando a class form do ajax creio que não há nada de errado aqui <form action="" method="post" enctype="multipart/form-data" class="form"> no php esta assim <?php header('Access-Control-Allow-Origin: *'); require_once ('../admin/database/config.php'); require_once ('../admin/database/config.database..php'); require_once ('../admin/database/config.session.php'); require_once ('../admin/includes/funcoes.php'); if($_POST){ if(empty($_POST['user_name']) || empty($_POST['user_lastname']) || empty($_POST['user_email']) || empty($_POST['user_telefone']) || empty($_POST['user_password']) || empty($_POST['user_plano']) || empty($_POST['nome_empresa']) || empty($_POST['nome_empresa_link'])){ echo '<script> $(document).ready(function(){ swal("Ops...","Preencha todos os campos obrigatórios!","warning"); }); </script>'; }else{ // INICIO PASSANDO PARA ARRAY DO USUARIO. $user_name = post('user_name'); $user_lastname = post('user_lastname'); $user_email = post('user_email'); $user_telefone = post('user_telefone'); $user_password = md5(post('user_password')); $user_plano = post('user_plano'); $user_level = 3; $user_registration = date('Y-m-d H:i:s'); // FIM ARRAY DO USUARIO. $QueryC = DBRead('configuracoes_site','*'); if (is_array($QueryC)) { foreach ($QueryC as $CONF) { //Teste $DiasDeTeste = $CONF['dias_testes']; //Plano 1 $nome_plano_um = $CONF['nome_plano_um']; $v_plano_um = $CONF['v_plano_um']; $dias_plano_um = $CONF['dias_plano_um']; //Plano 2 $nome_plano_dois = $CONF['nome_plano_dois']; $v_plano_dois = $CONF['v_plano_dois']; $dias_plano_dois = $CONF['dias_plano_dois']; //Plano 3 $nome_plano_tres = $CONF['nome_plano_tres']; $v_plano_tres = $CONF['v_plano_tres']; $dias_plano_tres = $CONF['dias_plano_tres']; }} //INICIO PASSANDO PARA ARRAY DA EMPRESA $nome_empresa = post('nome_empresa'); $nome_empresa_link = post('nome_empresa_link'); $end_uf_empresa = post('end_uf_empresa'); $cidade_empresa = post('cidade_empresa'); $end_bairro_empresa = post('end_bairro_empresa'); $end_rua_n_empresa = post('end_rua_n_empresa'); $email_empresa = post('user_email'); $telefone_empresa = preg_replace("/[^0-9]/", "", post('user_telefone')); $empresa_data_renovacao = date("Y-m-d", strtotime("+{$DiasDeTeste} days")); $QueryE = DBRead('estados','*',"WHERE id='{$end_uf_empresa}'"); if (is_array($QueryE)) { foreach ($QueryE as $ES) { $uf_empresa = $ES['sigla']; }} $QueryU = DBRead('ws_users','*',"WHERE user_plano='{$user_plano}'"); if (is_array($QueryU)) { foreach ($QueryU as $USER) { $UserPlano = $USER['user_plano']; }} switch ($UserPlano) { case '1': $Planos = $nome_plano_um; $Valor = 'R$:'.$v_plano_um.''; $Dias = 'Assinatura de '.$dias_plano_um.' dias'; break; case '2': $Planos = $nome_plano_dois; $Valor = 'R$:'.$v_plano_dois.''; $Dias = 'Assinatura de '.$dias_plano_dois.' dias'; break; case '3': $Planos = $nome_plano_tres; $Valor = 'R$:'.$v_plano_tres.''; $Dias = 'Assinatura de '.$dias_plano_tres.' dias'; break; default: $Planos = 'Plano Teste'; $Valor = 'Bônus R$: 21,00'; $Dias = 'Assinatura de '.$empresa_data_renovacao.' dias grátis'; break; } $Adicionar = array( 'user_name' => $user_name, 'user_lastname' => $user_lastname, 'user_email' => $user_email, 'user_telefone' => $user_telefone, 'user_password' => $user_password, 'user_plano' => $user_plano, 'user_level' => 3, 'user_registration' => $user_registration ); $Query = DBCreate('ws_users', $Adicionar); $Adicionar = array( 'nome_empresa' => $nome_empresa, 'nome_empresa_link' => $nome_empresa_link, 'end_uf_empresa' => $uf_empresa, 'cidade_empresa' => $cidade_empresa, 'end_bairro_empresa' => $end_bairro_empresa, 'end_rua_n_empresa' => $end_rua_n_empresa, 'email_empresa' => $email_empresa, 'telefone_empresa' => $telefone_empresa, 'empresa_data_renovacao' => $empresa_data_renovacao ); $Query = DBCreate('ws_empresa', $Adicionar); if ($Query != 0) { echo' <script> $(document).ready(function(){ swal("Ops '.utf8_encode($user_name).'...","Houve um erro ao fazer o seu cadastro, tente novamente!", "error"); }); </script>'; }else{ echo' <script> $(document).ready(function(){ swal("Sucesso '.utf8_encode($user_name).'...", "Seu cadastro foi realizado com sucesso.<br><a href="./login/Acessar"><button class="btn btn-default btn-sm"></button>Fazer Login...</a>", "success") }); </script>'; } } } Posso esta deixando passar algo no php que não estou vendo o problema....
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.