Postagens

Mostrando postagens de Fevereiro, 2017

RegistroBR usa AngulaJS

Fiquei impressionado uma instituição brasileira se modernizou a esse ponto as validações de novos registros estão feitas com angular anterior ao 2.0... mas da para ver claramente vestigios dessas validações ao inspecionar a página...

Ex abaixo, onde usam ng-controller claro uso de controladores de angular

<div data-ng-controller="GlobalCtrl" data-ng-init="id = 7476394;
ticket = 0;
fqdn = 'residencialmajestic.com.br';
fqdn_ace = 'residencialmajestic.com.br';
readVars(id, ticket, fqdn)" class="ng-scope">
<input type="hidden" data-ng-model="id" class="ng-pristine ng-untouched ng-valid ng-not-empty">
<input type="hidden" data-ng-model="ticket" class="ng-pristine ng-untouched ng-valid ng-not-empty">
<input type="hidden" data-ng-model="orgId" data-ng-init="orgId = 205870" class="ng-pristine ng-untouched ng-valid ng-not-empty">
<in…

Whois de pesquisa para sites registrados no Brasil

Whois de pesquisa para sites registrados no Brasil

https://registro.br/2/whois



Integração super lógica

<?php
header('Content-Type: text/html; charset=utf-8');

$ch = curl_init();
$params = http_build_query(array("apenasColunasPrincipais" => "1",
"status" => "1",
"comDiaDeVencimento" => "5",
"apenasPessoasJuridicas" => "2",
));
curl_setopt($ch, CURLOPT_URL, "https://api.superlogica.net/v2/financeiro/clientes?" . $params);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/plain;",
"app_token: hLf7p67tA3me",
"access_token: zD9d1Pwx9T0t",
));
$response = curl_exec($ch);
curl_close($ch);
var_dump($response);

formatar strings em utf8

string utf8_encode ( string $data )

Identifica qual navegador está usando

$useragent = $_SERVER['HTTP_USER_AGENT'];

if (preg_match('|MSIE ([0-9].[0-9]{1,2})|',$useragent,$matched)) {
$browser_version=$matched[1];
$browser = 'IE';
$hoje = date("d/m/Y");
} elseif (preg_match( '|Opera/([0-9].[0-9]{1,2})|',$useragent,$matched)) {
$browser_version=$matched[1];
$browser = 'Opera';
$hoje = date("d/m/Y");
} elseif(preg_match('|Firefox/([0-9\.]+)|',$useragent,$matched)) {
$browser_version=$matched[1];
$browser = 'Firefox';
$hoje = date("d/m/Y");
} elseif(preg_match('|Chrome/([0-9\.]+)|',$useragent,$matched)) {
$browser_version=$matched[1];
$browser = 'Chrome';
$hoje = date("Y-m-d");
} elseif(preg_match('|Safari/([0-9\.]+)|',$useragent,$matched)) {
$browser_version=$matched[1];
$hoje = date("d/m/Y");
$browser = 'Safari';
} else {
// browser not recognized!
$browser_version = 0;
$browser= 'other';
}

Calcular frete pelos correios via PHP

<?php

/**
* Executa calculo do frete usando webservice dos correios.
* @copyright Phaneronsoft
* @author Marcelo Korjenioski - faleconosco@phaneronsoft.com
* @see http://www.phaneronsoft.com
* @filesource correios.php
* @version 1.1
*/

#####################################
# Código dos Serviços dos Correios #
# FRETE PAC = 41106 #
# FRETE SEDEX = 40010 #
# FRETE SEDEX 10 = 40215 #
# FRETE SEDEX HOJE = 40290 #
# FRETE E-SEDEX = 81019 #
# FRETE MALOTE = 44105 #
# FRETE NORMAL = 41017 #
# SEDEX A COBRAR = 40045 #
#####################################

// Definindo constantes

// Peso total do pacote em Quilos, caso seja menos de 1Kg, ex.: 300g, coloque 0.300
define('PESO',11.00);
define('EMBALAGEM',0.00);
// Valor adicional no envio como custo de embalagem.
define('COMPRIMENTO',20);
define('ALTURA',15);
define('LARGURA',20);

if($_POST) {
// Código do Serviço que deseja calcular, veja tabela acima:
if ($_POST['servico']) {
$cod_servico = $_POST['servico'];
}
// CEP…

Completar com 0 a esquerda função PHP

/*
Esta função retorna a string input preenchida na esquerda, direita ou ambos os lados até o tamanho especificado. Se o parâmetro opcional pad_string não for indicado, input é preenchido com espaços, se não é preenchido com os caracteres de pad_string até o limite.

O parâmetro opcional pad_type pode ser STR_PAD_RIGHT (preencher a direita), STR_PAD_LEFT (preencher a esquerda), ou STR_PAD_BOTH (preencher de ambos os lados). If pad_type não for especificado é assumido que seja STR_PAD_RIGHT.

Se o valor de pad_length é negativo ou menor do que o tamanho da string , não há nenhum preenchimento.
*/

<?php
$valor = 7;
print str_pad($valor, 10); // retorno "7 "
print str_pad($valor, 10, "0", STR_PAD_LEFT); // retorno "0000000007"
print str_pad($valor, 10, "_", STR_PAD_BOTH); // retorno "_____7____"
print str_pad($valor, 6 , "___"); // retorno "7__"
?>

/*Nota: O parâmetro pad_string será truncado se se o número de caracteres de pr…

Método para enviar informações do sistema

<?php
require_once('Connections/alugase.php');
mysql_select_db($database_alugase, $alugase);

$query_propriedades = "SELECT * FROM admin ORDER BY id ASC";
$propriedades = mysql_query($query_propriedades, $alugase) or die(mysql_error());
$row_propriedades = mysql_fetch_assoc($propriedades);
$totalRows_propriedades = mysql_num_rows($propriedades);

$subject = "SITE UTILIZANDO SISTEMA - Desenvolvido por Thyago H. Pacher";

$headers = "From: Desenvolvido por Thyago H. Pacher <thyago.pacher@gmail.com/>\n";
$headers .= "Reply-To: Desenvolvido por Thyago H. Pacher <thyago.pacher@gmail.com/>\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

$message .= "<html>\n";
$message .= "<body>\n";
$message .= "<table width=\"100%\"><tr><td>\n";
$message .= "<BR>DATA: " . date("d/m/Y - H:i:s");
$message .= "<BR>HTTP_HOST: "…

Método para usar webservice PHP

<?php

ini_set("soap.wsdl_cache_enabled", "0"); // disabling WSDL cache
$server = new SoapServer("http://localhost/wsdl.php?WSDL"); // Locate WSDL file to learn structure of functions
$server->addFunction("ChooseColour"); // Same func name as in our WSDL XML, and below
$server->handle();

function ChooseColour($formdata) {
$attempt = false; // File writing attempt successful or not
$formdata = get_object_vars($formdata); // Pull parameters from SOAP connection

// Sort out the parameters and grab their data
$myname = $formdata['Name'];
$mycolour = $formdata['FavColour'];
$mynumber = $formdata['FavNumber'];

$str = "Name: " . $myname . ", ";
$str .= "Colour: " . $mycolour . ", ";
$str .= "Number: " . $mynumber . "\r\n";

$filename = "./formdata.txt";
if (($fp = fopen($filename, "a")) == false) return array('Success' => false);
if (fwrite($fp, $st…

atributos básicos para fazer importações magento

Imagem

Liberar arquivo PHP para acesso externo

header("Access-Control-Allow-Origin: *");

Ver parcelamento via pagseguro no PHP

https://ws.pagseguro.uol.com.br/v2/installments?email={email}&token={token}&amount=2000.00&cardBrand=visa

Consulta cotação dolar via PHP

<?php

include '../model/Conexao.php';
include 'phpQuery-onefile.php';

$conexao = new Conexao();

function simple_curl($url, $post = array(), $get = array()) {
$url = explode('?', $url, 2);
if (count($url) === 2) {
$temp_get = array();
parse_str($url[1], $temp_get);
$get = array_merge($get, $temp_get);
}

$ch = curl_init($url[0] . "?" . http_build_query($get));
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
// curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
return curl_exec($ch);
}

$html = AbreSite('https://ptax.bcb.gov.br/ptax_internet/consultarUltimaCotacaoDolar.do');

$html = array_filter(explode(' ', strip_tags($html)), 'ehBranca' );
foreach ($html as $key => $dolar) {
$conexao->comando('update configuracao set vldolar = '. str_replace(',', '.', $dolar).' where codconfiguracao = 1');
}

function soNumero($str) {
retu…

Gera código de barras PHP

<?php
function geraCodigoBarra($numero){
$fino = 1;
$largo = 3;
$altura = 50;

$barcodes[0] = '00110';
$barcodes[1] = '10001';
$barcodes[2] = '01001';
$barcodes[3] = '11000';
$barcodes[4] = '00101';
$barcodes[5] = '10100';
$barcodes[6] = '01100';
$barcodes[7] = '00011';
$barcodes[8] = '10010';
$barcodes[9] = '01010';

for($f1 = 9; $f1 >= 0; $f1--){
for($f2 = 9; $f2 >= 0; $f2--){
$f = ($f1*10)+$f2;
$texto = '';
for($i = 1; $i < 6; $i++){
$texto .= substr($barcodes[$f1], ($i-1), 1).substr($barcodes[$f2] ,($i-1), 1);
}
$barcodes[$f] = $texto;
}
}

echo '<img src="imagens/p.gif" width="'.$fino.'" height="'.$altura.'" border="0" />';
echo '<img src="imagens/b.gif" width="'.$fino.'" height="'.$altura.'" border="0" />';
echo '<img src="imagens/p.gif" width="'.…

rede zumbi de computadores por PHP

Classe para envio de email PHP

<?php
class Email{

public function capturaInformacoes(){
//pego os dados enviados pelo formulario
$nome = $_POST["nome"];
$email = $_POST["email"];
$mensagem = $_POST["mensagem"];
$assunto = $_POST["assunto"];
$email_from = $_POST["email_from"];
//formato o campo da mensagem
$mensagem = wordwrap( $mensagem, 50, "<br>", 1);
}

public function validaEmail($email){
if (!ereg("^([0-9,a-z,A-Z]+)([.,_]([0-9,a-z,A-Z]+))*[@]([0-9,a-z,A-Z]+)([.,_,-]([0-9,a-z,A-Z]+))*[.]([0-9,a-z,A-Z]){2}([0-9,a-z,A-Z])?$", $email)){
echo"<center>Digite um email valido</center>";
echo "<center><a href=\"java script:history.go(-1)\">Voltar</center></a>";
exit;
}
}

public function enviaEmail($email,$assunto,$mens,$headers){
mail($email,$assunto,$mens,$headers);
echo"Email enviado com Sucesso!";
}

$arquivo = isset($_FILES["arquivo"]) ? $_FILES["arquivo"] : FALSE;
if(…

caminho padrão lumine para engenharia reversa

Lumine/lib/ui/reverse.php

Usando ajax Laravel para login

public function login_app(Request $request) {
$auth = false;
$credentials = $request->only('email', 'password');

if (Auth::attempt($credentials, $request->has('remember'))) {
$auth = true; // Success
}

if ($request->ajax()) {
return response()->json([
'situacao' => $auth,
'intended' => URL::previous()
]);
} else {
return redirect()->intended(URL::route('/home'));
}
return redirect(URL::route('/login'));
}

Integração form pagseguro

<html>
<head>

</head>
<body>
<!-- Declaração do formulário -->
<form target="pagseguro" method="post"
action="https://pagseguro.uol.com.br/v2/checkout/payment.html">

<!-- Campos obrigatórios -->
<input type="hidden" name="receiverEmail" value="suporte@lojamodelo.com.br">
<input type="hidden" name="currency" value="BRL">

<!-- Itens do pagamento (ao menos um item é obrigatório) -->
<input type="hidden" name="itemId1" value="0001">
<input type="hidden" name="itemDescription1" value="Notebook Prata">
<input type="hidden" name="itemAmount1" value="24300.00">
<input type="hidden" name="itemQuantity1" value="1">
<input type="hidden" name="itemWeight1" value="1000">

<input type=&qu…

htaccess otimizado para pagespeed

#########################################################
#----------------- P A G E S P E E D -------------------#
#########################################################
# Our server has PageSpeed installed on it. Which makes our life optimised. Seriously optimised too.
# I've got a bunch of things you can add to your site below. Comment out what you don't want.
# I've tested out a bunch of this stuff, if anything doesn't work, flag it up and let me know asap.

# Turn on PageSpeed + It's Candy
ModPagespeed on

# Make javascript the last thing the page loads
ModPagespeedEnableFilters defer_javascript

# Fuck knows what this really does, but it's supposed to load the needed CSS first
ModPagespeedEnableFilters prioritize_critical_css

# This combines all the CSS into one glorious file.
ModPagespeedEnableFilters combine_css

# Puts all javascript inline = 0 requests
ModPagespeedEnableFilters inline_javascript

# Remove all comments. Incase people are reading. The bastards.
ModPagespe…

Registrar código whatsapp

<?php

/** Carregando classes **/
require ('./whatsapp/chat-api/src/whatsprot.class.php');
require ('./whatsapp/chat-api/src/Registration.php');

/** Preparando dados **/
$username = '554499999999'; // Seu número com o código do país, ex.: 554499999999
$nickname = 'Teste WhatsApp'; // Seu apelido, como será exibido das notificações
$debug = true; // Mostrar logs de dubug, o padrão é 'false'
$log = true; // Habilitar arquivos de log, o padrão é 'false'

/** Cria uma instância da classe WhatsProt **/
$w = new WhatsProt($username, $nickname, $debug, $log);

/** Cria uma instância da classe Registration **/
$r = new Registration($username, $debug);

/** Solicita código de autenticação **/
//
// IMPORTANTE! Após requisitar o código comente a linha 21 ou 22
//
$r->codeRequest('sms'); // por SMS
// $r->codeRequest('voice'); // ou por Voz, jamais deixe ambos ativos

/** Faz a autenticação **/
//
// IMPORTANTE! Só descomente estas linhas após solic…

Auto Complete html5

<label>Homepage: <input name="hp" type="url" list="hpurls"></label>
<datalist id="hpurls">
<option value="http://www.uol.com.br/" label="UOL">
<option value="http://www.uolhost.com.br/" label="UOL HOST – Sensacional">
<option value="http://www.metadeideal.com.br/" label="Metade Ideal">
</datalist>

Áudio e vídeo HTML5 para vários navegadores

John Dyer

Baixar o exemplo de código

Quando introduzidas pela primeira vez as tags de áudio e vídeo de HTML5, codec e navegador incompatibilidades fizeram-nos irrealista a implantação em grande escala Web sites e difícil de usar.As marcas eram grandes empresas escrevendo código fonte experimental ou fazendo desenvolvimento cross-browser media, mas a HTML5 mídia API foi muito confiável para uso geral.

Hoje, as coisas são diferentes.Navegadores e bibliotecas JavaScript tem amadurecido ao ponto onde você pode — e deve — usar HTML5 mídia como padrão para quaisquer projetos que irão exibir o conteúdo de áudio e vídeo.Reequipamento ainda existente do Flash e do Silverlight tornou-se bastante simples a conteúdos de vídeo para reprodução de HTML5.Neste artigo, eu vou explorar os benefícios de usar HTML5 para reprodução de mídia, mostrar algum código de amostra, abordar algumas questões importantes que os desenvolvedores enfrentam e apresentam soluções para esses problemas.

Benefícios do HTML5 Med…