Ir para conteúdo

POWERED BY:

washalbano

Members
  • Total de itens

    374
  • Registro em

  • Última visita

  • Dias vencidos

    11

Tudo que washalbano postou

  1. washalbano

    PHP - Capturar ID do SELECT

    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" crossorigin="anonymous"> <?php function base_url() { return '/'; } $dprts = [ (object) [ 'idDepartamento' => 1, 'departamento' => 'Departamento 1', ], (object) [ 'idDepartamento' => 2, 'departamento' => 'Departamento 2', ], ]; ?> <div class="container"> <div class="row"> <div class="col-md-6"> <label for="tipoDepart" class="control-label">Departamento:</label> <select name="tipoDepart" id="tipoDepart" style="width:100%;" class="form-control"> <option value="">Selecione um Departamento</option> <?php foreach ($dprts as $dp) { echo '<option value="' . $dp->idDepartamento . '">' . $dp->departamento . '</option>'; } ?> </select> </div> <div class="col-md-6"> <div class="card card-entrad"> <div class="card-header"> <label class="card-tlentr">Entrada - Estoque</label> </div> <div class="card-body"> <div style="text-align:center;"> <a href="#" id="getRequestAnchor" class="btn btn-cinza btn-primary disabled">Adicionar</a> </div> </div> </div> </div> </div> </div> <script> tipoDepart.onchange = ({ target }) => { getRequestAnchor.classList.add('disabled') getRequestAnchor.setAttribute('href', '#') if (target.value) { getRequestAnchor.classList.remove('disabled') getRequestAnchor.setAttribute('href', `<?php echo base_url(); ?>estoque/ajuste/adicionar/${target.value}`) } } </script>
  2. washalbano

    PHP - Login com redirecionamento

  3. washalbano

    PHP - Dúvida referente informação de POST

    Saudações! essa notação é de 1 objeto essa notação é 1 array de objetos Se os dois estão corretos, o script deveria funcionar da mesma forma, depois de submetidos os dados. Não deveria falhar. É preciso investigar/debugar melhor
  4. washalbano

    PHP - Login com redirecionamento

    Saudações! Há algumas maneiras de se resolver. Seu login é feito via ajax. O redirect provavelmente é feito via javascript. O sr. pode acrescentar uma variável de sessão para verificar se o user já escolheu a empresa, se não, mostre a tela de escolha.
  5. washalbano

    Formatação de campo nuemrico

    Olá! Tente assim: document.querySelector("input").oninput = ({ target }) => { const maskedValue = target.value // remove o que não for dígito .replace(/\D/g, "") // remove leading zeroes .replace(/^0+(?!$)/, "") // acrescenta leading zeroes .replace(/^(\d)$/, "00$1") // acrescenta leading zero .replace(/^(\d{2})$/, "0$1") // acrescenta ponto a cada três dígitos .replace(/\B(?=(\d{3})+(?!\d))/g, "."); target.value = maskedValue; }; https://codepen.io/washalbano/pen/ExzQXvB?editors=1011
  6. washalbano

    Sistema não funciona corretamente

    Já melhorou muito, heim??? Com foi que mudou tanto assim? Já está funcionando! Só precisei diminuir uma descida de nível ali
  7. washalbano

    Sistema não funciona corretamente

    Olá! Percebi que seu sistema não define rotas, mas sim executa e sai exit() da execução. Dessa forma, sempre será executada apenas e somente a primeira rota. Acredito que precisar efetuar 2 procedimentos: 1) definir as rotas 2) executar a rota, conforme a REQUEST_URI atual
  8. washalbano

    Abrir url na mesma janela

    tente com location.replace: https://developer.mozilla.org/en-US/docs/Web/API/Location/replace
  9. washalbano

    Insert em PHP com muitos campos

    faltou abrir aspas simples pro li.mp4
  10. washalbano

    Upload de multiplos arquivos com PHP

    Olá! Segue sugestão: js function Carrega() { const fileInput = document.getElementById("arquivo"); const fData = new FormData(); for (file of fileInput.files) { fData.append('arquivo[]', file); } $.ajax({ url: "upload.php", method: "POST", data: fData, contentType: false, cache: false, processData: false, beforeSend: function () { $('#respimg').html("Enviando..."); }, success: function (data) { $('#msgret').html(data); } }); } php if (isset($_FILES['arquivo'])) { for ($i = 0; $i < count($_FILES['arquivo']['name']); $i++) { $nomeArquivo = $_FILES['arquivo']['name'][$i]; $tamanhoArquivo = $_FILES['arquivo']['size'][$i]; $nomeTemporario = $_FILES['arquivo']['tmp_name'][$i]; echo "<pre>Arquivo <b>$i</b>: "; print_r([$nomeArquivo, $tamanhoArquivo, $nomeTemporario]); echo '</pre>'; } }
  11. washalbano

    Insert em PHP com muitos campos

    E dá algum erro? Consegue transcrever ou enviar screenshot pra gente tentar entender?
  12. washalbano

    próxima image

    Imagine que as fotos estão dentro de um container com barra de rolagem oculta e ao clicar em prev/next o container será movido Xpx pra esquerda ou para a direita. segue sugestão: <div class="slider"> <div class="images-container"> <figure class='active'><img src="https://picsum.photos/400/300?random=1" /></figure> <figure><img src="https://picsum.photos/400/300?random=2" /></figure> <figure><img src="https://picsum.photos/400/300?random=3" /></figure> <figure><img src="https://picsum.photos/400/300?random=4" /></figure> <figure><img src="https://picsum.photos/400/300?random=5" /></figure> </div> <div class="controllers"> <button id='prev'>&#10094;</button> <button id='next'>&#10095;</button> </div> </div> <div class="log"> <p></p> </div> * { box-sizing: border-box; } .slider { overflow-x: hidden; position: relative; } .slider .images-container { display: flex; position: relative; width: 100%; transition: all 0.2s ease; } .slider figure { display: flex; margin: 0; min-width: 100%; justify-content: center; } .slider .controllers { position: absolute; top: 50%; width: 100%; display: flex; justify-content: space-between; transform: translateY(-50%); } .log { display: flex; } .log > p { font-family: monospace; white-space: pre; margin: 12px; padding: 12px; border-left: thin solid #eee; } const log = document.querySelector("div.log"); const slider = document.querySelector("div.slider"); const imagesContainer = slider.querySelector(".images-container"); const figuresCollection = [...imagesContainer.children]; let activeFigure; let activeIndex; let figureWidth; const setImagesContainerPosition = () => { console.log("activeIndex :>> ", activeIndex); imagesContainer.style.transform = `translateX(-${ activeIndex * activeFigure.offsetWidth }px)`; }; const moveSlider = (direction) => { // select active figure activeFigure = slider.querySelector("figure.active"); // detect index of active figure const prevIndex = figuresCollection.indexOf(activeFigure); activeIndex = (direction === "right" ? prevIndex + 1 : prevIndex - 1 + figuresCollection.length) % figuresCollection.length; setImagesContainerPosition(); // remove active from activeFigure.classList.remove("active"); figuresCollection[activeIndex].classList.add("active"); log.querySelector("p").innerHTML = JSON.stringify( { prevIndex, activeIndex }, null, 2 ); }; next.onclick = () => { moveSlider("right"); }; prev.onclick = () => { moveSlider("left"); }; window.onresize = setImagesContainerPosition; veja exemplo rodando aqui: https://codepen.io/washalbano/pen/ExrKGYZ
  13. washalbano

    Autocomplete com CI4 e Javascript

    tente assim: const resposta = await dados.json(); A função carregar_cidade, não coloca a <ul> criada em lugar algum da página atual. Um controller que vai devolver um json, não precisa carregar uma view. Se estiver extendendo do BaseController, use o $response que ele inicia, assim: return $this->response->setStatusCode(200) ->setContentType('application/json') ->setJSON($seu_array_de_dados);
  14. washalbano

    separar html do javaScript

    Olá! Se entendi... não precisa repetir os trechos de js Veja se era isso: <div class="slider-kind first"> <div class="images-container"> <a href="link5.php" target="_blank"><img src="https://picsum.photos/600/300?random=1" /></a> <a href="link6.php" target="_blank"><img src="https://picsum.photos/600/300?random=2" /></a> <a href="link7.php" target="_blank"><img src="https://picsum.photos/600/300?random=3" /></a> <a href="link8.php" target="_blank"><img src="https://picsum.photos/600/300?random=4" /></a> </div> </div> <div class="slider-kind second"> <div class="images-container"> <a href="link1.php" target="_blank"><img src="https://picsum.photos/400/200?random=5" /></a> <a href="link2.php" target="_blank"><img src="https://picsum.photos/400/200?random=6" /></a> <a href="link3.php" target="_blank"><img src="https://picsum.photos/400/200?random=7" /></a> <a href="link4.php" target="_blank"><img src="https://picsum.photos/400/200?random=8" /></a> </div> </div> <div class="slider-kind third"> <div class="images-container"> <a href="link1.php" target="_blank"><img src="https://picsum.photos/700/200?random=9" /></a> <a href="link2.php" target="_blank"><img src="https://picsum.photos/700/200?random=10" /></a> <a href="link3.php" target="_blank"><img src="https://picsum.photos/700/200?random=11" /></a> <a href="link4.php" target="_blank"><img src="https://picsum.photos/700/200?random=12" /></a> </div> </div> .slider-kind { display: flex; justify-content: center; height: 300px; } .slider-kind.second { height: 200px; } .slider-kind .images-container img { position: absolute; transform: translateX(-50%); z-index: 1; transition: all 0.2s ease; opacity: 0; } .slider-kind .images-container img[active] { z-index: 2; animation: fadeIn 0.3s ease forwards; } @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } function setActiveSlide(container) { const images = container.querySelectorAll('img') const removeActiveAttribute = () => images.forEach(image => image.removeAttribute('active')) const toggleSlide = indexImageToActivate => { removeActiveAttribute() images[indexImageToActivate].setAttribute('active', true) } const indexActive = Math.floor(Math.random() * images.length) toggleSlide(indexActive) } function makeSliderKind(selector, intervalTime) { const imagesContainer = document.querySelector(selector) let intervalRef = setInterval(() => setActiveSlide(imagesContainer), intervalTime) } makeSliderKind('.first', 1500) makeSliderKind('.second', 2500) makeSliderKind('.third', 500) https://codepen.io/washalbano/pen/VwqxMvw
  15. washalbano

    itens do select

    Olá! Segue sugestão: https://codepen.io/washalbano/pen/NWELpbv let selectedElement const arrowUp = document.getElementById('id1') const arrowDown = document.getElementById('id2') // define o elemento select const select = document.getElementById('carros') // quando o select sofrer alteração select.onchange = (e) => { // define o index selecionado const selectedIndex = e.target.selectedIndex selectedElement = select.options[selectedIndex] } function setaPraCima() { if ((prevElement = selectedElement.previousElementSibling)) { select.insertBefore(selectedElement, prevElement) } } function setaPraBaixo() { if ((nextElement = selectedElement.nextElementSibling)) { select.insertBefore(nextElement, selectedElement) } } arrowUp.onclick = setaPraCima arrowDown.onclick = setaPraBaixo
  16. washalbano

    listar somente dados numéricos

    Olá! Você pode usar uma expressão regular para trazer somente os resultados onde a coluna codigo contenha somente e apenas números, usando uma regex, assim: SELECT * FROM tab_aprendiz WHERE codigo REGEXP '^[0-9]+$';
  17. washalbano

    Problema acentuação MySQL

    Olá! Primeira sugestão é ajustar o texto no seu database, para que visualize corretamente. Como o colega sugeriu acima, no mysqli, se define utf-8 para a conexão assim: // definição de variáveis para conexão $host = 'localhost'; // servidor $user = 'root'; // nome do utilizador $pass = 'my-secret-pw'; // senha ou password $database = 'imasters'; // nome da base de dados // estabelecer conexão: $sqli = new mysqli($host, $user, $pass); // definir o padrão de caracteres $sqli->set_charset('utf8'); // selecionar/abrir o banco de dados para trabalhar $sqli->select_db($database)
  18. washalbano

    banco de dados - imprimir quantidade de tabelas

    Olá! Testei aqui e funcionou muito bem. Veja: <?php // definição de variáveis para conexão $host = 'localhost'; // servidor $user = 'root'; // nome do utilizador $pass = 'my-secret-pw'; // senha ou password $database = 'studies'; // nome da base de dados // estabelecer conexão: $sqli = new mysqli($host, $user, $pass); // verificando se conectou de boas: if ($sqli->connect_error) { // se houver alguma falha, exibe mensagem: die('<p class="text-danger">Falha na conexão: ' . $sqli->connect_error . '</p>'); } // definir o padrão de caracteres if (!$sqli->set_charset('utf8')) { // se não conseguir definir o padrão de caracteres, exibe o padrão disponível die("<p class='text-danger'>Seu charset não é utf8, chefe!<br>$sqli->character_set_name()</p>"); } // selecionar/abrir o banco de dados para trabalhar if (!$sqli->select_db($database)) { // se o banco de dados não for encontrado die("<p class='text-danger'>Banco de dados não encontrado, chefe!</p>"); } $query = "SELECT count(*) AS totalNumberOfTables FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = '$database'"; $result = $sqli->query($query); if ($result->num_rows > 0) { echo '<pre>$totalNumberOfTables: '; print_r($result->fetch_all(MYSQLI_ASSOC)); echo '</pre>'; }
  19. washalbano

    Não consegui usar o comando for do JavaScript

    Olá! Não consegui entender. No final, conseguiu ou não?
  20. washalbano

    Dois arquivos com a mesma sintaxe mas só um funciona - Erro 500

    Olá! Certifique-se de que a exibição de erros está ativa. Pode ser falha na conexão com o database.
  21. washalbano

    Paginação com nível de acesso

    Olá! Aparentemente, uma falha na lógica. Uma vez que um user logado só pode acessar o que lhe é permitido, toda e qualquer query deverá conter alguma variável limitadora de acordo com o user logado. Desta forma, um user não terá acesso a algo que ñ lhe é permitido. Quando montar a query de paginação, passe um where unidade = '$unidade-do-user-logado'
  22. washalbano

    Ler variavel fora do foreach

    Olá! O ideal seria nos dizer o que precisa fazer. Talvez apareça uma orientação ideal. Para continuar como está, primeiro é preciso descobrir qual é o conteúdo de $turma. Se o trecho de código exibo funciona, acredito que seria +- assim: Usando a posição você teria os nomes <?=$turma[0]['nome']?> <?=$turma[1]['nome']?> <?=$turma[2]['nome']?>
  23. washalbano

    Combobox estados e cidades PHP MYSQL

    Olá! Há uma pá de adequações a serem feitas, para se ter um código mais "robusto". Mas tentando ir direto ao ponto... perceba que nesta linha você coloca um sinal de igual nesta linha você espera receber a variável id_estado tente assim: fetch("select_cons_municipio.php?id_estado=" + valor) e veja se a mensagem de erro muda
  24. washalbano

    || [] duas barras antes de um arrray

    A duas pipebars significam ou logo, cart será igual ao resultado do JSON.parse ou um array vazio: [] Se JSON.parse falhar, retornar null, undefined, false... é igual se usa no if if(false OR true) if(false || true)
  25. washalbano

    Desempenho em múltiplos insert com PDO

    Para requisições concorrentes, desde que se use transactions, não há problema algum. https://www.php.net/manual/pt_BR/pdo.transactions.php https://www.php.net/manual/pt_BR/mysqli.begin-transaction.php Desta forma, nenhuma requisição causará interferência em outra, mesmo que sejam requisitadas no exato mesmo instante
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.