
Cicklow
Admin
Épsilon
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
¡Usuario popular!
Suscripción a IA
Hola, hacia rato que no armaba algo, pues colocare el codigo que se usa en https://forobeta.com/temas/precio-del-bitcoin.603106/ y lograr esto:
Eso seria todo, no necesita un cron para guardar el cache, al acceder a la imagen esta genera su cache cada X tiempo...
Descarga
Saludos y buen año!!
PHP:
<?php
@set_time_limit(0);
//Verificamos que el referido sea forobeta.com, de esta manera si alguien trata de colocar nuestra img en otro lado no podra hacerlo.
if(stripos($_SERVER['HTTP_REFERER'], "forobeta.com")===false){
//Si el referido no es nuestro requerido, mostramos un pixel de 1x1 png
header('Content-type: image/png');
echo gzinflate(base64_decode('6wzwc+flkuJiYGDg9fRwCQLSjCDMwQQkJ5QH3wNSbCVBfsEMYJC3jH0ikOLxdHEMqZiTnJCQAOSxMDB+E7cIBcl7uvq5rHNKaAIA'));
die();
}
// Creamos una cabecera en nuestro codigo, indicando que seremos una imagen
header("Content-type: image/jpeg");
//conctrolamos los errores
error_reporting(E_ALL);
ini_set('display_errors', FALSE);
//Verificamos si existe nuestro cache, de lo contrario lo creamos.
if(!file_exists("cache.txt")){ SalvarCache(); }
//Abrimos nuestro archivo cache, el cual tenemos la info a mostrar
$A = json_decode(file_get_contents("cache.txt"),true);
//Comparamos los tiempos de nuestro cache con el actual
$datetime1 = new DateTime(date('H:i:s',time()));
$datetime2 = new DateTime(date('H:i:s',$A['f']));
$interval = $datetime1->diff($datetime2)->i;
//Si el interval es mayor o igual a 30 minutos necesitamos crear un nuevo cache.
if($interval>=30){
SalvarCache();
}
//Abrimos nuestra imagen base, la cual le colocaremos lo necesario
$image = imagecreatefrompng("price.png");
//Creamos los colores a usar
$color = ImageColorAllocate($image, 255, 86, 0);
$verde = ImageColorAllocate($image, 99, 255, 38);
$viole = ImageColorAllocate($image, 255, 255, 255);
$fb = ImageColorAllocate($image, 249, 121, 6);
// colocamos los textos necesarios en la imagen usando la fuente sageoui
imagettftext($image, 37, 0, 155, 115, $color, './segoeui.ttf', $A['last'].' USD');
imagettftext($image, 15, 0, 160, 145, $verde, './segoeui.ttf', 'Apertura: '.$A['open'].' USD');
if((30-$interval)<=0){
imagettftext($image, 8, 0, 160, 165, $viole, './segoeui.ttf', 'Actualizando cache...');
}else{
imagettftext($image, 8, 0, 160, 165, $viole, './segoeui.ttf', 'Proximo update en '.(30-$interval).' minutos');
}
imagettftext($image, 15, 0, 185, 30, $fb, './segoeui.ttf', 'ForoBeta.com');
// mostramos en pantalla la imagen
ImageJPEG($image, NULL, 93);
ImageDestroy($image);
//Funcion encargada del cache
function SalvarCache(){
$opts = array(
'http'=>array(
'method'=>"GET",
'header'=>"Accept-language: en\r\n" .
"Cookie: foo=bar\r\n"
)
);
$context = stream_context_create($opts);
//Desde donde leemos la info
$data = file_get_contents('https://www.bitstamp.net/api/ticker/', false, $context);
$obj = json_decode($data,true);
$obj['f'] = time();
file_put_contents("cache.txt",json_encode($obj));
$A = $obj;
}
?>
Eso seria todo, no necesita un cron para guardar el cache, al acceder a la imagen esta genera su cache cada X tiempo...
Descarga
Insertar CODE, HTML o PHP:
<?php
echo "https://test.cicklow.org/pBitcoin/pBitcoin.rar";
Saludos y buen año!!
Última edición: