O meu conhecimento em HTML é precário, o máximo que eu aprendi foi usar o marcador <table>.
Eu criei três <table>, um dentro do outro. Eu acreditava que era impossível colocar um <table> do lado do outro, mas a Gemini disse que é possível, assim:
<table style=float:left>
<tr> <td>
<tr> <td> <table style=float:right>
Como a Gemini é 50% confiável, fiz o teste, e funcionou!
Arquivo MVC.php (provisório, estou usando no lugar do Index.php)
<?php
ini_set('display_errors',1);require __DIR__ .'/Modelos/Config.php';if($_GET){
$comando=explode('_',key($_GET));
$controle=new $comando[0];
$funcao=$comando[1];if(count($comando)==3){
$_GET[$funcao]=$comando[2];}
call_user_func(array($controle,$funcao));}else{
$login=newControleLogin();
$login->login();}ArquivoModelos/Config.php
<?php
date_default_timezone_set('America/Sao_Paulo');defined('PROJETO')|| define('PROJETO',$_SERVER['DOCUMENT_ROOT'].'/Frank/');defined('CONTROLES')|| define('CONTROLES',PROJETO.'/Controles/');defined('MODELOS')|| define('MODELO',PROJETO.'/Modelos/');defined('VISOES')|| define('VISOES',PROJETO.'/Visoes/');defined('HOST')|| define('HOST','localhost');defined('DBNAME')|| define('DBNAME','Diario');defined('USER')|| define('USER','Root');defined('PASSWORD')|| define('PASSWORD','14061406');
spl_autoload_register(function($Class){
$includeDir =false;
$findDir =['Controles','Modelos','Visoes'];foreach($findDir as $DirName){if(!$includeDir
&& file_exists(FindClass($DirName, $Class))&&!is_dir(FindClass($DirName, $Class))){
include_once (FindClass($DirName, $Class));
$includeDir =true;}}if(!$includeDir){die("$Class - Erro interno no servidor ao encontrar dados
cruciais de funcionamento!");}});functionFindClass($dir, $class){return(
$_SERVER['DOCUMENT_ROOT']. DIRECTORY_SEPARATOR .'/frank/'. DIRECTORY_SEPARATOR . $dir
. DIRECTORY_SEPARATOR . $class .'.php');}function apuracao($dia){
$ano=date('Y',strtotime($dia));
$mes=date('m',strtotime($dia));
$mesVetor=['Janeiro','Fevereiro','Março','Abril','Maio','Junho','Julho','Agosto','Setembro','Outubro','Novembro','Dezembro'];
$apuracao=$mesVetor[$mes-1]." de $ano";
$primeiroDia="$ano-$mes-01";
$ultimoDia=date('Y-m-t',strtotime($primeiroDia));return json_decode(json_encode(['apuracao'=>$apuracao,'primeiroDia'=>$primeiroDia,'ultimoDia'=>$ultimoDia]));}function dec($value){if($value==null){returnnull;}return number_format($value,2,',','.');}function deca($num){
$value=str_replace(".","",$num);return str_replace(",",".",$value);}function fmt($date){return date('d/m/y',strtotime($date));}ArquivoControles/ControleVenda.php
<?php
classControleVendaextendsControle{publicfunction inicio(){
$detalhes=[];$detalhe="";if(isset($_GET['inicio'])){
$detalhe=$_GET['inicio'];
$detalhes=$this->Conexao->select("* from tbpedido where dia='$detalhe'
and horavenda is not null
group by horavenda
order by horavenda desc");}if(!isset($_SESSION['apuracao'])){
$_SESSION['apuracao']=date('Y-m-1');}
$primeiroDia=apuracao($_SESSION['apuracao'])->primeiroDia;
$ultimoDia=apuracao($_SESSION['apuracao'])->ultimoDia;
$grupos=$this->Conexao->select("date(horavenda) as ddia,sum(total) as ttotal from tbpedido
where date(horavenda) between '$primeiroDia' and '$ultimoDia' and horavenda is not null
group by ddia order by ddia desc");
$vendaMensal=$this->Conexao->select("date_format(horavenda,'%Y-%m') as mes,
sum(total) as total from tbpedido where horavenda is not null
group by mes order by mes desc");return $this->view('Venda',['grupos'=>$grupos,'vendaMensal'=>$vendaMensal,'detalhes'=>$detalhes,'detalhe'=>$detalhe]);}publicfunction apuracao(){
$_SESSION['apuracao']=$_GET['apuracao']."-1";return $this->inicio();}}ArquivoVisoes/Venda.php
<?php include VISOES ."Menu.php";?><script>
document.title="Relatório de Vendas"
btmenu.innerHTML="Relatório de Vendas"</script><tableclass='table table-striped linha w-25'style=float:left><tr><tdcolspan=2>Detalhe por mês
<?php foreach($vendaMensal as $venda):?><tr><td><a href=?ControleVenda.apuracao.<?=$venda->mes?>><?=$venda->mes?></a> => R$
<tdclass='text-danger text-end'><?=dec($venda->total)?><?php endforeach;?></table><tableclass='table table-striped linha w-25'style=float:right><tr><tdcolspan=2>Detalhe por dia
<trclass=fw-semibold><td>Dia<tdclass=text-end>Total
<?php foreach($grupos as $grupo):?>
<tr class=fw-semibold onclick="location.replace('?ControleVenda.inicio.<?=$grupo->ddia?>')">
<td><?=date('d/m/y',strtotime($grupo->ddia))?><tdclass=text-end><ahref=?ControleVenda.inicio><?=dec($grupo->ttotal)?></a><?php if($detalhe==$grupo->ddia):?><tr><td><tableclass="table table-striped linha"><trclass=fw-semibold><td><?=$grupo->ddia?><td>Pedido<td>Total<td>dinheiro<td>troco<td>cartão<td>pix
<?php foreach($detalhes as $grupo):?><tr><tdclass=text-end><?=date('H:i',strtotime($grupo->horavenda))?><tdclass=text-end><?=$grupo->ped?><tdclass=text-end><?=dec($grupo->total)?><tdclass=text-end><?php if(abs($grupo->dinheiro)>0):?><?=dec($grupo->dinheiro)?><?php endif;?><tdclass=text-end><?php if(abs($grupo->troco)>0):?><?=dec($grupo->troco)?><?php endif;?><tdclass=text-center><?php if($grupo->cartao==1):?>
x
<?php endif;?><tdclass=text-center><?php if($grupo->pix==1):?>
x
<?php endif;?><?php endforeach;?></table><?php endif;?><?php endforeach;?>
Pergunta
Frank K Hosaka
O meu conhecimento em HTML é precário, o máximo que eu aprendi foi usar o marcador <table>.
Eu criei três <table>, um dentro do outro. Eu acreditava que era impossível colocar um <table> do lado do outro, mas a Gemini disse que é possível, assim:
<table style=float:left>
<tr> <td>
<tr> <td> <table style=float:right>
Como a Gemini é 50% confiável, fiz o teste, e funcionou!
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.