DGmike

DGmike

Calma! não entre em pânico! Amanhã (talvez) tem novo post…

  • Alice Andrade
  • Rafael Zamana
  • Home
  • Guia Rápido jQuery
  • Códigos prontos
    • PHP: Função __auloload()
    • Classe sqlsimples e sql – PHP
    • Bancos, bancos e mais bancos…
  • PagSeguro
  • Artigos
    • JavaScript (parte 1)
  • Quem?

Frete com PagSeguro: simples!

Posted in Tutorial, pagseguro by DGmike
Feb 24 2010
TrackBack Address.

Eu participo do Fórum iMasters onde de vez em quando publico algumas informações e dicas sobre PagSeguro. E também respondo alguns e-mail sobre dúvidas e perguntas sobre os meios de integração com a plataforma. Um desses e-mail foi sobre cálculo de frete. A resposta foi tão satisfatória que decidi escrevê-la no fórum do iMasters e publicá-la aqui.

Calculo de Frete usando o PagSeguro

Calculo de Frete usando o PagSeguro

As lojas normalmente tem um sistema de cálculo de frete próprio como FEDEX ou mesmo usando uma API própria que conecta nos correios. Daí você faz um carrinho de compras onde indica um frete para o cliente e você quer que o PagSeguro use esse valor de frete que você passou. (ao invés de usar o cálculo do PagSeguro)

Para resolver esse problema configure o frete no PagSeguro da seguinte forma: Frete adicional com valor fixo com valor fixo definido para zero. Passe o valor de frete com o valor que a loja calculou apenas para o primeiro item.

Para entender melhor ou simplesmente ver quais são as outras opções possíveis, veja a matéria original no fórum do iMasters.

2 Comments »
Tagged as: ajuda, artigo, correios, encomenda, frete, pac, pagseguro, sedex, Tutorial

O PagSeguro mudou a URL de retorno automático, e agora?

Posted in Chrome, Cotidiano, Firefox, Internet Explorer, Navegadores, Programação, Semântica, Tecnologia, Trabalho, Tutorial, eventos, jQuery, javascript, pagseguro, php, plugin, python, yui by DGmike
Nov 02 2009
TrackBack Address.

Nesta sexta-feira, dia 30 de outubro, o PagSeguro mudou a sua homepage e com ela muitas coisas novas aconteceram. Inclusive rolou uma palestra para 70 pessoas do twitter que acompanharam as mudanças do Twitter. A palestra foi ministrada pelo Dennis Ferreira e pela Valéria Santos. Pessoas que tive a oportunidade de conhecer de perto e eles são pessoas responsáveis e estão conscientes das mudanças e do impacto que esta mudança causa.

PagSeguro - Uma empresa UOL

PagSeguro - Uma empresa UOL

Tem bastante gente falando sobre as novidades do novo site do PagSeguro por aí, então se quiser saber o que exatamente, recomendo os slides da palestra e uma busca no oráculo.

Mas, e na parte de códigos? O que muda? Você precisa atualizar seus códigos para essa nova plataforma? A resposta é simples e óbvia: NADA. Sim você não precisa atualizar seu código correndo achando que sua URL mudou. O PagSeguro deixou de ser implementado em ASP e passou a ser implementado em JAVA, o que deixou a aplicação muito mais robusta e segura, com isso a URL do retorno automático mudou. No site do PagSeguro eles indicam uma nova URL para o retorno automático ( https://pagseguro.uol.com.br/pagseguro-ws/checkout/NPI.jhtml ) mas a URL anterior continua funcionando normalmente e continuará por um longo tempo.

O pessoal do PagSeguro fez todas as alterações no seu sistema e antes de por no ar fez uma longa bateria de testes e só foi para o ar após verificar se todas as bibliotecas oficiais continuavam funcionando normalmente. Então, as URL de retorno automático continuará funcionando normalmente. Com o passar do tempo, é óbvio que a URL anterior morra, mas isso acontecerá muito tempo depois, até perceberem que ninguém mais utiliza a URL antiga.

A mudança vai ser longa e sutil, com o tempo iremos alterar todos os scripts para a nova URL, mas você não precisa sair desesperado para trocar suas URLs. O PagSeguro pensou bem nisso quando alterou a url de retorno automático. Eu mesmo fiz testes hoje de tarde para comprovar isso, já que recebi algumas dúvidas de alguns clientes e algumas pessoas reclamaram disso no twitter. Portanto, não se preocupe, você não precisa alterar nada no seu script de retorno automático do PagSeguro.

7 Comments »
Tagged as: Code, código, integração, javascript, novo pagseguro, pagseguro, php, python, rails, retorno automático, RoR, ruby on rails, Tecnologia, url

PHP+PagSeguro = Loja virtual de downloads

Posted in Programação, Tecnologia, Trabalho, Tutorial, jQuery, javascript, pagseguro, php, sql by DGmike
Apr 20 2009
TrackBack Address.

Voltamos a um assunto que interessa muitas pessoas: ganhar dinheiro. Talvez você não tenha nada físico para vender, mas você provavelmente tem talento (não, chocolate não) e sabe escrever um bom livro ou mesmo fazer ótimas fotografias[bb]. Você pode não saber, mas dá pra ganhar dinheiro com esse seu talento. Por que você não começa a vender arquivos para download? Sim! Por que não?! Comece a explorar o seu lado criativo e faça de seus dons uma forma de fazer lucros.

Crie uma loja virtual. Você pode começar com uma loja poderosa como o Magento ou mesmo uma coisa mais simples como OsCommerce, Joomla o mesmo WordPress. Mas, se você é programador como eu e prefere escrever seu próprio código ou mesmo entender como o sistema de sua loja (ou loja de seus clientes) funcionará, farei uma série de artigos para demonstrar como é simples criar uma loja virtual[bb] cujos produtos não são nada além de links para download.

Loja virtual com PagSeguro? Agora ficou fácil!

Loja virtual com PagSeguro? Agora ficou fácil!

Para você conseguir acompanhar este “curso” você deve entender um pouco dos seguintes assuntos:

  • PagSeguro: Vamos usar esta ferramenta de pagamento online para que nossos clientes se sintam seguros ao comprar em sua loja, então você já pode criar sua conta para podermos fazer a nossa loja virtual
  • PHP: Não precisa ser um expert, mas saber conceitos básicos de banco de dados e orientação a objetos já dão um gás
  • MySQL: Vamos trabalhar com a dobradinha mais conhecida da Web. Não usaremos o MySQL ao extremo mas iremos fazer um join ou outro
  • Ânimo: muitas vezes você irá errar. Podem ser erros básicos como não colocar um ponto-e-virgula/ no seu script, então não desanime e continue em frente

Ok, com os requisitos em mãos vamos por a mão na massa. A começar pela estruturação do nosso banco de dados.

O banco de dados

Vamos precisar basicamente de duas tabelas para organizar os produtos: categorias, produtos. Elas são descritas pelas seguintes queries:

CREATE TABLE `categoria` (
  `id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  `slug` VARCHAR(45) NOT NULL,
  `titulo` VARCHAR(100) NOT NULL,
  PRIMARY KEY (`id`)
);
 
CREATE TABLE `produto` (
  `id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  `categoria_id` INTEGER UNSIGNED NOT NULL,
  `slug` VARCHAR(45) NOT NULL,
  `titulo` VARCHAR(100) NOT NULL,
  `descricao` TEXT NOT NULL,
  `valor` FLOAT NOT NULL,
  `url` VARCHAR(32) NOT NULL,
  `imagem` CHAR(32) NOT NULL,
  PRIMARY KEY (`id`)
);

Usaremos os campos “slug” tanto de categoria quanto de produto para a url na loja virtual ficar mais fácil de enteder, é o que chamamos de URLs amigáveis. Repare também que temos “categoria_id” na tabela de produto, é nela que vamos basear a nossa organização, um produto deve ter uma categoria e uma categoria pode ter diversos produtos. Os campos de url e imagem da tabela de produtos conterá o endereço do arquivo físico (o arquivo que o usuário fará o download) e a imagem que aparecerá na loja virtual respectivamente. Eles receberão uma criptografia para a segurança de sua loja, usarei md5 como criptografia.

Muito bem, não vamos nos prender a criação de usuários no nosso sistema. Por quê?! Porque você realmete não precisa disso na sua loja. Se um usuário compra de sua loja ele terá os seus dados no PagSeguro, afinal, ele vai pagar por lá não é mesmo? Então para quê ter dados repetidos no seu sistema? Não vamos fazer também um sistema de login, tenho em mente que você é um programador experto e já sabe fazer isso de olhos fechados. Vamos colocar um sistema de login no nosso sistema sim, claro, mas com um usuário único e uma senha única. Isso para não perdermos o foco da loja virtual.

A outra tabela que iremos precisar é a tabela de compra, nela teremos a compra de cada usuário, assim poderemos reenviar um e-mail ao usuário com os links para onde ele pode efetuar o download dos produtos que ele comprou. Esta tabela também serve para sabermos que o produto foi enviado ao cliente, digo, a data de envio do e-mail. Essa tabela é regida pelo seguinte SQL.

CREATE TABLE `compra` (
  `id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  `email` VARCHAR(100),
  `produtos` TEXT NOT NULL,
  `transacao_id` VARCHAR(45),
  `status` VARCHAR(45) NOT NULL,
  `data_confirmacao` DATETIME NOT NULL,
  PRIMARY KEY (`id`)
);

Veja que produtos é um campo do tipo do tipo TEXT, nele vamos gravar os ids contidos na tabela produto, separados por virgula. Os campos transacao_id, status e data_confirmacao serão completados ao receber o retorno do PagSeguro.

Com isso já temos as tabelas básicas necessárias para a criação de nossa loja virtual. Fique ligado para a próxima parte dessa série onde vamos montar uma loja virtual voltada para downloads.

  • Campo DataTransacao no retorno do PagSeguro
  • Palestra PagSeguro na Impacta
  • Verifique o retorno automático, sempre!
  • [PagSeguro] O campo status
  • O PagSeguro mudou a URL de retorno automático, e agora?

7 Comments »
Tagged as: criatividade, dinheiro, ecommerce, joomla, loja virtual, magento, mysql, oscommerce, pagamento, pagseguro, php, talento, visie, wordpress

WordPress fora da pasta raíz

Posted in Programação, Tecnologia, Tutorial, php, video, video-tutorial, wordpress by DGmike
Apr 14 2009
TrackBack Address.

Já teve vontade de xingar o WordPress[bb] por criar aquele monte de arquivos na home do seu site, dificultando assim a organização dos seus arquivos dentro do servidor. Bom, neste vídeo eu explico como fazer para colocar o WordPress do seu blog[bb] para rodar dentro de uma pasta e não na raíz do projeto[bb]. Assim você ter uma organização melhor dos seus arquivos.

No Comments yet »
Tagged as: blog, instalação, sistema, site, wordpress

Post Rápido: Unir dois resultados em um só SQL

Posted in Tutorial, sql by DGmike
Mar 30 2009
TrackBack Address.

Aqui onde estamos trabalhando (@rodrideme e @deninhu) precisamos fazer uma busca em dois bancos de dados e mostrar o resultado em um lugar só. Por que? Porque temos dois bancos de dados e em um ficarão os registros de quem já é registrado, e no outro quem ainda não é registrado, mas que pode vir a se registrar (mas isso é outra história).

Banco de dados. Sempre que puder, use esta ferramenta para ajudar no seu dia a dia

Banco de dados

Aqui nós estamos trabalhando com db2[bb], mas o que irei mostrar é independente de banco.

Tá, para de enrolar e fala logo!

Você pode unir dois resultados (inclusive de drivers/bancos que estejam na mesma conexão) em um unico result, mesclando os dados. Para isso use a estrutura UNION.

Tome as seguintes queries:

1
2
3
SELECT cod, nome, idade FROM pessoas
 
SELECT codigo, nome_completo, idade FROM pessoas_nao_cadastradas

Primeiro, você deve ter resultados iguais para cada select, para isso use alias para igualar os resultados.

1
2
3
SELECT cod, nome, idade FROM pessoas
 
SELECT codigo AS cod, nome_completo AS nome, idade FROM pessoas_nao_cadastradas

Agora, basta você usar o UNION entre os dois selects:

1
2
3
SELECT cod, nome, idade FROM pessoas
UNION
SELECT codigo AS cod, nome_completo AS nome, idade FROM pessoas_nao_cadastradas

Pronto! Você tem o resultado de dois bancos de dados mesclados em um só.

Legal, mas como faço WHERE nisso?

Você deve fazer um where ou nos dois selects ou fazer um select que totaliza os dois (como eu gosto de fazer):

1
2
3
4
5
SELECT z.* FROM (
  SELECT cod, nome, idade FROM pessoas
  UNION
  SELECT codigo AS cod, nome_completo AS nome, idade FROM pessoas_nao_cadastradas
) z WHERE nome = 'Michael'
  • Insert simples de SQL
  • IcePHP: O framework gelado como um picolé!
  • PDO e classe de resultados
  • Campo DataTransacao no retorno do PagSeguro
  • Post Rápido: Prevenindo SQL injection

2 Comments »
Tagged as: banco, banco de dados, dados, database, db2, dois bancos, mesclar, querie, query, select, sql, union
Next page »

Categorias

  • Amigos  (16)
  • cases  (4)
  • Cotidiano  (71)
  • CSS  (19)
  • Design  (1)
  • Dia-a-dia  (29)
  • Diversão  (18)
  • eventos  (9)
  • extensions  (11)
  • flash  (3)
  • Games  (1)
  • html  (5)
  • icephp  (4)
  • Ilustração  (6)
  • Imagem  (8)
  • Inspiração  (5)
  • javascript  (35)
    • jQuery  (7)
    • yui  (2)
  • Não categorizado  (27)
  • Navegadores  (17)
    • Chrome  (4)
    • Firefox  (16)
    • Internet Explorer  (5)
  • pagseguro  (10)
  • php  (41)
    • PHP Conference  (2)
  • plugin  (3)
  • Programação  (41)
  • python  (5)
  • Semântica  (16)
  • sql  (8)
  • tableless  (18)
  • Tecnologia  (46)
  • Trabalho  (25)
  • Tutorial  (23)
  • Vetorial  (5)
  • video  (7)
  • video-tutorial  (5)
  • Windows  (4)
  • wordpress  (2)
  • xHTML  (23)

Tags

ajax artigo banco de dados biblioteca blog browser classe CSS data Design Dia-a-dia evento eventos Firefox framework google html icephp internet Internet Explorer javascript jQuery loja mysql online opera pagseguro palestra php plugin Programação python retorno automático simples site solução sql string tableless Tecnologia Tutorial twitter visie web wordpress

Arquivo

SlideSare

Últimos Posts

  • Frete com PagSeguro: simples!
  • Palestra PagSeguro na Impacta
  • PagSimples: faça combranças facilmente com o PagSeguro
  • IcePHP agora é IceBaby
  • O PagSeguro mudou a URL de retorno automático, e agora?

Amigos

  • Alice Andrade
  • Rafael Zamana
Powered by WordPress | “Blend” from Spectacu.la WP Themes Club