Ir para conteúdo

Guilherme Luiz

Members
  • Total de itens

    354
  • Registro em

  • Última visita

  • Dias vencidos

    3

Guilherme Luiz venceu o dia em Junho 22

Teve o conteúdo mais curtido

Reputação

41 Levemente Bom

1 Seguidor

Sobre Guilherme Luiz

  • Data de Nascimento Março 23

Informações Pessoais

  • Sexo
    Masculino

Contato

Últimos Visitantes

93353 visualizações
  1. Guilherme Luiz

    Tabela MYSQL

    utilize a função explode $letras = "A;B;C;D;E"; $separa = explode(";",$letras); foreach($separa as $letra){ echo "{$letra} <br>"; }
  2. Guilherme Luiz

    Integração com Instagram

    consulte a documentação oficial do site. la existem sdks e apartir dai e so personalizar pra sua necessidade https://www.instagram.com/developer
  3. Guilherme Luiz

    Fputcsv insere apenas uma linha

    Consegui resolver... No indice texto do array $stats eu apliquei um utf8_encode e trim e agora está funcionando perfeitamente.
  4. Guilherme Luiz

    Fputcsv insere apenas uma linha

    Olá pessoal, Estou com um problema para escrever um arquivo csv utilizando a função FPUTCSV. <?php $queryList = "SELECT wzap.id as id, wzap.mobile as mobile, wzap.ddi as ddi, wzap.pushname as pushname, wzap.photo as photo, wzap.dlr_date as dataDlr, case when wzap.status = '0' then 'Pendente' when wzap.status = '1' then 'Enviado' when wzap.status = '2' then 'Entregue' when wzap.status = '3' then 'Não entregue' when wzap.status = '4' then 'Rejeitado' when wzap.status = '5' then 'Expirou' when wzap.status = '6' then 'Agendado' when wzap.status = '7' then 'Falha' end as status, case when wzap.status = '1' and wzap.substatus = '1' then 'Processado' when wzap.status = '2' and wzap.substatus = '1' then 'Ok' when wzap.status = '6' and wzap.substatus = '1' then 'Processado' when wzap.status = '7' and wzap.substatus = '1' then 'Sem saldo' when wzap.status = '7' and wzap.substatus = '2' then 'Erro no processamento' end as descricao, wzap.cost as tarifa, wzap.currency as moeda, wzap.text as texto, w.country as pais, channel.name as canalNome FROM wzap_mt as wzap INNER JOIN worldwide as w ON w.ddi = wzap.ddi LEFT JOIN wzap_channel as channel ON channel.id = wzap.channel_id WHERE wzap.user_id='{$userID}' and wzap.channel_id {$canalID} and wzap.dlr_date BETWEEN '".$inicio." 00:00:00' and '".$final." 23:59:59' UNION ALL SELECT wzap.id as id, wzap.mobile as mobile, wzap.ddi as ddi, null as pushname, null as photo, wzap.dlr_date as dataDlr, case when wzap.status = '0' then 'Pendente' when wzap.status = '1' then 'Enviado' when wzap.status = '2' then 'Entregue' when wzap.status = '3' then 'Não entregue' when wzap.status = '4' then 'Rejeitado' when wzap.status = '5' then 'Expirou' when wzap.status = '6' then 'Agendado' when wzap.status = '7' then 'Falha' end as status, case when wzap.status = '1' and wzap.substatus = '1' then 'Processado' when wzap.status = '2' and wzap.substatus = '1' then 'Ok' when wzap.status = '6' and wzap.substatus = '1' then 'Processado' when wzap.status = '7' and wzap.substatus = '1' then 'Sem saldo' when wzap.status = '7' and wzap.substatus = '2' then 'Erro no processamento' end as descricao, wzap.cost as tarifa, wzap.currency as moeda, wzap.text as texto, w.country as pais, channel.name as canalNome FROM wzap_mt_temp as wzap INNER JOIN worldwide as w ON w.ddi = wzap.ddi LEFT JOIN wzap_channel as channel ON channel.id = wzap.channel_id WHERE wzap.user_id='{$userID}' and wzap.channel_id {$canalID} and wzap.dlr_date BETWEEN '".$inicio." 00:00:00' and '".$final." 23:59:59' UNION ALL SELECT wzap.id as id, wzap.mobile as mobile, wzap.ddi as ddi, wzap.pushname as pushname, wzap.photo as photo, wzap.dlr_date as dataDlr, case when wzap.status = '8' then 'Recebido' end as status, case when wzap.status = '8' and wzap.substatus = '1' then 'Resposta recebida' end as descricao, wzap.cost as tarifa, wzap.currency as moeda, wzap.text as texto, w.country as pais, channel.name as canalNome FROM wzap_mo as wzap INNER JOIN worldwide as w ON w.ddi = wzap.ddi LEFT JOIN wzap_channel as channel ON channel.id = wzap.channel_id WHERE wzap.user_id='{$userID}' and wzap.channel_id {$canalID} and wzap.dlr_date BETWEEN '".$inicio." 00:00:00' and '".$final." 23:59:59' ORDER BY dataDlr DESC"; $sqlList = mysqli_query($connect_sql,$queryList); while($data = mysqli_fetch_assoc($sqlList)){ $stats[] = [ "id" => $data['id'], "mobile" => $data['mobile'], "pais" => $data['pais'], "nome" => $data['pushname'], "canal" => $data['canalNome'], "dataDlr" => date("d/m/y H:i:sa", strtotime($data['dataDlr'])), "status" => $data['status'], "desc" => $data['descricao'], "tarifa" => $data['tarifa'], "moeda" => $data['moeda'], "texto" => $data['texto'] ]; } $filename = sha1($userID.date("Y-m-d").rand(1,100000)); $header = ["ID","Número","País","Nome","Canal","DataStatus","Status","Descrição","Tarifa","Moeda","Texto"]; $file = fopen(BASEPATH."/export/{$filename}.csv", 'w'); //TRECHO PROBLEMATICO ABAIXO fputs($file, $bom =( chr(0xEF) . chr(0xBB) . chr(0xBF) )); fputcsv($file,$header,","); foreach ($stats as $line) { fputcsv($file, $line,","); } //TRECHO PROBLEMATICO ACIMA $fileSize = filesize(BASEPATH."/export/{$filename}.csv"); ?> Meu código traz uma lista de uma consulta do meu banco de dados que fica salva no array $stats. Ao fazer o debug do array $stats vejo que os dados são recebidos perfeitamente neste modelo Array ( [id] => 25 [mobile] => 5511945658451 [pais] => Brasil [nome] => Guilherme [canal] => guilherme business [dataDlr] => 19/11/18 11:51:36am [status] => Entregue [desc] => Ok [tarifa] => 0.1 [moeda] => BRL [texto] => envio via portal - teste de agenda - 11h50m ) Array ( [id] => 28 [mobile] => 5511950917200 [pais] => Brasil [nome] => Comercial [canal] => guilherme business [dataDlr] => 19/11/18 11:51:27am [status] => Entregue [desc] => Ok [tarifa] => 0.1 [moeda] => BRL [texto] => envio via portal - teste de agenda - 11h50m ) Ao fazer o debug também do foreach da variavel $line eu também tenho todos os dados ou seja, minha busca no bd está ok e meu foreach também. Assim deveria ser escrito meu CSV onde cada indice do array $stats é uma linha separados por virgula. Porem meu csv quando visualizo, traz apenas uma linha no seguinte formato ID,Número,País,Nome,Canal,DataStatus,Status,Descrição,Tarifa,Moeda,Texto 27,5511945658451,Brasil,Guilherme,"guilherme business","21/11/18 13:16:41pm",Entregue,Ok,0.1,BRL,"teste foto perfil Já tentei de tudo e não consigo identificar o porque meu fputcsv está escrevendo apenas uma linha do meu array. Vendo este código alguem conseguiria me dar uma luz/orientação?
  5. Guilherme Luiz

    Tirar link e colocar um botão php

    no seu button adicione um evento onlick ou estilize com css o seu link igual um button... o bootstrap tem facil essa estilizacao
  6. Guilherme Luiz

    Passar conteúdos de variáveis php para um javascript?

    salve os valores numa session com php e as recupere com o js... simples assim.
  7. Guilherme Luiz

    PHP - Imprimir uma Lista de dados do Mysql

    voce precisa aplicar o while em <td> e usar o operador % para aplicar <tr> a cada linhas pares. procure por lista ordenada horizontalmente qie você encontrará varios exemplos
  8. Guilherme Luiz

    Acesso ao web services e interaçao na pagina php

    basicamente você tem que definir. o que chamar como chamar metodo de chamada forma de processamento resultado dado inicialmente seria o que chamar minha url como chamar formato da minha url de requisicao metodo de chamada get, post, put, etc forma de processamento assincrona, sincrona, php, asp, java, etc resultado dado raw, xml, json, texto defina o que você quer com base nestes itens e isso vai ajudar voce a se orfanizar e saber o que buscar e perguntar melhor.
  9. Guilherme Luiz

    Escrever resultado de pesquisa do mysql utilizando while

    veja se a sua session de table_base traz algum valor... além disso, ja que você esta pondo as variaveis dentro dos colchetes, inclui aspas simples coluna = '{$variavel}' mais ainda... se o table_base traz o nome da tabela corretamente, quantos registros existem nessa tabela? as vezes o seu erro acontece pq você tem muitos registros para iterar e o servidor da crash/timeout assim como o navegador do usuario por ser muitos dados para imprimir... afim de apenas teste implemente um limit 10 na sua query... aplique a condicao mysqli_error apos a execucao da qiery para identificar possiveis erros
  10. Guilherme Luiz

    Erro ao enviar e-mail

    SMTP connect() failed. Seu proprio erro já diz o que está acontecendo. A conexão SMTP falhou. Motivos: Dados incorretos de conexão Revise os dados de endereço smtp, porta, usuario, senha... Enquanto os seus dados de conexão estiverem errados, isso vai seguir acontecendo. Pergunte ao seu Host (servidor web) quais são os dados de conexão do email via smtp
  11. Guilherme Luiz

    PHP puro x Frameworks

    Pense assim: E se amanha o framework não existir mais? Os frameworks estão surgindo aos montes pq é uma trend do mercado porque pelo mercado a fora é "linha de produção" e os frameworks ajudam nesse quesito de acelerar o trabalho e também de padroniza-lo de modo que outros devs saberão o que você quis dizer com cada linha do seu código. Mas, e se o framework amanha não existir mais e você "sabia" php apenas pelo framework?! Isso acontece aos montes com devs de front-end. 9 em 10 utilizam o bootstraap mas na hora que aparece uma personalização ou algo que o framework não atende, os problemas surgem porque não dominam a base dele que é CSS e JS basicamente. Minha recomendação é: Faça o PHP puro, seja ele estruturado ou orientado a objeto. Eu particularmente prefiro trabalhar sempre com php estruturado sem frameworks. Depois disso se você ver que precisa de algo rapido e padronizado, ai sim parta para os frameworks. Os que eu vejo mais utilizarem é o Laravel, Symfoni e o Zend Abraço.
  12. Guilherme Luiz

    Descobrir Pedidos não pagos

    Não seria mais facil incluir algum flag na tabela? por exemplo ID | idpedido | idproduto | qtd | valorunitario | valor total | pago 1 | 2 | 2 | 200 | 1 | 200 | 0 2 | 2 | 1 | 50 | 1 | 50 | 1 3 | 1 | 10 | 200 | 1 | 200 | 0 4 | 2 | 1 | 50 | 1 | 50 | 0 4 | 3 | 1 | 50 | 1 | 50 | 1 ai na sua query você faz um WHERE condicionando a coluna PAGO Desta forma você até poderá criar indices de consulta que melhorará a sua performance para pesquisas com grandes volumes WHERE pago=1 (1 para pago e 0 para não pago)
  13. Guilherme Luiz

    Meio de como cadastrar diversos valores em tabela Mysql ?

    mysqli_multi_query $query = "INSERT INTO montadora... $query .="INSERT INTO carro...; mysqli_multi_query($conexao,$query);
  14. Guilherme Luiz

    Foreach com fputcsv - PHP

    aplica o foreach no indice que você quer iterar.
  15. Guilherme Luiz

    Otimização de SELECT

    Resolvi o problema... O que deixava a query lenta era o LEFT JOIN que eu estava aplicando... Eu o retirei e a consulta com 100k de registros nao demora nem 2 segundos. Agora, porque esse LEFT estava atrasando tanto assim a minha consulta?
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.