Ir para conteúdo
Fórum Script Brasil

Frank K Hosaka

Membros
  • Total de itens

    1.623
  • Registro em

  • Última visita

Tudo que Frank K Hosaka postou

  1. <html lang="pt"> <meta charset="utf-8"> <head> <title>Um programa que monta tabela</title> <script> function start() { tbl=document.createElement("table") tblBody=document.createElement("tbody") row=document.createElement("tr") cell=document.createElement("td") cellText=document.createTextNode("Aluno(a)") cell.appendChild(cellText) row.appendChild(cell) tblBody.appendChild(row) tbl.appendChild(tblBody) document.body.appendChild(tbl) cell=document.createElement("td") cellText=document.createTextNode("Nota") cell.appendChild(cellText) row.appendChild(cell) tblBody.appendChild(row) tbl.appendChild(tblBody) document.body.appendChild(tbl) row=document.createElement("tr") cell=document.createElement("td") cellText=document.createTextNode("= = = = =") cell.appendChild(cellText) row.appendChild(cell) tblBody.appendChild(row) tbl.appendChild(tblBody) document.body.appendChild(tbl) cell=document.createElement("td") cellText=document.createTextNode("= = = = =") cell.appendChild(cellText) row.appendChild(cell) tblBody.appendChild(row) tbl.appendChild(tblBody) document.body.appendChild(tbl) row=document.createElement("tr") cell=document.createElement("td") cellText=document.createTextNode("João") cell.appendChild(cellText) row.appendChild(cell) tblBody.appendChild(row) tbl.appendChild(tblBody) document.body.appendChild(tbl) cell=document.createElement("td") cellText=document.createTextNode("9.0") cell.appendChild(cellText) row.appendChild(cell) tblBody.appendChild(row) tbl.appendChild(tblBody) document.body.appendChild(tbl) row=document.createElement("tr") cell=document.createElement("td") cellText=document.createTextNode("Carlos") cell.appendChild(cellText) row.appendChild(cell) tblBody.appendChild(row) tbl.appendChild(tblBody) document.body.appendChild(tbl) cell=document.createElement("td") cellText=document.createTextNode("DEZ") cell.appendChild(cellText) row.appendChild(cell) tblBody.appendChild(row) tbl.appendChild(tblBody) document.body.appendChild(tbl) row=document.createElement("tr") cell=document.createElement("td") cellText=document.createTextNode("Margarida") cell.appendChild(cellText) row.appendChild(cell) tblBody.appendChild(row) tbl.appendChild(tblBody) document.body.appendChild(tbl) cell=document.createElement("td") cellText=document.createTextNode("12.5") cell.appendChild(cellText) row.appendChild(cell) tblBody.appendChild(row) tbl.appendChild(tblBody) document.body.appendChild(tbl) row=document.createElement("tr") cell=document.createElement("td") cellText=document.createTextNode("Diana") cell.appendChild(cellText) row.appendChild(cell) tblBody.appendChild(row) tbl.appendChild(tblBody) document.body.appendChild(tbl) cell=document.createElement("td") cellText=document.createTextNode("15.0") cell.appendChild(cellText) row.appendChild(cell) tblBody.appendChild(row) tbl.appendChild(tblBody) document.body.appendChild(tbl) } </script> </head> <body onload="start()"></body> </html>
  2. <body style="width:50%;margin:0 auto"><div style="height:5%"></div> <form> <table> <tr><td>pergunta<td> <input name=pergunta> <tr><td>alternativa a<td> <input name=alternativa[]> <tr><td>alternativa b<td> <input name=alternativa[]> <tr><td>alternativa c<td> <input name=alternativa[]> <tr><td>alternativa d<td> <input name=alternativa[]> <tr><td>alternativa e<td> <input name=alternativa[]> <tr><td>resposta<td> <input name=resposta> <tr><td><input type=submit></table> </form> <?php if(!isset($_GET['pergunta'])){exit;} echo "gravar numa tabela de banco de dados <p>"; echo "pergunta: ".$_GET['pergunta']; echo "<p> alternativas:"; var_dump($_GET['alternativa']); echo "<p> resposta: ".$_GET['resposta'];
  3. <body style="width:50%;margin:0 auto"><div style=height:5%></div> <?php echo "valor obtido pelo banco de dados"; $vetor='[12,19,3,5,2,3]'; echo "<p><input id=vetor value=$vetor>"; echo "<p><input type=submit onclick=teste(vetor.value)>" ?> <div> <canvas id="myChart"></canvas> </div> <script src="https://cdn.jsdelivr.net/npm/chart.js"></script> <script> function teste(vetor){ jvetor=JSON.parse(vetor) console.log(jvetor) const ctx = document.getElementById('myChart'); new Chart(ctx, { type: 'bar', data: { labels: ['Red', 'Blue', 'Yellow', 'Green', 'Purple', 'Orange'], datasets: [{ label: '# of Votes', data: jvetor, borderWidth: 1}]}, options: {scales: {y: {beginAtZero: true}}}});} </script>
  4. <form method=post enctype="multipart/form-data"> <input type=file name="foto[]" multiple><p> <input type=submit> </form> <?php if(!isset($_FILES['foto'])){exit;} $arquivos=$_FILES['foto']; $names=$arquivos['name']; $tmp_names=$arquivos['tmp_name']; foreach($arquivos as $key=>$arquivo){ foreach($arquivo as $subkey=>$value){ $name=$names[$subkey]; $tmp=$tmp_names[$subkey]; move_uploaded_file($tmp,"c:/wamp64/www/astudy/$name");}}
  5. <?php $texto1="Qualquer texto de qualquer tamanho.Palavras65.00002020-05-26"; $texto2="Qualquer texto de qualquer tamanho.Qualquercoisa127.00002020-05-26"; $padrão=".0000"; $padrao1=strripos($texto1,$padrão); $padrao2=strripos($texto2,$padrão); for($i=0;$i<$padrao1;$i++){ $pos1=$i; if(ord($texto1[$i])>47 and ord($texto1[$i]<58)){break;}} for($i=0;$i<$padrao2;$i++){ $pos2=$i; if(ord($texto2[$i])>47 and ord($texto2[$i]<58)){break;}} echo "<p>".substr($texto1,$pos1,$padrao1-$pos1).$padrão; echo "<p>".substr($texto2,$pos2,$padrao2-$pos2).$padrão;
  6. <?php class pedido { public $itensPedido; public function setItensPedido($items){$this->itensPedido=$items;} public function getItem(){return $this->itensPedido[0];} public function getQtde(){return $this->itensPedido[1];} public function getValor(){return $this->itensPedido[2];} } $pedido = new pedido(); $pedido->setItensPedido(['repolho',1,3.49]); echo "<p>item: ".$pedido->getItem(); echo "<p>qtde: ".$pedido->getQtde(); echo "<p>valor:".$pedido->getValor();
  7. Fiz uma adaptação para usar aqui, usando o meu banco de dados, e fui tentando acompanhar a evolução do código com a ajuda do comando var_dump( ), até chegar no núcleo do programa: $file = fopen('c:/wamp64/www/astudy/backup_'.date("dmy", time()).'.'.$backup_file_format.'', "w+"); $lcmd='/*!40101 SET NAMES utf8 */;'.chr(13).chr(10); fwrite($file, $lcmd); esse comando deveria aparecer mais de uma vez para relacionar os outras informações que você esperava. Esse código que você passou está incompleto, ou o desenvolvedor abandonou o projeto por ver que é mais fácil usar o serviço do backup do PhpMyAdmin ou, no meu caso, do MySQL Workbench. Aqui a listagem do que eu consegui alterar: <?php $backup_file_format = "sql"; $backup=''; $tabelas=array(); $dbhost='localhost'; $dbname='astudy'; $dbuser='root'; $dbpass=''; $PDO = new PDO("mysql:host=$dbhost;dbname=$dbname;charset=utf8", $dbuser, $dbpass, array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'")); $PDO->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION ); $PDO->setAttribute( PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC ); if( !empty($dbname)){ $Tables = $PDO->query('SHOW TABLES')->fetchAll(); foreach( $Tables as $index => $data ){$tabelas[]=$data;} $erro=0; $file = fopen('c:/wamp64/www/astudy/backup_'.date("dmy", time()).'.'.$backup_file_format.'', "w+"); $lcmd='/*!40101 SET NAMES utf8 */;'.chr(13).chr(10); fwrite($file, $lcmd); $PDO->query( 'USE `astudy`' ); foreach( $tabelas as $index => $data ){ var_dump($tabelas); $create = $PDO->query( 'SHOW CREATE TABLE `'.$data.'`' )->fetchAll(); foreach( $create as $createTable){ $fcreate=$createTable['Create Table']. ";\n\n";} $select = $PDO->query( 'SELECT * FROM `'.$data.'`' )->fetchAll(); if(sizeOf($select)>0) { for( $i = 0; $i < sizeOf( $select ); ++$i ){ foreach( $select[ $i ] as $field => $value ){ $fields[ $field ] = '`'.$field.'`'; if( !is_numeric( $value ) ){ $values[ ] = sprintf( "'%s'", $value );} else { $values[ ] = ( float ) $value;} } $result[ ] = sprintf( '( %s )', implode( ', ', $values ) ); unset( $values );}}}}
  8. O mysqli_query precisa de dois argumentos. Ao invés de "$conn,insert...", o correto é "$conn","insert..."
  9. Frank K Hosaka

    Maps + PHP

    O Google só trabalha com dinheiro! Aliás, ninguém trabalha de graça. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" name="viewport" content="width=device-width, initial-scale=1"/> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous"> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/js/bootstrap.bundle.min.js" integrity="sha384-w76AqPfDkMBDXo30jS1Sgez6pr3x5MlQ1ZAGC+nuZB+EYdgRZgiwxhTBTkF7CXvN" crossorigin="anonymous"></script> <title>Google Map In PHP</title> </head> <body class="bg-info"> <nav class="navbar navbar-default" style="background-color: #0BA9FD"> <div class="container-fluid"> <a href="#" class="navbar-brand">Google Map For PHP</a> </div> </nav> <div class="col-md-3"></div> <div class="col-md-6 well" style="background-color: #0BA9FD"> <h3 class="text-primary">Display Google Map Data</h3> <hr style="border-top:1px dotted #ccc;"/> <button class="btn btn-primary" id="get_map"><span class="glyphicon glyphicon-location"></span> Load Map</button> <div id="map" style="height:500px; display:block;"></div> </div> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.1/jquery.min.js"></script> <script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyA-AB-9XZd-iQby-bNLYPFyb0pR2Qw3orw&callback=initMap" async defer></script> <script> var map; function initMap() { map = new google.maps.Map(document.getElementById('map'), { center: {lat: 9.5162, lng: 123.158}, zoom: 8 }); } </script> </body> </html>
  10. Para resolver esse problema criei essa tabela no MySQL: CREATE TABLE `usuariox` ( `id` int NOT NULL AUTO_INCREMENT, `usuariox` varchar(45) COLLATE utf8mb4_general_ci DEFAULT NULL, `senhax` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL, `nivel` int DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; INSERT INTO `usuariox` VALUES (1,'zé ninguém','$2y$10$qtuNz1MSlzGwvKFikO6VFO1JQ9rdxBUpIyyYqeuGYPx8uZ9i16yMe',1),(2,'zé alguém','$2y$10$qtuNz1MSlzGwvKFikO6VFO1JQ9rdxBUpIyyYqeuGYPx8uZ9i16yMe',1),(3,'zé aluno','$2y$10$qtuNz1MSlzGwvKFikO6VFO1JQ9rdxBUpIyyYqeuGYPx8uZ9i16yMe',2),(4,'zé pai','$2y$10$qtuNz1MSlzGwvKFikO6VFO1JQ9rdxBUpIyyYqeuGYPx8uZ9i16yMe',3); Eu defini a senha "1234" para todos eles assim: teste.php <?php $mysqli=new mysqli("localhost","root","","astudy"); $senha=password_hash("1234",PASSWORD_DEFAULT); $query=$mysqli->query("update usuariox set senhax='$senha'"); E finalmente eu fiz o meu login.php <!--nivel 1 index.php, 2 aluno.php e 3 pai.php--> <body style="width:50%;margin:0 auto"><div style=height:5%></div> <form method=post> <input placeholder=usuario name=usuario required><p> <input placeholder=senha name=senha required><p> <input type=submit> </form> <?php if(!isset($_POST['usuario'])){exit;} session_start(); $mysqli=new mysqli("localhost","root","","astudy"); $usuario = $_POST['usuario']; $senha = $_POST['senha']; $sql = "SELECT * FROM usuarioX WHERE usuarioX = '$usuario'"; $query = $mysqli->query("select * from usuariox where usuariox='$usuario'"); if(!$query->num_rows){echo "usuário não cadastrado!";exit;} $row = $query->fetch_assoc(); $senhabd = $row['senhax']; if(!password_verify($senha,$senhabd)){echo "senha não bate!";exit;} $nivel=$row['nivel']; $_SESSION['usuario']=$usuario; $_SESSION['nivel']=$nivel; if($nivel==1){echo "usuario nivel ".$_SESSION['nivel']." vai para index.php";exit;} if($nivel==2){echo "usuario nivel ".$_SESSION['nivel']." vai para aluno.php";exit;} if($nivel==3){echo "usuario nivel ".$_SESSION['nivel']." vai para professor.php";exit;} ?>
  11. Frank K Hosaka

    Dúvida PHP

    <?php $mysqli=new mysqli("localhost","root","","astudy"); $data=date('Y-m-d'); $dt1_parcela=date('Y-m-d',strtotime($data.'+ 2 days')); echo date('d/m/Y',strtotime($data))." + 2 dias = ". date('d/m/Y',strtotime($dtl_parcela)); $query=$mysqli->query("update tblreceber set dt1_parcela = '$dt1_parcela' where id between 99 and 106"); if(mysqli_affected_rows($mysqli)){echo "registros atualizados";} else {echo "problema!";}
  12. Eu também apanho muito com as classes. Faz três anos que estudo o PHP, e eu apanho muito. Mas eu sei que não basta criar a propriedade usuário na classe. Para você usar o método getUsuário, você precisa definir esse método na classe, assim: <?php class ponto { public $usuario; function setUsuario($nome){$this->usuario=$nome;} function getUsuario() {return strtolower($this->usuario);} } $array= [0 => ["registro" => 1,"data" => "13/10/2020","horario"=> "14:55 - 12:43", "nome" => "DANIEL GOMES SANTOS",], 1 => ["registro" => 2,"data" => "13/10/2020","horario" => "16:13 - 15:01", "nome" => "FERNANDA SANTOS"], 2 => ["registro" => 3,"data" => "13/10/2020","horario" => "16:12 - 15:18", "nome" => "LARISSA SANTOS"], 3 => ["registro" => 4,"data" => "13/10/2020","horario" => "16:11 - 15:29", "nome" => "CAIO SANTOS"]]; $lista=(json_decode(json_encode($array))); $ponto=new ponto(); echo "<table>"; foreach($lista as $item): $ponto->setUsuario($item->nome); $usuario=$ponto->getUsuario(); echo " <tr> <td> $item->registro <td> $item->data <td> $item->horario <td> $usuario <td><a href=?editar=$item->registro>[ Editar ]</a> <td><a href=?excluir=$item->registro>[ Excluir ]</a></td>"; endforeach; echo "</table>"; Nesse exempo, coloquei todos os nomes dos colaboradores em maíusculo no $array, mas o $ponto->getUsuario( ) vai retornar tudo em minúsculo. O mais chato é que você pode pode colocar uma variável qualquer ou até um item de um array dentro de aspas duplas, mas o método da classe, o PHP não aceita!
  13. Eu geralmente uso assim: <table> <tr><th>Cliente</th><th>Endereço</th></tr> <?php $mysqli=new mysqli("localhost","root","","astudy"); $query=$mysqli->query("select * from clientes"); while($row=$query->fetch_assoc()){ $cliente=$row['cliente']; $endereço=$row['endereco']; ?> <tr><td><?=$cliente?></td><td><?=$endereco?></td> <?php } ?> </table> Ou seja, eu uso o <th> para o cabeçalho da tabela e o <td> para as informações correspondentes ao cabeçalho. Se você quiser ajuntar o nome do cliente com o endereço, você terá que fazer assim <table> <tr><th>Cliente e Endereço</th></tr> <?php $mysqli=new mysqli("localhost","root","","astudy"); $query=$mysqli->query("select * from clientes"); while($row=$query->fetch_assoc()){ $cliente=$row['cliente']; $endereço=$row['endereco']; ?> <tr><td><?=$cliente." - ".$endereco?></td> <?php } ?> </table>
  14. Eu também tive esse problema no Laravel. Seja o valor 1.000,00. Para converter na linguagem do tio Sam, primeiro você tem que tirar o ponto, ele fica assim 1000,00. Depois é que você muda a vírgula para ponto = 1000.00 - ai o Laravel, o PHP e o JavaScript conseguem fazer a conta. No Laravel, a função ficou assim: function fmt($value){str_replace(".","",$value); return str_replace(",",".",$value);} Como fazer isso no JavaScript, aí já não sei.
  15. No Bootstrap quem controla a margem inferior é o mb, ele varia de 0 a 5 Spacing · Bootstrap v5.0 (getbootstrap.com). <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous"> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/js/bootstrap.bundle.min.js" integrity="sha384-w76AqPfDkMBDXo30jS1Sgez6pr3x5MlQ1ZAGC+nuZB+EYdgRZgiwxhTBTkF7CXvN" crossorigin="anonymous"></script> <body style="width:60%;margin:0 auto"><div style=height:10%></div> <div class="row row-cols-1 row-cols-md-3 mb-3 text-center"> <div class="col"> <div class="card mb-4 rounded-3 shadow-sm"> <div class="card-header py-3"> <h4 class="my-0 fw-normal"><img src='img.png'></h4> </div> <div class="card-body"> <h1 class="card-title pricing-card-title">R$ 95,00</h1> <ul class="list-unstyled mt-3 mb-1"> <li>Vestido</li> <li>Evangelico Rosa</li> <li>com linhas pretas</li> </ul> <button type="button" class="w-100 btn btn-lg btn-outline-primary">Comprar</button> </div> </div> </div> <div class="col"> <div class="card mb-4 rounded-3 shadow-sm"> <div class="card-header py-3"> <h4 class="my-0 fw-normal"><img src="img.png"></h4> </div> <div class="card-body"> <h1 class="card-title pricing-card-title">R$ 95,00</small></h1> <ul class="list-unstyled mt-3 mb-4"> <li>Vestido</li> <li>Evangelico Rosa</li> </ul> <button type="button" class="w-100 btn btn-lg btn-outline-primary">Comprar</button> </div> </div> </div> <div class="col"> <div class="card mb-4 rounded-3 shadow-sm"> <div class="card-header py-3"> <h4 class="my-0 fw-normal"><img src="img.png"></h4> </div> <div class="card-body"> <h1 class="card-title pricing-card-title">R$ 95,00</h1> <ul class="list-unstyled mt-3 mb-5"> <li>Vestido</li> <li></li> </ul> <button type="button" class="w-100 btn btn-lg btn-outline-primary">Comprar</button> </div> </div> </div> </div>
  16. Do jeito que você fez, eu não consegui. Montei a tabela pessoas assim: CREATE TABLE `pessoas` ( `id` int NOT NULL, `nome` varchar(45) COLLATE utf8mb4_general_ci DEFAULT NULL, `sobrenome` varchar(45) COLLATE utf8mb4_general_ci DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci Acrescentei os dados assim: id nome sobrenome 1 Ana Almeida 2 Pedro Almeida 3 Carlos Almeida 4 Maria Silva 5 Gustavo Souza 6 Aline Souza E eu fiz uma consulta assim: SELECT sobrenome,count(sobrenome) as parentes from pessoas group by sobrenome para conseguir esse resultado: sobrenome parentes Almeida 3 Silva 1 Souza 2
  17. Essa função devolve o resultado de uma divisão com duas casas decimais.
  18. <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Oswald|Roboto"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.css"> <script src="https://code.jquery.com/jquery-1.12.4.js"></script> <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> <script> $(document).ready(function() { $( function() { progressbar = $( "#progressbar" ), progressLabel = $( ".progress-label" ); progressbar.progressbar({value: false, change: function() {progressLabel.text( progressbar.progressbar( "value" ) + "%" ); }, complete: function() {setTimeout(2000); $("#progressbar").progressbar('option','value',0)}}); function progress() { val = progressbar.progressbar( "value" ) || 0; progressbar.progressbar( "value", val + 2 ); if ( val < 99 ) {setTimeout( progress, 80 );}} setTimeout( progress, 2000 ); } );}); </script> <style> .ui-progressbar { position: relative;} #progressbar { background: #F5FFFA;} .ui-progressbar .ui-progressbar-value { margin: 0;} .progress-label { position: absolute; text-align: center; width: 100%; color: #cccccc; font-family: 'Open Sans Condensed', sans-serif; font-size: 20px;} .ui-widget-header { background: #ec2528;} p { text-align: center; font-family: 'Open Sans Condensed', sans-serif; font-size: 26px;} .well { margin-top: 20px;} </style> <div class="container"> <div class="well"> <p>Aguardando novo pedido...</p> <div id="progressbar"><div class="progress-label">Aguardando...</div></div> </div></div>
  19. Esse caso é bem interessante. Sempre vi o PHP como um recurso para montar um formulário e com ele editar, acrescentar, deletar os registros de um banco de dados. O caso do Yago Felix é justamente o contrário. Ele usa o banco de dados para montar um formulário no PHP! Estudei o código dele, mas eu não consegui montar o formulário. Assim tive que criar um código na unha para ver se eu chegava no formuário do Yago Felix. Depois de dois dias eu consegui! Mas ao invés de usar três tabelas, eu usei apenas uma tabela: CREATE DEFINER=`root`@`localhost` PROCEDURE `sintoma`() BEGIN DROP TABLE IF EXISTS `sintomas`; CREATE TABLE `sintomas` ( `id` int NOT NULL AUTO_INCREMENT, `descricao` varchar(45) COLLATE utf8mb4_general_ci DEFAULT NULL, `detalhe` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL, `tipo` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL, `grau` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL, `tecnologia` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; INSERT INTO `sintomas` VALUES (1,'SINAIS E SINTOMAS CLINICOS','OD,OE\',FLUTUANTE,PROGRASSIVA,COM ZUMBIDO,COM TONTURA',NULL,NULL,NULL),(2,'PROVÁVEL ETIOLOGIA','DESCONHECIDA,GENÉTICA,SURDEZ,MÁ FORMAÇÃO CONGÊNITA,PRESBIACUSIA,ÓTITE MÉDIA CRÔNICA,PÓS-OPERATÓRIO,TCE,IDIOPÁTICA,USO DE OTÓXICO,FRATURA DO OSSO TEMPORAL',NULL,NULL,NULL),(3,'CAUSAS PERINATAIS','ANOXIA,PESO BAIXO,TRABALHO DE PARTO PROLONGADO,PREMATURIDADE,HIPERBILIRRUBINEMIA',NULL,NULL,NULL),(4,'DOENÇAS INFECCIOSAS','MENINGITE,SARAMPO,TOXOPLASMOSE,CAXUMBA,RUBÉOLA CONGÊNITA,OUTROS',NULL,NULL,NULL),(5,'CARACTERIZACAO DA PERDA','','NEUROSENSORIAL,CONDUTIVA,MISTA,CENTRAL','NORMAL,LEVE,MODERADA,SEVERA,PROFUNDA,ANACUSIA',NULL),(6,'PRÓTESE AUDITIVA',NULL,'RETRO AURICULAR OE,RETRO AURILICULAR OD,INTRA AURICULAR OD,INTRA AURICULAR OE,INTRA AURICULAR OD,INTRA CANAL OE,INTRA CANAL OD',NULL,'TIPO A OE,TIPO A OD,TIPO B OE,TIPO B OD,TIPO C OE,TIPO C OD,VIA ÓSSEA OE,VIA ÓSSEA OD');END astudy.php <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-gH2yIJqKdNHPEq0n4Mqa/HGKIhSkIHeL5AyhkYV8i59U5AR6csBvApHHNl/vI1Bx" crossorigin="anonymous"> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-A3rJD856KowSb7dwlZdYEkO39Gagi7vIsF0jrRAoQmDKKtQBHUuLZ9AsSv4jD4Xa" crossorigin="anonymous"></script> <style> body {font-size:70%;width:90%;margin:0 auto} .espaco {height:5%} input[type=checkbox]{vertical-align:middle;position:relative;bottom:1px} label{display:block} </style> <?php $mysqli=new mysqli("localhost","root","","astudy"); $query=$mysqli->query("select * from sintomas"); while($row=$query->fetch_assoc()){ echo "<div class=espaco></div>"; echo "<div class='d-flex bg-primary justify-content-center'>"; echo "<b>".$row['descricao']."</b><br></div>"; $detalhes=explode(",",$row['detalhe']); echo "<div class='d-flex text-bg-lightgray justify-content-center'>"; if(strlen($detalhes[0])){ for($i=0;$i<count($detalhes);$i++){ echo "&nbsp<label><input type=checkbox>&nbsp".$detalhes[$i]."</label>&nbsp"; } echo "<br>";} echo "</div>"; echo "<div class='d-flex text-bg-lightgray justify-content-center'>"; $tipo=explode(",",$row['tipo']); if(strlen($tipo[0])){echo "TIPO: "; for($i=0;$i<count($tipo);$i++){ echo "&nbsp<label><input type=checkbox>&nbsp".$tipo[$i]."</label>&nbsp";} echo "<br>";} echo "</div>"; echo "<div class='d-flex text-bg-lightgray justify-content-center'>"; $grau=explode(",",$row['grau']); if(strlen($grau[0])){echo "GRAU: "; for($i=0;$i<count($grau);$i++){ echo "&nbsp<label><input type=checkbox>&nbsp".$grau[$i]."</label>&nbsp";} echo "<br>";} echo "</div>"; echo "<div class='d-flex text-bg-lightgray justify-content-center'>"; $tecnologia=explode(",",$row['tecnologia']); if(strlen($tecnologia[0])){echo "TECNOLOGIA: "; for($i=0;$i<count($tecnologia);$i++){ echo "&nbsp<label><input type=checkbox>&nbsp".$tecnologia[$i]."</label>&nbsp";} echo "<br>";} echo "</div>"; }
  20. Geralmente, o formulário do cadastro está amarrado com uma tabela correpondente lá no MySQL. Tanto o MySQL como o formulário podem controlar a numeração, mas nos dois casos esse tipo de campo não permite a repetição de códigos que já foram utilizados, esse é o argumento técnico. Na prática, imagine que você pergunta ao cliente se ele lembra o código dele. Aí ele vai perguntar: qual código, o que foi atribuido em 2023, 2022 ou 2021? Ou seja, se você for precisar fazer o histórico do cliente, aí a coisa complica: Select faturamento from tbvendas where codcliente in 2023 = 10.477 and codcliente in 2022 = 7.116 and codcliente in 2021 = 70.118...
  21. Ao invés de trabalhar com múltiplos uploads, eu achei melhor começar com apenas um upload, principalmente porque o meu PHP veio configurado para fazer upload de no máximo 2 mb. Eu alterei para 8 mb, através do ícone do WampServe > PHP > PHP Settings. Acrescentei a extensão 'sql' nas extensões permitidas, pedindo para esse tipo de extensão ser aquivado na pasta2, e os demais na pasta1. <form method=post enctype=multipart/form-data> <input type=file name=arquivo> <input type=submit> </form> <?php if(!isset($_FILES['arquivo']['name'])){exit;} $arquivo = $_FILES['arquivo']['name']; $extensao = explode('.', $_FILES['arquivo']['name'])[1]; if($extensao=='sql'){$pasta="./pasta2/";} else {$pasta="./pasta1/";} $_UP['pasta'] = $pasta; $_UP['tamanho'] = 1024*1024*100; $_UP['extensoes'] = array('png', 'jpg', 'jpeg', 'gif', 'sql'); $_UP['renomeia'] = false; $_UP['errors'][0] = 'Não houve erro'; $_UP['errors'][1] = 'O arquivo no upload é maior que o limite do PHP'; $_UP['errors'][2] = 'O arquivo ultrapassa o limite de tamanho especificado no HTML'; $_UP['errors'][3] = 'O upload do arquivo foi feito parcialmente'; $_UP['errors'][4] = 'Não foi feito o upload do arquivo'; if($_FILES['arquivo']['error'] != 0){ die("Não foi possivel fazer o upload, erro: <br />". $_UP['errors'][$_FILES['arquivo']['error']]);} if(array_search($extensao, $_UP['extensoes'])=== false){ echo "O produto não foi inserido, extesão inválida.";} else if ($_UP['tamanho'] < $_FILES['arquivo']['size']){ echo "Arquivo muito grande.";} else{ if($_UP['renomeia'] == true){ $nome_final = time().'.jpg'; }else{$nome_final = $_FILES['arquivo']['name']; } if(move_uploaded_file($_FILES['arquivo']['tmp_name'], $_UP['pasta']. $nome_final)){ echo "Upload efetuado com sucesso";}} ?>
  22. Frank <a href=?email=frankhosaka@gmail.com><button>Ver</button></a><p> Tiago <a href=?email=thiagoaf19@gmail.com><button>Ver</button></a><p> <?php if(!isset($_GET['email'])){exit;} $email=$_GET['email']; echo "Select placas from tbplacas where email=$email";
  23. O comando sleep foi feito para o PHP descansar por alguns ou vários segundos antes de exibir o conteúdo. Ele não foi feito para exibir o conteúdo por partes. Quem pode fazer essa mágica é o JavaScript, mas eu não tenho nenhuma experiência com ele.
  24. O erro está na segunda linha, onde se você escreveu $host = "mysql:busca;host=localhost"; o correto é: $host = "mysql:dbname=busca;host=localhost";
  25. Primeiro, eu preciso da estrutura da tabela que contém os clientes. Fico no aguardo.
×
×
  • Criar Novo...