-
Conteúdo Similar
-
Por ILR master
Fala pessoal.
Não estou conseguindo converter .jpg para .webp
Alguém pode me ajudar? Segue código abaixo:
$fotob = 'imagem.jpg'; $foto = explode('.',$fotob); $f = $foto[0]; $forigem = $fotob; $origem = 'fotos_noticias/'.$forigem; $fdestino = $f.'.webp'; $destino = 'fotos_capa/'.$fdestino; $imagem = imagecreatefromjpeg($origem); $imgX = imagesx($imagem); $imgY = imagesy($imagem); $novaImagem = imagecreatetruecolor($imgX, $imgY); imagealphablending($novaImagem, false); imagesavealpha($novaImagem, true); imagecopyresampled($novaImagem, $imagem, 0, 0, 0, 0, $imgX, $imgY, $imgX, $imgY); imagewebp($novaImagem, $destino, 100); imagedestroy($imagem); // Importante para limpar o cache -
Por biakelly
Oie, olha eu aqui novamente , essa questão é para quem esta acostumado com bugs que inicialmente não fazem sentido
Meu código funciona bem o objetivo dele é fazer algumas confirmações e mostrar o preço em real onde inicialmente tenho:
<?php session_start(); include('../../sqlServices/db.php'); $nomemoeda = $_GET['nomemoeda']; $valormoeda = $_GET['valormoeda']; $brl = $_GET['brl']; $usdconvert = $usdimport; $check = "SELECT `limite`,`percentual` FROM `biaContabilidade`.`moedatbl` WHERE `nomemoeda`='$nomemoeda' AND `isactive`=1"; $checkr = mysqli_query($con, $check); $rowct = mysqli_fetch_array($checkr); $limit = $rowct['limite']; if ($valormoeda < $limit) { // echo "<script> alert ( 'limite abaixo'); </script>"; echo "true"; } else { $percentual = $rowct['percentual']; $percentual = $percentual / 100; $percentual = $brl * $percentual; $appliedpercentualBRLValue = $brl + $percentual; $brl = number_format($brl * 100); // echo "Pay R$ " .$brl."/-"; echo $brl; }
Não suficiente estou tentando mostrar o preço que é exibido neste código em dólar uma vez que tenho um crontab pegando a taxa e a atualizando a cada 2 horas (eu sei é muito, mas é uma condição interna), desta forma complementei o código assim:
<?php session_start(); include('../../sqlServices/db.php'); $usdimport = file_get_contents("../Textvalue/valuebrl.txt"); $nomemoeda = $_GET['nomemoeda']; $valormoeda = $_GET['valormoeda']; $brl = $_GET['brl']; $usdconvert = $usdimport; $check = "SELECT `limite`,`percentual` FROM `biaContabilidade`.`moedatbl` WHERE `nomemoeda`='$nomemoeda' AND `isactive`=1"; $checkr = mysqli_query($con, $check); $rowct = mysqli_fetch_array($checkr); $limit = $rowct['limite']; if ($valormoeda < $limit) { // echo "<script> alert ( 'limite abaixo'); </script>"; echo "true"; } else { $percentual = $rowct['percentual']; $percentual = $percentual / 100; $percentual = $brl * $percentual; $appliedpercentualBRLValue = $brl + $percentual; $brl = number_format($brl * 100 / $usdconvert); // echo "Pay R$ " .$brl."/-"; echo $brl; } como pode ver adicionei o caminho da minha cotação:
$usdimport = file_get_contents("../Textvalue/valuebrl.txt");
e mudei o final do código:
$brl = number_format($brl * 100 / $usdconvert);
Bem, localmente ele funciona direitinho, faz a conversão normal e exibe um poupup com o carrinho da stripe e o preço em dólar do jeito que preciso, mas online não funciona. Curiosamente o caminho esta correto.
Não consigo entender, será que estou usando alguma rotina aqui erroneamente?
-
Por stumpy
Boa noite gente estou com um site em asp clássico que até indexa no google usei a imagem amp mas quando vou postar no facebook ou outras redes sociais ela não aparece vi que tem o componente para transformar um jpg em um webp só que não achei nada em asp clássico alguém sabe como consegue me ajudar ?
-
Por Hyroshima
bom-dia pessoal, não tenho conhecimento para fazer essa conversão ou deixar compatível, se alguém puder por favor fazer isso pra mim ficarei agradecido de coração.
meu problema é o código abaixo que está usando biblioteca do windows WINSOCK2.H para fazer um ping no ip fornecido por um comando ping("ip") e retornar uma msg igual ao ping do windows, gostaria se possível que o mesmo fosse utilizado em linux (centos) mantendo a mesma funcionalidade ?
ping.c
#ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif #include <WINSOCK2.H> #define DEF_BUF_SIZE 1024 #define IP_HEADER_SIZE 20 #define ICMP_HEADER_SIZE 12 typedef struct _ICMP_HEADER { BYTE bType; BYTE bCode; USHORT nCheckSum; USHORT nId; USHORT nSequence; UINT nTimeStamp; }ICMP_HEADER, *PICMP_HEADER; USHORT GetCheckSum(LPBYTE lpBuff, DWORD dwSize) { DWORD dwCheckSum = 0; USHORT* lpWord = (USHORT*)lpBuff; while(dwSize > 1) { dwCheckSum += *lpWord++; dwSize -= 2; } if(dwSize ==1) dwCheckSum += *((LPBYTE)lpBuff); dwCheckSum = (dwCheckSum >> 16) + (dwCheckSum & 0XFFFF); return (USHORT)(~dwCheckSum); } BOOL Ping(char* lpDestIP, int *nRet_, int *nTime_) { int nTime = 0; int ret = 0; char ICMPPack[ICMP_HEADER_SIZE] = {0}; char szRcvBuff[DEF_BUF_SIZE] = {0}; int i = 0; int nRet = 0; int nLen = 0; int nError = 0; SOCKET s; PICMP_HEADER pRcvHeader; SOCKADDR_IN SourceSockAddr; SOCKADDR_IN DestSockAddr; PICMP_HEADER pICMPHeader; DestSockAddr.sin_family = AF_INET; DestSockAddr.sin_addr.S_un.S_addr = inet_addr(lpDestIP); DestSockAddr.sin_port = htons(0); pICMPHeader = (PICMP_HEADER)ICMPPack; pICMPHeader->bType = 8; pICMPHeader->bCode = 0; pICMPHeader->nId = (USHORT)GetCurrentProcessId(); pICMPHeader->nCheckSum = 0; pICMPHeader->nTimeStamp = 0; s = socket(AF_INET, SOCK_RAW, IPPROTO_ICMP); nTime = 1000; ret = setsockopt(s, SOL_SOCKET, SO_RCVTIMEO, (char*)&nTime, sizeof(nTime)); for(i=0; i <1; i++) { pICMPHeader->nCheckSum = 0; pICMPHeader->nSequence = i; pICMPHeader->nTimeStamp = GetTickCount(); pICMPHeader->nCheckSum = GetCheckSum((LPBYTE)(ICMPPack), ICMP_HEADER_SIZE); nRet = sendto(s, ICMPPack, ICMP_HEADER_SIZE, 0, (SOCKADDR*)&DestSockAddr, sizeof(DestSockAddr)); if(nRet == SOCKET_ERROR) { return FALSE; } nLen = sizeof(SOCKADDR_IN); if(nRet == SOCKET_ERROR) { return FALSE; } nRet = recvfrom(s, szRcvBuff,DEF_BUF_SIZE,0,(SOCKADDR*)&SourceSockAddr,&nLen); if(nRet == SOCKET_ERROR) { return FALSE; } pRcvHeader = (PICMP_HEADER)(szRcvBuff + IP_HEADER_SIZE); nTime = GetTickCount() - pRcvHeader->nTimeStamp; //printf("Return Message: %s bytes=%d time=%dms\n", inet_ntoa(SourceSockAddr.sin_addr), nRet, nTime); *nRet_ = nRet; *nTime_ = nTime; } return TRUE; }
a outra estrutura:
#include "ping.c" BUILDIN_FUNC(ping) { // const char *name; char _cmd[500]; int nRet=0, nTime=0; // // name = script_getstr(st,2); Ping((char *)name, &nRet, &nTime); if( nRet <= 0 || nTime < 0 ) sprintf(_cmd,"Return Message: %s fail to connect", (char *)name); else sprintf(_cmd,"Return Message: %s bytes=%d time=%dms\n", (char *)name, nRet, nTime); // script_pushstrcopy(st, _cmd); return 0; } BUILDIN_DEF(ping,"s")
Desde já muito obrigado, fiz algumas buscas mas não achei nada que possa me ajudar a fazer essa conversão ou até mesmo redigir o código para funcionar em linux.
-