Jump to content

Search the Community

Showing results for tags 'html'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Comunidade
    • Sugestões, Críticas ou Dúvidas relativas ao P@P
    • Acerca do P@P
  • Comunidade a Trabalhar
    • Apresentação de Projectos de Programação
    • Downloads
    • Revista PROGRAMAR
  • Desenvolvimento Geral
    • C
    • C++
    • Java
    • Pascal
    • Python
    • Bases de Dados
    • Dispositivos Móveis
    • Outras Linguagens
  • Desenvolvimento Orientado para Web
    • PHP
    • HTML
    • CSS
    • Javascript
    • Outras Linguagens de WebDevelopment
    • Desenvolvimento Web
  • Desenvolvimento .NET
    • C#
    • Visual Basic .NET
    • ASP.NET
    • WPF & SilverLight
  • Software e Sistemas Operativos
    • Software de Produtividade
    • Sistemas Operativos
    • Apresentação de Software
  • Informática
    • Interfaces Visuais
    • Computação Gráfica
    • Algoritmia e Lógica
    • Segurança e Redes
    • Hardware
    • Electrónica e Automação Industrial
    • Matemática
    • Software de Contabilidade, Finanças e Admin. Pública
    • Dúvidas e Discussão de Programação
  • Outras Áreas
    • Notícias de Tecnologia
    • Dúvidas Gerais
    • Discussão Geral
    • Eventos
    • Anúncios de Emprego
    • Tutoriais
    • Snippets / Armazém de Código
  • Arquivo Morto
    • Projectos Descontinuados
    • System Empires

Blogs

  • Blog dos Moderadores
  • Eventos
  • Notícias de Tecnologia
  • Blog do Staff
  • Revista PROGRAMAR
  • Projectos
  • Wiki

Categories

  • Revista PROGRAMAR
  • Tutoriais
  • Textos Académicos
  • Exercícios Académicos
    • Exercícios c/ Solução
    • Exercícios s/ Solução
  • Bibliotecas e Aplicações
  • Outros

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Website


GitHub


LinkedIn


Twitter


Facebook

  1. Boa tarde a todos, tenho em meu formulário o seguinte input <input type="text" name="codigo_barras[]" id="codigo_barras" onkeyup="searchProdutos(1)" class="input-adm sizefour" autocomplete="on" required> no meu javascript tenho o seguinte: function searchProdutos(registo){ //recebe o valor que o usuário digitar const codigoBarras = document.querySelector('#codigo_barras'+registo); const valueCodigoBarras = codigoBarras.value; } Conforme começo a digitar no campo ocorre o seguinte erro: custom_adms.js:1014 Uncaught TypeError: Cannot read properties of null (reading 'value') at searchProdutos (custom_adms.js:1014:42) at HTMLInputElement.onkeyup (index:215:163) Já alterei o name e id de "código_barras" para "codigoBarras" ou "codigobarras" e continua o mesmo.
  2. Boa noite a todos, tenho um formulário como se fosse um carrinho de compras. no form tenho a tabela da seguinte forma: <input type="button" name="addProduto" id="addProduto" class="input-adm btn-warning" value="Incluir"> <table class="table-list"> <thead class="list-head"> <tr> <th class="list-head-content sizeone table-md-none">Código Barras</th> <th class="list-head-content sizefive table-md-none">ID</th> <th class="list-head-content sizetwo">Nome do produto</th> <th class="list-head-content sizethree">Quantidade</th> <th class="list-head-content sizefour">Ações</th> </tr> </thead> <tbody class="list-body"> </tbody> </table> Em javascript adiciono os produtos a tabela, o adicionar está funcionando, mas o remover não funciona, o que errei? //Adicionar Produtos ao carrinho document.getElementById('addProduto').addEventListener('click', incluirProduto) //Remover Produtos ao carrinho document.getElementById('.remove').addEventListener('click', removerProduto) function incluirProduto(){ const selectProduct = document.getElementById('adms_produto_id') const optionText = selectProduct.options[selectProduct.selectedIndex].text const id = selectProduct.options[selectProduct.selectedIndex].value const barcode = selectProduct.options[selectProduct.selectedIndex].getAttribute('data-barcode') const qtde = document.getElementById('qtde').value const html = `<tr><td class="list-body-content table-md-none sizeone"><input type="text" name="codigo_barras[]" id="codigo_barras" class="input-adm" placeholder="Código Barras" autocomplete="on" required value="${barcode}"></td><td class="list-body-content table-md-none sizefive" name="id[]">${id}</td><td class="list-body-content sizetwo">${optionText}</td><td class="list-body-content sizethree"><input type="number" name="qtde[]" id="qtde" class="input-adm" placeholder="Qtde" autocomplete="off" required value="${qtde}"></td><td><input type="button" class="input-adm btn-danger" name="remove" id="remove" value="Remover"></td></tr>`; const x = 1; document.querySelector('tbody.list-body').innerHTML += html } function removerProduto(){ document.querySelector('tbody.list-body').closest('tr').remove(); }
  3. Boa tarde a todos, ca estou eu mais uma a solicitar a vossa ajuda. Tenho um formulário com uma tabela, nesta tabela tenho uma coluna que esta oculta com o style="display:none;" por o style="visibility:hidden;" fica o espaço em branco e não quero. até aqui esta tudo bem, mas gostaria enviar para a model os valores desta tabela, mas como a coluna esta como style="display:none;" não envia. Como faço para poder ocultar a coluna, mas mesmo assim conseguir enviar os dados ocultos? essa não é a tabela toda, apenas parte dela <tr> <td class="table"> <input type="text" name="codigo_barras[]" id="codigo_barras" class="input" placeholder="Código Barras" autocomplete="on" required> 560001 </td> <td style="display:none;" name="id[]"> 1 </td> <td class="list-content"> bisturi </td> <td class="list-content"> <input type="number" name="qtde[]" id="qtde" class="input" placeholder="Qtde" autocomplete="off" required > </td> <td> <input type="button" class="btn-danger" name="remove" id="remove" value="remove"> </td> </tr>
  4. Boa tarde a todos, preciso de uma rotina ou função que apague todos os arquivos de uma pasta em PHP. alguém tem algum modelo ou link de exemplo para eu seguir? Desde já agradeço
  5. Boa noite, cá estou eu novamente a necessitar de vossa ajuda. Vi o video seguinte do professor Celke a fazer um preview de imagens. https://youtu.be/sWzW4TJ4ta4?si=i88K8iUSPFhGolSy Na video aula existe o seguinte código: <!DOCTYPE html> <html lang="pt-br"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Celke - Preview de Múltiplas Imagens</title> </head> <body> <h2>Preview de Múltiplas Imagens</h2> <!-- Inicio do formulário --> <form> <!-- Campo para selecionar as imagens --> <input type="file" name="inputImagens" id="inputImagens" multiple accept="image/*"><br><br> <!--<input type="file" name="inputImagens" id="inputImagens" multiple>--> </form> <!-- Fim do formulário --> <!-- Receber o preview das imagens --> <span id="previewImagem"></span> <script> // Receber o seletor do campo com as imagens const inputImagens = document.getElementById("inputImagens"); // Receber o seletor para enviar o preview das imagens const previewImagem = document.getElementById("previewImagem"); // Aguardar alteração no campo de imagens inputImagens.addEventListener("change", function (e) { // Limpar o seletor que recebe o preview das imagens previewImagem.innerHTML = ""; // Percorrer a lista de arquivos selecionados for (const arquivo of e.target.files) { console.log(arquivo); // Criar a TAG <img>, no atributo src atribuir a imagem e no atributo alt o nome const imagemHTML = `<img src="${URL.createObjectURL(arquivo)}" alt="${arquivo.name}" style="max-width: 200px; margin: 10px;">`; // Enviar para o HTML a imagem, beforeend - adicionar a image no final previewImagem.insertAdjacentHTML("beforeend", imagemHTML); } }); </script> </body> </html> gostaria de chamar o script através de uma função em um arquivo javascript O modelo da Celke funciona, mas no meu não aparece me o seguinte erro: Uncaught TypeError: Cannot set properties of null (setting 'innerHTML') at reader.onload (custom_adms.js) meu código: <input type="file" class="input-adm" name="new_image[]" id="new_image" onchange="previewImg()" multiple="multiple" accept="image/*" /> <span id="previewImage"></span> //preview multiplas imagens function previewImg() { // Receber o seletor do campo com as imagens const new_imageMultiple = document.getElementById("new_image"); // Receber o seletor para enviar o preview das imagens const previewImage = document.getElementById("previewImage"); // Aguardar alteração no campo de imagens new_imageMultiple.addEventListener("change", function (e) { // Limpar o seletor que recebe o preview das imagens previewImage.innerHTML = ""; // Percorrer a lista de arquivos selecionados for (const arquivo of e.target.files) { // Criar a TAG <img>, no atributo src atribuir a imagem e no atributo alt o nome const imagemHTML = `<img src="${URL.createObjectURL(arquivo)}" alt="${arquivo.name}" style="max-width: 200px; margin: 10px;">`; // Enviar para o HTML a imagem, beforeend - adicionar a image no final previewImage.insertAdjacentHTML("beforeend", imagemHTML); } }); }
  6. Boa tarde a todos, o que seria de mim sem vós. Essa semana tem sido em cheio, lol. Tenho um form com o campo date, quando estou digitando a data no campo ele permite colocar 6 dígitos no ano o que faço para resolver? <input type="date" name="data_emissao" id="data_emissao" maxlength="10" class="input-adm" placeholder="dd/mm/aaaa" value="<?php echo $data_emissao; ?>">
  7. Boas, eu para praticar decidi começar a clonar o site da Apple. De início correu tudo bem, mas na minha última parte agora uma imagem fica bem no meu monitor mas desformata em qualquer outro monitor, eu gostava que me ajudassem a entender o porquê, visto que estou á horas a tentar resolver isto e não consigo. Peço que quando encontrarem outros pontos que deva melhorar me digam e peço que sejam compreensivos, eu sou novo nisto e quero mesmo aprender. Queria tentar mostrar o que acontece mas não consigo inserir imagens. Vou anexar um link para quem quiser fazer download de como eu vejo e quando fica desformatado. https://we.tl/t-8iyZ8lw4Ok e aqui está todo o código: html <html lang="pt"> <head> <meta charset="UTF-8"> <title>Apple (Portugal)</title> <link rel="stylesheet" href="estilos.css" type="text/css"> <link rel="icon" type="image/x-icon" href="./Project/applebrowsertab.png"> </head> <body> <div id="total"> <div id="nav-list"> <ul> <li><img src="./Project/applelogo.png"></li> <li><a href="">Loja</a></li> <li><a href="">Mac</a></li> <li><a href="">iPad</a></li> <li><a href="">iPhone</a></li> <li><a href="">Watch</a></li> <li><a href="">Airpods</a></li> <li><a href="">TV e Casa</a></li> <li><a href="">Entretenimento</a></li> <li><a href="">Acessórios</a></li> <li><a href="">Suporte</a></li> <li class="nav-list-right-logos"><img src="./Project/searchlogo.png"></li> <li><img src="./Project/baglogo.png"></li> </ul> </div> <div id="macpro-container"> <div id="container-list"> <div class="title">MacBook Pro</div> <div class="subtitle">Brutal. E brilhante.</div> <div class="links"> <a href="#"><span>Saiba mais ></span></a> <a href="#"><span>Compre ></span></a> </div> <div class="img"> <img src="./Project/macpro.png"> </div> </div> </div> <div id="imac-container"> <div id="container-list"> <div class="title">iMac</div> <div class="subtitle">Mais poder para tudo.</div> <div class="links"> <a href="#"><span>Saiba mais ></span></a> <a href="#"><span>Compre ></span></a> </div> <div class="img"> <img src="./Project/imac.png"> </div> </div> </div> <div id="iphone-container"> <div id="container-list"> <div class="title iphone15">iPhone 15 Pro</div> <div class="subtitle iphone15">Titânio. Tão forte. Tão leve. Tão Pro.</div> <div class="links"> <a href="#"><span>Saiba mais ></span></a> <a href="#"><span>Compre ></span></a> </div> <div class="img"> <img src="./Project/iphone15.png"> </div> </div> </div> </div> </body> </html> css @import url('https://fonts.googleapis.com/css?family=Noto+Sans+Batak:700|Noto+Sans+Batak:400'); @font-face { font-family: 'Sf Pro'; src: url(./Project/Fonts/SFNSDisplay-Regular.woff2); } :root { --text: #000000; --background: #fafafa; --primary: #c3c3c3; --secondary: rgb(22, 22, 23, 0.8); --links: #06c; --static: rgba(0, 0, 0, 0.1); } body { font-family: 'Sf Pro', sans-serif; scroll-behavior: smooth; } #total { position: absolute; top: 0; left: 0; width: 100%; } #nav-list { width: 100%; height: 44px; background: var(--secondary); display: flex; align-items: center; justify-content: center; position: fixed; } #nav-list ul { list-style-type: none; display: flex; align-items: center; justify-content: center; gap: 15px; } .nav-list-right-logos { margin-right: 20px; } #nav-list li { font-size: 12px; } #nav-list img { height: 17px; margin-bottom: -3px; } #nav-list a { text-decoration: none; color: var(--primary); transition: 0.2s; } #nav-list a:hover{ color: #fafafa; } #macpro-container { width: 100%; height: 692px; background: var(--background); display: flex; align-items: center; justify-content: center; margin-bottom: 10px; margin-top: 50px; } #container-list { width: 100%; height: 692px; display: flex; flex-direction: column; align-items: center; } .title { margin-top: 50px; text-align: center; font-size: 55; font-weight: bold; margin-bottom: 3px; letter-spacing: 0.5px; } .subtitle { margin-bottom: 18px; text-align: center; font-size: 28; } .links { margin-bottom: 80px; text-align: center; position: relative; font-size: 20; } a { text-decoration: none; padding: 18px; color: var(--links); } a:hover { text-decoration: underline; } .img { margin-bottom: 20px; text-align: center; } #imac-container { width: 100%; height: 692px; background: var(--background); display: flex; align-items: center; justify-content: center; } #iphone-container { width: 100%; height: 692px; margin-top: 10px; background-color: #000000; display: flex; align-items: center; justify-content: center; } #iphone-list { width: 100%; height: 692px; display: flex; flex-direction: column; align-items: center; } .iphone15 { color: #fafafa; } Mais uma vez, peço que sejam compreensivos e aceito qualquer tipo de crítica construtiva!!
  8. Boa noite, se chamo uma função em uma tag <button> funciona correctamente. Mas se colocar dentro de uma tag <a> no href não funciona, como faço? Neste momento esta desta forma: <a href="<?php echo URL; ?>add-freguesia/index" onclick="return abrirModal('modal')" class="btn-success">Cadastrar</a>
  9. Viva malta, Precisava de uma grande favor da vossa parte. Sabem se existem sites que disponibilizem APIs e WebServices para eu puder aprender como comunicar com estes serviços? Desde já o meu muito obrigado.
  10. Estou com uma duvida eu tenho um fomulario em html e para a incluir uma linha para digitar utilizei o <input type="text" id="texto" style="width:100%;"> mas nao sei se e o melho metodo pois o que e escrito nao fica salvo no html (o formulario e aberto direto do computador) Tem algum metodo que grave o que e escrito na lilha de texto direto na linha de texto? Sem ter que usa placeholder direto em cada linha de texto
  11. estou desenvolvível um fichário em Html e gostaria que alguém me explica-se como eu faço para criar um script que salve o Html em txt na maquina e depois eu possa abrir este arquivo com uma função de editar
  12. Boa tarde a todos, Ver se consigo explicar-me: Tenho uma tabela de contactos (tbl_contactos) em que tem vários campos, um deles o email_principal. Faço um SELECT tbl_contactos.email_principal FROM tbl_contactos. A minha ideia é em PHP/MYSQLI passar as colunas, dos email, mas em linhas em que cada email fica separado por ponto e virgula (;) para posteriormente poder utilizar uma botão, que vai abrir o outlook através a <a href="mailto:$variavel_com_o_emails_todos">ENVIAR EMAIL</a> A minha duvida é como consigo colocar todos os email do SELECT separados por ponto e virgula e passar para a variável para posteriormente remeter para todos os destinatários SELECCIONADOS. Obrigado pela vossa ajudar, se conseguirem.
  13. Diariamente utilizo um software no meu trabalho que me cria um ficheiro htm, onde algures tem este codigo: <td class="variable bordertop">Tempo Estimado: 06:04:13</td> o que eu pretendo é criar um programa que me vá buscar esse tempo estimado a esse ficheiro html, para eu depois conseguir trabalhar esse numero. (somar com outros números de outros ficheiros por ex.) não sei que linguagem devo usar, acredito que existam várias opções. obrigado.
  14. awf

    Trabalho de escola

    Boa noite Portugal-a-Programar. Necessito de ajuda para um trabalho de escola, um site respondido com um layout básico feito em html+css mas apesar de já ter tentado de tudo não consigo fazê-lo. Estive em isolamento do Covid durante alguns dias e tive de aprender a matéria sozinho e por isso peço ajuda.
  15. Eu queria depois de validar o login para redirecionar para a página dependendo do nível de acesso, agradeceria que alguem me ajudasse o mais rápido possível, obrigado aqui está a página de login de validação: <?php session_start(); include ("config.php"); if(isset($_POST['submit'])){ $Nmutilizador = mysqli_real_escape_string($conn, $_POST['username']); $pass = md5($_POST['Password']); $lvlacesso = $_POST['NivelAcesso']; $select = " SELECT * FROM users WHERE NmUtilizador = '$Nmutilizador' && PalavraPasse = '$pass' "; $result = mysqli_query($conn, $select); if(mysqli_num_rows($result) > 0){ $row = mysqli_fetch_array($result); if ($_SESSION['NivelAcesso'] == '1') { // check the value of the 'status' in the db //go to admin area header("Location: indexadmin.php"); } else { //go to members area header("Location: indexposlogin.php"); } }else{ $error[] = 'incorrect email or password!'; } }; ?> pagina de login: <?php session_start(); echo '<!doctype html> <html lang="en"> <head> <title>Página de Login</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <link href="https://fonts.googleapis.com/css?family=Lato:300,400,700&display=swap" rel="stylesheet"> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css"> <link rel="stylesheet" href="css/stylelogin.css"> <style> h3{ text-align: center; } .disclaimer{ visibility: hidden; } </style> </head> <body> <section class="ftco-section"> <div class="container"> <div class="row justify-content-center"> <div class="col-md-6 text-center mb-5"> <h2 class="heading-section">Inicie sessão</h2> </div> </div> <div class="row justify-content-center"> <div class="col-md-7 col-lg-5"> <div class="wrap"> <div class="img" style="background-image: url(Imagens/imagemlogin.png);"></div> <div class="login-wrap p-4 p-md-5"> <div class="d-flex"> <div class="w-100"> <h3 class="mb-4">Login</h3> </div> </div> <form action="validalogin.php" class="signin-form"> <div class="form-group mt-3"> <input name="username" type="text" class="form-control" required> <label class="form-control-placeholder" for="username">Nome de Utilizador</label> </div> <div class="form-group"> <input name="pass" id="password-field" type="password" class="form-control" required> <label class="form-control-placeholder" for="password">Palavra-Passe</label> <span toggle="#password-field" class="fa fa-fw fa-eye field-icon toggle-password"></span> </div> <div class="form-group"> <button type="submit" class="form-control btn btn-primary rounded submit px-3">Entrar</button> </div> <div class="form-group d-md-flex"> <div class="w-50 text-left"> <label class="checkbox-wrap checkbox-primary mb-0">Lembrar me <input type="checkbox" checked> <span class="checkmark"></span> </label> </div> <div class="w-50 text-md-right"> <a href="#">Esqueci me da palavra-passe</a> </div> </div> </form> <p class="text-center">Não és membro? <a data-toggle="tab" href="registar.php">Registar me</a></p> <p class="text-center"><a data-toggle="tab" href="https://ingamept.000webhostapp.com/">Voltar</a></p> </div> </div> </div> </div> </div> </section> <script src="js/jquery.min.js"></script> <script src="js/popper.js"></script> <script src="js/bootstrap.min.js"></script> <script src="js/main.js"></script> </body> </html>
  16. Boas tardes nao consigo validar os dados quando se faz o login: validalogin.php: <?php session_start(); // se username e pass foram postados if (isset($_POST['username']) && isset($_POST['pass'])) { // conecta ao database require 'config.php'; // escapa as string pra evitar scripts maliciosos $uname = $conn->real_escape_string($_POST['username']); $passw = $conn->real_escape_string($_POST['pass']); $lvlacesso = $conn->real_escape_string($_POST['NivelAcesso']); // guarda o uname na sessão $_SESSION['NmUtilizador'] = $uname; $_SESSION['NivelAcesso'] = $lvlacesso // define a consulta a ser realizada $query = "SELECT * FROM users where NmUtilizador='$uname' and PalavraPasse='$passw' and NivelAcesso='$lvlacesso'"; // executa a consulta e guarda o resultado em $result $result = $conn->query($query); // verifique se houve alguma falha durante a execução da consulta if ($sqli->error) { // exibe mensagem: die('<p class="error">Falha na consulta: ' . $conn->error . '</p>'); // se não houve falha e há algum resultado } else if ($result->num_rows) { // direciona a outra página header('location:indexposlogin.php'); // se não houve nenhuma falha, mas nada foi encontrado } else { // carrega a página de login include('site/login.html'); // com essa mensagem de erro echo '<h1 class="bad">Erro de Autenticacao</h1>'; } } // se username ou pass não foram postados echo '<h1 class="bad">Envie Username and pass</h1>'; // o mysqli $sqli é encerrado automagicamente ao fim da execução de cada request if ($_SESSION['NivelAcesso'] == '1') { // check the value of the 'status' in the db //go to admin area header("Location: indexadmin.php"); } else { //go to members area header("Location: indexposlogin.php"); } login.php <!doctype html> <html lang="en"> <head> <title>Página de Login</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <link href="https://fonts.googleapis.com/css?family=Lato:300,400,700&display=swap" rel="stylesheet"> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css"> <link rel="stylesheet" href="css/stylelogin.css"> <style> h3{ text-align: center; } .disclaimer{ visibility: hidden; } </style> </head> <body> <section class="ftco-section"> <div class="container"> <div class="row justify-content-center"> <div class="col-md-6 text-center mb-5"> <h2 class="heading-section">Inicie sessão</h2> </div> </div> <div class="row justify-content-center"> <div class="col-md-7 col-lg-5"> <div class="wrap"> <div class="img" style="background-image: url(Imagens/imagemlogin.png);"></div> <div class="login-wrap p-4 p-md-5"> <div class="d-flex"> <div class="w-100"> <h3 class="mb-4">Login</h3> </div> </div> <form action="validalogin.php" class="signin-form"> <div class="form-group mt-3"> <input type="text" class="form-control" required> <label class="form-control-placeholder" for="username">Nome de Utilizador</label> </div> <div class="form-group"> <input id="password-field" type="password" class="form-control" required> <label class="form-control-placeholder" for="password">Palavra-Passe</label> <span toggle="#password-field" class="fa fa-fw fa-eye field-icon toggle-password"></span> </div> <div class="form-group"> <button type="submit" class="form-control btn btn-primary rounded submit px-3">Entrar</button> </div> <div class="form-group d-md-flex"> <div class="w-50 text-left"> <label class="checkbox-wrap checkbox-primary mb-0">Lembrar me <input type="checkbox" checked> <span class="checkmark"></span> </label> </div> <div class="w-50 text-md-right"> <a href="#">Esqueci me da palavra-passe</a> </div> </div> </form> <p class="text-center">Não és membro? <a data-toggle="tab" href="registar.php">Registar me</a></p> <p class="text-center"><a data-toggle="tab" href="https://ingamept.000webhostapp.com/">Voltar</a></p> </div> </div> </div> </div> </div> </section> <script src="js/jquery.min.js"></script> <script src="js/popper.js"></script> <script src="js/bootstrap.min.js"></script> <script src="js/main.js"></script> </body> </html>
  17. Olá a todos, Preciso de uma pequena explicação e ajuda para colocar o meu datatable a funcionar com os botões para fazer download em excel, PDF, .. <link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/v/dt/jszip-2.5.0/dt-1.11.5/b-2.2.2/b-html5-2.2.2/datatables.min.css"/> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.36/pdfmake.min.js"></script> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.36/vfs_fonts.js"></script> <script type="text/javascript" src="https://cdn.datatables.net/v/dt/jszip-2.5.0/dt-1.11.5/b-2.2.2/b-html5-2.2.2/datatables.min.js"></script> <script src="https://code.jquery.com/jquery-3.6.0.js"></script> <!-- CÓDIGO DE TEXTO --> <link rel="stylesheet" href="//cdn.datatables.net/1.11.5/css/jquery.dataTables.min.css"> <script src="//cdn.datatables.net/1.11.5/js/jquery.dataTables.min.js" defer></script> <script> $(document).ready( function () { $('#teste').DataTable({ "language": { "url": "////cdn.datatables.net/plug-ins/1.11.3/i18n/pt_pt.json", dom: 'Bfrtip', buttons: [ 'copy', 'csv', 'excel', 'pdf', 'print' ] } }); } ); </script> apenas no fim chamo o ultimo script . Tentei colocar aqui os botões de exportar e segui o seguinte link https://datatables.net/extensions/buttons/examples/initialisation/export.html os erros que obtenho são : datatables.min.js:143 Uncaught TypeError: l is not a function at datatables.min.js:143:244 at datatables.min.js:48:299 at datatables.min.js:48:326 Será a ordem como coloco os css e JS que não consigo ver os botões? Obrigado!
  18. Bom dia tenho uma duvida em relcação ao programa que estou a desenvolver e da me o seguinte erro: Fatal error: Uncaught Error: Call to a member function query() on string in D:\xampp\htdocs\site\validarupdate.php:11 Stack trace: #0 {main} thrown in D:\xampp\htdocs\site\validarupdate.php on line 11
  19. Bom dia estou cm estes seguintes erros: Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, bool given in D:\xampp\htdocs\site\validalogin.php on line 13 Warning: include(login.html): failed to open stream: No such file or directory in D:\xampp\htdocs\site\validalogin.php on line 22 Warning: include(): Failed opening 'login.html' for inclusion (include_path='\xampp\php\PEAR') in D:\xampp\htdocs\site\validalogin.php on line 22 Warning: mysqli_free_result() expects parameter 1 to be mysqli_result, bool given in D:\xampp\htdocs\site\validalogin.php on line 28 Aqui está o código: <?php $uname=$_POST['username']; $passw=$_POST['pass']; session_start(); $_SESSION['NmUtilizador']=$uname; $conexion=mysqli_connect("localhost","root","","pap"); $consulta="SELECT * FROM login where NmUtilizador='$uname' and Password='$passw'"; $resultado=mysqli_query($conexion,$consulta); $filas=mysqli_num_rows($resultado); if($filas){ header("location:site/indexposlogin.php"); }else{ ?> <?php include("site/login.html"); ?> <h1 class="bad">Erro de Autenticacao</h1> <?php } mysqli_free_result($resultado); mysqli_close($conexion);
  20. Olá a todos, bom dia, estou fazendo um site pessoal para divulgar meus trabalhos multimídia. Como minha principal preocupação é o alinhamento de divs e seções, agradeço muito sua ajuda. Minhas dúvidas estão nos comentários. E eu também os envio aqui. <!--Como colocar isso como a imagem do tempo? (ver weather image)?--> <!--Como corrigir o espaço entre as duas bordas da barra de clima e data e hora (veja o layout image)--> index.html <!DOCTYPE html> <html lang="pt"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>complete responsive personal portfolio website design tutorial</title> <!-- font awesome cdn link --> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css"> <script src="https://code.jquery.com/jquery-3.4.1.min.js"></script> <!-- custom css file link --> <link rel="stylesheet" href="css/style.css"> <link href="https://fonts.googleapis.com/css?family=Raleway:200,100,400" rel="stylesheet" type="text/css" /> </head> <body> <!--This is the weather and datetime bar--> <!--How to put that as the weather image? (see the image weather image)?--> <!--How to fix the space between the twoo edges of the weather and datetime bar (see the image layout)--> <section class="header" id="header"> <div class="datetime" style="width:150px"> <p id="date">Sat 11 Sep 2021</p> <p id="time">10:08:58</p> </div> <div class="weather"><p><a class="weatherwidget-io" href="https://forecast7.com/pt/41d69n8d83/viana-do-castelo/" data-label_1="VIANA DO CASTELO" data-label_2="" data-icons="Climacons Animated" data-days="5" data-theme="sky" >VIANA DO CASTELO</a> <script> !function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src='https://weatherwidget.io/js/widget.min.js';fjs.parentNode.insertBefore(js,fjs);}}(document,'script','weatherwidget-io-js'); </script></p> </div> </div> <!-- header section starts --> <header> <div id="menu" class="fas fa-bars"></div> <nav class="navbar"> <a href="#home">home</a> <a href="#about">about</a> <a href="#services">services</a> <a href="#portfolio">portfolio</a> <a href="#blog">blog</a> <a href="#contact">contact</a> </nav> <div id="theme-toggler" class="fas fa-moon"></div> </header> <!-- header section ends --> <!-- home section starts --> <section class="home" id="home"> <div class="image"> <img src="images/foto ze.jpg" alt=""> </div> <div class="content"> <h1>Chamo-me José Moreira sou <span class="txt-rotate" data-period="2000" data-rotate='[ "Design Gráfico.", "Fotográfo.", "Web developer.",]'></span> </h1> <p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Optio doloribus ullam at commodi sit, excepturi dicta minus cumque rerum quod nisi sapiente accusantium, accusamus a atque totam adipisci. Quas, error?</p> <a href="#about" class="btn">about me</a> </div> </section> <!-- home section ends --> <section class="about" id="about"> <h1 class="heading"> about <span>me</span> </h1> <div class="row"> <div class="box"> <h3 class="title">coding skills</h3> <div class="progress"> <h3> html <span>95%</span> </h3> <div class="bar"><span></span></div> </div> <div class="progress"> <h3> css <span>80%</span> </h3> <div class="bar"><span></span></div> </div> <div class="progress"> <h3> js <span>65%</span> </h3> <div class="bar"><span></span></div> </div> <div class="progress"> <h3> sass <span>75%</span> </h3> <div class="bar"><span></span></div> </div> </div> <div class="box"> <h3 class="title">professional skills</h3> <div class="progress"> <h3> web design <span>98%</span> </h3> <div class="bar"><span></span></div> </div> <div class="progress"> <h3> web development <span>67%</span> </h3> <div class="bar"><span></span></div> </div> <div class="progress"> <h3> graphic design <span>75%</span> </h3> <div class="bar"><span></span></div> </div> <div class="progress"> <h3> seo marketing <span>60%</span> </h3> <div class="bar"><span></span></div> </div> </div> <div class="box"> <h3 class="title">experience</h3> <div class="exp-box"> <h3>front end development</h3> <p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Mollitia consequatur impedit dolor vel aperiam assumenda consequuntur quibusdam. Illo, dolorum nihil!</p> </div> <div class="exp-box"> <h3>front end development</h3> <p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Mollitia consequatur impedit dolor vel aperiam assumenda consequuntur quibusdam. Illo, dolorum nihil!</p> </div> <div class="exp-box"> <h3>front end development</h3> <p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Mollitia consequatur impedit dolor vel aperiam assumenda consequuntur quibusdam. Illo, dolorum nihil!</p> </div> </div> <div class="box"> <h3 class="title">education</h3> <div class="exp-box"> <h3>mumbai university</h3> <p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Mollitia consequatur impedit dolor vel aperiam assumenda consequuntur quibusdam. Illo, dolorum nihil!</p> </div> <div class="exp-box"> <h3>mumbai university</h3> <p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Mollitia consequatur impedit dolor vel aperiam assumenda consequuntur quibusdam. Illo, dolorum nihil!</p> </div> <div class="exp-box"> <h3>mumbai university</h3> <p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Mollitia consequatur impedit dolor vel aperiam assumenda consequuntur quibusdam. Illo, dolorum nihil!</p> </div> </div> </div> <div class="download"> <a href="#" class="btn"> download CV </a> </div> </section> <!-- service section starts --> <section class="services" id="services"> <h1 class="heading"> <span>my</span> services </h1> <div class="box-container"> <div class="box"> <span class="number">1</span> <img src="images/s1.png" alt=""> <h3>seo marketing</h3> <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Expedita harum consectetur quae eligendi saepe vitae ut animi in fuga dolorem.</p> </div> <div class="box"> <span class="number">2</span> <img src="images/s2.png" alt=""> <h3>graphic design</h3> <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Expedita harum consectetur quae eligendi saepe vitae ut animi in fuga dolorem.</p> </div> <div class="box"> <span class="number">3</span> <img src="images/s3.png" alt=""> <h3>digital marketing</h3> <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Expedita harum consectetur quae eligendi saepe vitae ut animi in fuga dolorem.</p> </div> <div class="box"> <span class="number">4</span> <img src="images/s4.png" alt=""> <h3>data analysis</h3> <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Expedita harum consectetur quae eligendi saepe vitae ut animi in fuga dolorem.</p> </div> <div class="box"> <span class="number">5</span> <img src="images/s5.png" alt=""> <h3>web development</h3> <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Expedita harum consectetur quae eligendi saepe vitae ut animi in fuga dolorem.</p> </div> <div class="box"> <span class="number">6</span> <img src="images/s6.png" alt=""> <h3>web design</h3> <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Expedita harum consectetur quae eligendi saepe vitae ut animi in fuga dolorem.</p> </div> </div> </section> <!-- service section ends --> <!-- portfolio section starts --> <section class="portfolio" id="portfolio"> <h1 class="heading"> <span>my</span> portfolio </h1> <div class="button-container"> <div class="btn" data-filter="all">all</div> <div class="btn" data-filter="design">design</div> <div class="btn" data-filter="code">code</div> <div class="btn" data-filter="website">website</div> <div class="btn" data-filter="brand">brand</div> </div> <div class="image-container"> <div class="box design"> <img src="images/img1.jpg" alt=""> <div class="info"> <h3>PROJECT TITLE</h3> </div> </div> <div class="box design"> <img src="images/img2.jpg" alt=""> <div class="info"> <h3>PROJECT TITLE</h3> </div> </div> <div class="box design"> <img src="images/img3.jpg" alt=""> <div class="info"> <h3>PROJECT TITLE</h3> </div> </div> <div class="box code"> <img src="images/img4.jpg" alt=""> <div class="info"> <h3>PROJECT TITLE</h3> </div> </div> <div class="box code"> <img src="images/img5.jpg" alt=""> <div class="info"> <h3>PROJECT TITLE</h3> </div> </div> <div class="box website"> <img src="images/img6.jpg" alt=""> <div class="info"> <h3>PROJECT TITLE</h3> </div> </div> <div class="box brand"> <img src="images/img7.jpg" alt=""> <div class="info"> <h3>PROJECT TITLE</h3> </div> </div> <div class="box brand"> <img src="images/img8.jpg" alt=""> <div class="info"> <h3>PROJECT TITLE</h3> </div> </div> <div class="box brand"> <img src="images/img9.jpg" alt=""> <div class="info"> <h3>PROJECT TITLE</h3> </div> </div> </div> </section> <!-- portfolio section ends --> <!-- blog section start --> <section class="blog" id="blog"> <h1 class="heading"> <span>my</span> blogs </h1> <div class="box-container"> <div class="box"> <img src="images/blog1.jpg" alt=""> <div class="content"> <h3 class="info"> <i class="fas fa-user"></i> by, admin <i class="fas fa-calendar"></i> 1st may, 2021 </h3> <a href="#" class="title"> blog title goes here </a> <p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Laborum in molestias deleniti fugit excepturi atque cum animi harum distinctio et.</p> <a href="#" class="btn">read more</a> </div> </div> <div class="box"> <img src="images/blog2.jpg" alt=""> <div class="content"> <h3 class="info"> <i class="fas fa-user"></i> by, admin <i class="fas fa-calendar"></i> 1st may, 2021 </h3> <a href="#" class="title"> blog title goes here </a> <p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Laborum in molestias deleniti fugit excepturi atque cum animi harum distinctio et.</p> <a href="#" class="btn">read more</a> </div> </div> <div class="box"> <img src="images/blog3.jpg" alt=""> <div class="content"> <h3 class="info"> <i class="fas fa-user"></i> by, admin <i class="fas fa-calendar"></i> 1st may, 2021 </h3> <a href="#" class="title"> blog title goes here </a> <p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Laborum in molestias deleniti fugit excepturi atque cum animi harum distinctio et.</p> <a href="#" class="btn">read more</a> </div> </div> <div class="box"> <img src="images/blog4.jpg" alt=""> <div class="content"> <h3 class="info"> <i class="fas fa-user"></i> by, admin <i class="fas fa-calendar"></i> 1st may, 2021 </h3> <a href="#" class="title"> blog title goes here </a> <p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Laborum in molestias deleniti fugit excepturi atque cum animi harum distinctio et.</p> <a href="#" class="btn">read more</a> </div> </div> <div class="box"> <img src="images/blog5.jpg" alt=""> <div class="content"> <h3 class="info"> <i class="fas fa-user"></i> by, admin <i class="fas fa-calendar"></i> 1st may, 2021 </h3> <a href="#" class="title"> blog title goes here </a> <p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Laborum in molestias deleniti fugit excepturi atque cum animi harum distinctio et.</p> <a href="#" class="btn">read more</a> </div> </div> <div class="box"> <img src="images/blog6.jpg" alt=""> <div class="content"> <h3 class="info"> <i class="fas fa-user"></i> by, admin <i class="fas fa-calendar"></i> 1st may, 2021 </h3> <a href="#" class="title"> blog title goes here </a> <p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Laborum in molestias deleniti fugit excepturi atque cum animi harum distinctio et.</p> <a href="#" class="btn">read more</a> </div> </div> </div> </section> <!-- blog section ends --> <!-- contact section starts --> <section class="contact" id="contact"> <h1 class="heading"> contact <span>me</span> </h1> <div class="box-container"> <div class="box"> <i class="fas fa-phone"></i> <h3>my number</h3> <p>+123-456-7890</p> </div> <div class="box"> <i class="fas fa-envelope"></i> <h3>my email</h3> <p>example@gmail.com</p> </div> <div class="box"> <i class="fas fa-map-marker-alt"></i> <h3>my address</h3> <p>mumbai, india - 400104</p> </div> </div> <div class="row"> <form action=""> <div class="inputBox"> <input type="text" placeholder="name"> <input type="email" placeholder="email"> </div> <input type="text" placeholder="subject"> <textarea name="" id="" cols="30" rows="10" placeholder="message"></textarea> <button class="btn"> send message </button> </form> <iframe class="map" src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d30153.788252261566!2d72.82321484621745!3d19.141690214227783!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x3be7b63aceef0c69%3A0x2aa80cf2287dfa3b!2sJogeshwari%20West%2C%20Mumbai%2C%20Maharashtra%20400047!5e0!3m2!1sen!2sin!4v1617786516134!5m2!1sen!2sin" allowfullscreen="" loading="lazy"></iframe> </div> </section> <!-- contact section ends --> <div id="td_container"> <div class="flex"> <div class="button-wrapper"> <i class="fa fa-play play button" id="play" onclick=" toggleplayback(this); "aria-hidden="true"></i> <i class="fa fa-pause pause button" onclick="toggleplayback(this)" id="pause" aria-hidden="true"></i> </div> <div id = "content"> <div class="now-playing-label">Now Playing</div> <div id="show"> </div> <div id="artist"> </div> </div> <div class="stream-wrapper"> <!-- <span>Stations</span> --> <div class="dropdown"> <button class="dropbtn" id="btn">22 West Music Stream</button> <i class="fa fa-caret-down" aria-hidden="true"></i> <div class="dropdown-content"> <a href="#" onclick="changeStream(this)">22 West Radio Online</a> <a href="#" onclick="changeStream(this)">22 West FM</a> <a href="#" onclick="changeStream(this)">22 West Music Stream</a> </div> </div> </div> <div id="player"> <i class="fa fa-volume-up"></i> <div id="volume"></div> </div> <div class="social-icons"> <a href="https://www.facebook.com/22WestRadio" target="_blank"><i class="fa fa-facebook icons" aria-hidden="true"></i></a> <a href="https://twitter.com/22WestRadio" target="_blank"><i class="fa fa-twitter icons" aria-hidden="true"></i></a> <a href="https://www.instagram.com/22WestRadio/" target="_blank"><i class="fa fa-instagram icons" aria-hidden="true"></i></a> </div> </div> </div> <!-- footer section --> <div class="footer"> <div class="container> <div class="container copyright d-flex-r justify-content-space-around"> <ul class="d-flex-r my-1"> <li><a href="https://www.behance.net/Josemmorei292f"><i class="fab fa-behance"></i></a></li> <li><a href="https://www.linkedin.com/in/jammoreira/"><i class="fab fa-linkedin"></i></a></li> <p class="text-center my1">&copy;Copyright 2022.Designed by José Moreira</p> </ul> </div> <div class="d-flex-r justify-content-center"> <a href="#home"><i class="fas fa-angle-up"></i></a> </div> </div> </div> <!--footer--> <!-- jquery cdn link --> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script> <!-- custom js file link --> <script src="js/script.js"></script> </body> </html> style.css :root{ --main-color:#4C84FF; --primary-bg-color:#fff; --secondary-bg-color:#eee; --primary-text-color:#222; --secondary-text-color:#666; } @import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400&display=swap'); *{ font-family: 'Roboto', sans-serif; margin:0; padding:0; box-sizing: border-box; text-transform: capitalize; outline: none; border:none; text-decoration: none; transition:all .3s cubic-bezier(.38,1.15,.7,1.12); } *::selection{ background-color: var(--main-color); color:#fff; } html{ font-size: 62.5%; overflow-x: hidden; } html::-webkit-scrollbar{ width:1.3rem; } html::-webkit-scrollbar-track{ background-color: var(--secondary-bg-color); } html::-webkit-scrollbar-thumb{ background-color: var(--main-color); } body{ background:var(--secondary-bg-color); } body.dark-theme{ --primary-bg-color:#252C48; --secondary-bg-color:#171C32; --primary-text-color:#fff; --secondary-text-color:#eee; } section{ min-height: 100vh; padding:1rem; padding:0 8%; } .btn{ display: inline-block; padding:.9rem 3.5rem; font-size: 2rem; background:none; color:#fff; border-radius: .5rem; box-shadow: 0 .5rem 1rem rgba(0,0,0,.1); margin-top: 1rem; z-index: 0; position: relative; overflow: hidden; border:.2rem solid var(--main-color); } .btn::before{ content: ''; position: absolute; top:50%; left: 50%; transform: translate(-50%, -50%); border-radius: .5rem; background:var(--main-color); height:85%; width: 95%; z-index: -1; transition: .2s linear; } .btn:hover:before{ top:100%; transform: translate(-50%, 100%); } .btn:hover{ color:var(--primary-text-color); } .heading{ font-size: 5rem; color:var(--primary-text-color); text-align: center; padding:1rem; text-transform: uppercase; } .heading span{ color:var(--main-color); text-transform: uppercase; } /*weather and datetime*/ .header .datetime { width: auto !important; /* to kill your inline style (width:150px) */ display: flex; margin: 0 !important; padding: 8px 0 !important; /* better to use space in between date/time (see above) */ } .header .weather { flex-grow: 1; } .header .weather > p { margin: 0; border-color: black; } #weatherwidget-io-0 { position: relative !important; } .weatherwidget-io { padding: 0 !important; height: auto !important; position: static !important; margin: 0 !important; font-size: 0; } #date, #time { margin: 1em .5em; } /*weather and datetime*/ #menu{ font-size: 2rem; background:var(--main-color); color:#fff; border-radius: 5rem; height:5rem; width:5rem; text-align: center; line-height: 5rem; position: fixed; top: 2rem; right:2rem; z-index: 1000; cursor: pointer; } #menu.fa-times{ transform:rotate(-180deg); } .navbar{ position: fixed; top:2.4rem; right:2.5rem; padding:1.1rem 2rem; padding-right: 4rem; z-index: 999; border:.2rem solid var(--main-color); border-radius: 1rem; background:var(--primary-bg-color); opacity: 0; transform-origin: top right; transform: scale(0); } .navbar.nav-toggle{ opacity: 1; transform: scale(1); } .navbar a{ display: block; font-size: 2rem; padding:1rem; padding-right: 7rem; color:var(--primary-text-color); } .navbar a:hover{ color:var(--main-color); transform: translateX(1rem); } .home{ display: flex; align-items: center; justify-content: center; flex-wrap: wrap; } .home .image{ flex:1 1 40rem; padding:1rem; text-align: center; } .home .image img{ height:50rem; box-shadow: 0 .5rem 1rem rgba(0,0,0,.3); border-top: 3rem solid var(--primary-bg-color); border-right: 3rem solid var(--primary-bg-color); border-bottom: 3rem solid var(--main-color); border-left: 3rem solid var(--main-color); border-radius: .5rem; } .home .content{ flex:1 1 40rem; padding:1rem; } .home .content .hello{ display: inline-block; padding:1rem 0; font-size: 2.6rem; color:var(--secondary-text-color); } .home .content h3{ color:var(--primary-text-color); font-size: 5rem; } .home .content h3 span{ color:var(--main-color); } .home .content p{ padding:1rem 0; color:var(--secondary-text-color); font-size: 2rem; } .about .row{ display: flex; align-items: center; justify-content: center; flex-wrap: wrap; } .about .row .box{ flex:1 1 40rem; background-color: var(--primary-bg-color); border-radius: .5rem; box-shadow: 0 .5rem 1rem rgba(0,0,0,.1); padding:.5rem 1.5rem; margin:1.5rem; } .about .row .box .title{ color:var(--primary-text-color); font-size: 2.5rem; padding:1rem 0; } .about .row .box .progress{ padding:1rem 0; } .about .row .box .progress h3{ font-size: 1.7rem; color:var(--secondary-text-color); display: flex; justify-content: space-between; } .about .row .box .progress .bar{ height: 2.5rem; border-radius: .5rem; border:.2rem solid var(--main-color); padding:.5rem; margin:1rem 0; } .about .row .box .progress .bar span{ height: 100%; border-radius: .3rem; background-color: var(--main-color); display: block; } .about .row .box:nth-child(1) .progress:nth-child(2) .bar span{ width: 95%; } .about .row .box:nth-child(1) .progress:nth-child(3) .bar span{ width: 80%; } .about .row .box:nth-child(1) .progress:nth-child(4) .bar span{ width: 65%; } .about .row .box:nth-child(1) .progress:nth-child(5) .bar span{ width: 75%; } .about .row .box:nth-child(2) .progress:nth-child(2) .bar span{ width: 98%; } .about .row .box:nth-child(2) .progress:nth-child(3) .bar span{ width: 67%; } .about .row .box:nth-child(2) .progress:nth-child(4) .bar span{ width: 75%; } .about .row .box:nth-child(2) .progress:nth-child(5) .bar span{ width: 60%; } .about .row .box .exp-box{ padding:0 1.8rem; margin-top: 1rem; margin-bottom: 2rem; border-left: .2rem solid var(--main-color); position: relative; } .about .row .box .exp-box h3{ color:var(--main-color); font-size: 2rem; } .about .row .box .exp-box p{ color:var(--secondary-text-color); font-size: 1.5rem; padding:1rem 0; } .about .row .box .exp-box::before{ content:''; position: absolute; top:0; left: -1rem; border-radius: 50%; height: 2rem; width: 2rem; background: var(--main-color); } .about .download{ background:var(--primary-bg-color); border-radius: .5rem; text-align: center; box-shadow: 0 .5rem 1rem rgba(0,0,0,.1); padding:2rem; padding-bottom: 3rem; margin:1rem; } .services .box-container{ display: flex; align-items: center; justify-content: center; flex-wrap: wrap; } .services .box-container .box{ background:var(--primary-bg-color); border-radius: .5rem; box-shadow: 0 .5rem 1rem rgba(0,0,0,.1); margin:1rem; padding:1rem; width:35rem; text-align: center; position: relative; z-index: 0; } .services .box-container .box .number{ position: absolute; top:1.5rem; left: 2rem; font-size: 2.5rem; color:var(--primary-text-color); } .services .box-container .box img{ height:7rem; width:7rem; margin:1rem; } .services .box-container .box h3{ font-size: 2rem; color:var(--main-color); } .services .box-container .box p{ font-size: 1.5rem; color:var(--secondary-text-color); padding:1rem; } .services .box-container .box::before{ content: ''; position: absolute; top:0; left: 0; height: 100%; width: 100%; background:var(--main-color); z-index: -1; clip-path: circle(25% at 0 0); opacity: .1; transition: .3s; } .services .box-container .box:hover::before{ clip-path: circle(100%); } .portfolio .button-container{ display: flex; align-items: center; justify-content: center; flex-wrap: wrap; padding:1rem 0; } .portfolio .button-container .btn{ margin:1rem; cursor: pointer; } .portfolio .image-container{ display: flex; align-items: center; justify-content: center; flex-wrap: wrap; padding: 1rem 0; } .portfolio .image-container .box{ width:35rem; margin: 1rem; border-radius: .5rem; box-shadow: 0 .5rem 1rem rgba(0,0,0,.1); overflow: hidden; height: 25rem; position: relative; border:1.5rem solid var(--primary-bg-color); cursor: pointer; } .portfolio .image-container .box img{ height: 100%; width: 100%; object-fit: cover; } .portfolio .image-container .box .info{ position: absolute; top:0; left: 0; height: 100%; width: 100%; background:var(--primary-bg-color); display: flex; align-items: center; justify-content: center; flex-wrap: wrap; opacity: .9; transform: scale(0); } .portfolio .image-container .box:hover .info{ transform: scale(1); } .portfolio .image-container .box .info h3{ font-size: 2.5rem; color:var(--primary-text-color); } .blog .box-container{ display: flex; align-items: center; justify-content: center; flex-wrap: wrap; } .blog .box-container .box{ width:33rem; border-radius: .5rem; box-shadow: 0 .5rem 1rem rgba(0,0,0,.1); margin:1.5rem; background: var(--primary-bg-color); overflow: hidden; } .blog .box-container .box img{ width: 100%; height: 20rem; object-fit: cover; } .blog .box-container .box .content{ padding:1.5rem; } .blog .box-container .box .content .info{ border-radius: .5rem; box-shadow: 0 .5rem 1rem rgba(0,0,0,.1); text-align: center; position: relative; font-size: 1.5rem; color:var(--primary-text-color); background:var(--secondary-bg-color); padding:1rem; margin-top: -4rem; margin-bottom: 1rem; } .blog .box-container .box .content .info i{ color:var(--main-color); padding:0 1rem; } .blog .box-container .box .content .title{ color:var(--primary-text-color); display: block; font-size: 2.5rem; padding:.5rem 0; } .blog .box-container .box .content .title:hover{ text-decoration: underline; color:var(--main-color); } .blog .box-container .box .content p{ color:var(--secondary-text-color); padding:.5rem 0; font-size: 1.5rem; } .contact .row{ display: flex; justify-content: center; flex-wrap: wrap; } .contact .row form{ flex:1 1 40rem; background: var(--primary-bg-color); padding: 2rem; margin:1rem; box-shadow: 0 .5rem 1rem rgba(0,0,0,.1); border-radius: .5rem; } .contact .row .map{ flex:1 1 40rem; margin:1rem; box-shadow: 0 .5rem 1rem rgba(0,0,0,.1); border-radius: .5rem; border:2rem solid var(--primary-bg-color); width:100%; } .contact .row form .inputBox{ display: flex; justify-content: space-between; flex-wrap: wrap; } .contact .row form input, .contact .row form textarea{ padding:1rem 0; margin:1rem 0; font-size: 1.7rem; border-bottom: .1rem solid var(--secondary-text-color); text-transform: none; background:none; color:var(--main-color); width: 100%; } .contact .row form input::placeholder, .contact .row form textarea::placeholder{ text-transform: capitalize; color:var(--secondary-text-color); } .contact .row form input:focus, .contact .row form textarea:focus{ border-color: var(--main-color); } .contact .row form .inputBox input{ width:49%; } .contact .row form textarea{ height: 15rem; resize: none; } .contact .row form .btn{ cursor: pointer; } .contact .box-container{ display: flex; justify-content: space-between; flex-wrap: wrap; align-items: center; } .contact .box-container .box{ flex:1 1 30rem; margin:1rem; padding:3rem 1rem; background:var(--primary-bg-color); box-shadow: 0 .5rem 1rem rgba(0,0,0,.1); border-radius: .5rem; text-align: center; } .contact .box-container .box i{ height: 6rem; width:6rem; line-height: 6rem; border-radius: 50%; font-size: 3rem; background:var(--secondary-bg-color); color:var(--main-color); } .contact .box-container .box h3{ color:var(--primary-text-color); padding:1rem 0; font-size: 2rem; } .contact .box-container .box p{ font-size: 1.5rem; color:var(--secondary-text-color); } /*Radio station*/ .flex { display:flex; background:#000; width:900px; height:108px; align-items:center; justify-content:flex-start; } .button-wrapper { background: #000; height:100%; width:20%; position:relative; } .button { position:absolute; top:35%; left:0; right:0; text-align:center; font-size:2rem !important; color:#4cc8f4 !important; } #pause { display:none; } .stream-wrapper { color:#fff !important; margin-left:5%; font-size:1rem !important; min-width:200px; } .social-icons { margin-left:15%; display:inline-table; height:40px; width:200px !important; } .icons { border:1px #4cc8f4 solid; border-radius:50%; color:#4cc8f4 !important; margin-top:1%; padding:8px 12px; font-size:1.2rem !important; } .icons:hover { color:#fff !important; border-color:#fff !important; } .social-icons a { margin-left:5%; } .dropbtn { background-color: #4cc8f4; color: white; padding: 10px; font-size: 16px; border: none; min-width: 180px; } .dropdown { position: relative; display: inline-block; background-color: #4cc8f4; color: white; padding-right:5px; min-width: 199px; text-align:center; } .dropdown-content { display: none; position: absolute; background-color: #000; min-width: 199px; box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); z-index: 1; } .dropdown-content a { color: #4cc8f4; padding: 10px 12px; text-decoration: none; display: block; width:180px; } .dropdown-content a:hover { background-color: #4cc8f4; color:#fff; } .dropdown:hover .dropdown-content { display: block; } .dropdown:hover .dropbtn { background-color: ##4cc8f4; } #player { width: 50px; height: 50px; position: relative; margin-left:5%; top: 25px; } #player i { position: absolute; margin-top: -6px; color: #666; } #player i.fa-volume-up { color:#4cc8f4; } #volume { position: absolute; left: 24px; margin-left:12px; margin: 0 auto; height: 3px; width: 100px; background: #555; border-radius: 10px; } #volume .ui-slider-range-min { height: 3px; width: 300px; position: absolute; background: #4cc8f4; border: none; border-radius: 10px; outline: none; } #volume .ui-slider-handle { width: 10px; height: 10px; border-radius: 10px; background: #f1f1f1; position: absolute; margin-left: -6px; margin-top: -3px; cursor: pointer; outline: none; } #content { display:none; width:150px !important; color:#4cc8f4 !important; font-size:0.9rem; } #artist { width:100% !important; margin-top:10%; } #show { width:100% !important; margin-top:5%; } .now-playing-label { color:#fff; } /*Radio Staion ends*/ .footer{ background-color:orange; color: #bbb; height: auto; } .container{ padding: 2rem 1rem; } .footer ul{ font-size: normal; list-style: none; } .footer a{ color:red; text-decoration: none; } /*Margins and padding Classes*/ .my-1{margin-top: 1rem; margin-bottom: 1rem;} /*Flex Proprieties*/ .d-flex-r{ display: flex; flex-direction: row; flex-wrap: wrap; } .justify-content-center{ justify-content:center; } .justify-content-space-around{ justify-content:space-around; } .footer i{color: white;} .footer .copyright i {margin-left: 1rem;} .footer i.fab, .footer i.fas{font-size: 1.25rem;transition: 0.3s ease;} .footer i.fab:hover{color:white important;} .footer i.fas { border-radius: 50%; border:1px solid white; margin-top: 1rem; margin-bottom: 1rem; padding: 12px 15px; #theme-toggler{ position: fixed; top:8.5rem; right:2rem; z-index: 998; height: 5rem; width:5rem; line-height: 5rem; text-align: center; font-size: 2rem; background:var(--main-color); color:#fff; cursor: pointer; border-radius: 5rem; } #theme-toggler.fa-sun{ transform:rotate(-180deg); } .home .content { font-family: 'Raleway', sans-serif; padding: 3em 2em; font-size: 18px; background: #222; color: #aaa } .home .content h1{ font-weight: 200; margin: 0.4em 0; } .home .content h1 { font-size: 3.5em; } /* media queries */ @media (max-width:991px){ html{ font-size: 55%; } section{ padding:1rem; padding: 0 3%; } } @media (max-width:768px){ .home .image img{ height: auto; width: 100%; } } @media (max-width:400px){ html{ font-size: 50%; } .services .box-container .box{ width: 100%; } .portfolio .image-container .box{ width:100%; } .blog .box-container .box{ width:100%; } .contact .row form .inputBox input{ width:100%; } } sccript.js $(document).ready(function(){ $('#menu').click(function(){ $(this).toggleClass('fa-times'); $('.navbar').toggleClass('nav-toggle'); }); $(window).on('scroll load',function(){ $('#menu').removeClass('fa-times'); $('.navbar').removeClass('nav-toggle'); }); $('.portfolio .button-container .btn').click(function(){ let filter = $(this).attr('data-filter'); if(filter == 'all'){ $('.portfolio .image-container .box').show('400') }else{ $('.portfolio .image-container .box').not('.'+filter).hide('200'); $('.portfolio .image-container .box').filter('.'+filter).show('400'); } }); $('#theme-toggler').click(function(){ $(this).toggleClass('fa-sun'); $('body').toggleClass('dark-theme'); }); // smooth scrolling $('a[href*="#"]').on('click',function(e){ e.preventDefault(); $('html, body').animate({ scrollTop : $($(this).attr('href')).offset().top, }, 500, 'linear' ); }); }); function setDate() { const now = new Date(); const mm = now.getMonth(); const dd = now.getDate(); const yyyy = now.getFullYear(); const secs = now.getSeconds(); const mins = now.getMinutes(); const hrs = now.getHours(); const monthName = [ 'January','February','March','April', 'May','June','July','August','September', 'October','November','December' ]; if (hrs > 12) { hours.innerHTML = hrs - 12; } else { hours.innerHTML = hrs; } if (secs < 10) { seconds.innerHTML = '0' + secs; } else { seconds.innerHTML = secs; } if (mins < 10) { minutes.innerHTML = '0' + mins; } else { minutes.innerHTML = mins; } month.innerHTML = monthName[mm]; day.innerHTML = dd; year.innerHTML = yyyy; } setInterval(setDate,1000); window.onload = setInterval(clock,1000); function clock() { var d = new Date(); var date = d.getDate(); var month = d.getMonth(); var montharr =["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]; month=montharr[month]; var year = d.getFullYear(); var day = d.getDay(); var dayarr =["Sun","Mon","Tues","Wed","Thu","Fri","Sat"]; day=dayarr[day]; var hour =d.getHours(); var min = d.getMinutes(); var sec = d.getSeconds(); hour = updateTime(hour); min = updateTime(min); sec = updateTime(sec); document.getElementById("date").innerHTML=day+" "+date+" "+month+" "+year; document.getElementById("time").innerHTML=hour+":"+min+":"+sec; } function updateTime(k) { if (k < 10) { return "0" + k; } else { return k; } } var TxtRotate = function(el, toRotate, period) { this.toRotate = toRotate; this.el = el; this.loopNum = 0; this.period = parseInt(period, 10) || 2000; this.txt = ''; this.tick(); this.isDeleting = false; }; TxtRotate.prototype.tick = function() { var i = this.loopNum % this.toRotate.length; var fullTxt = this.toRotate[i]; if (this.isDeleting) { this.txt = fullTxt.substring(0, this.txt.length - 1); } else { this.txt = fullTxt.substring(0, this.txt.length + 1); } this.el.innerHTML = '<span class="wrap">'+this.txt+'</span>'; var that = this; var delta = 300 - Math.random() * 100; if (this.isDeleting) { delta /= 2; } if (!this.isDeleting && this.txt === fullTxt) { delta = this.period; this.isDeleting = true; } else if (this.isDeleting && this.txt === '') { this.isDeleting = false; this.loopNum++; delta = 500; } setTimeout(function() { that.tick(); }, delta); }; window.onload = function() { var elements = document.getElementsByClassName('txt-rotate'); for (var i=0; i<elements.length; i++) { var toRotate = elements[i].getAttribute('data-rotate'); var period = elements[i].getAttribute('data-period'); if (toRotate) { new TxtRotate(elements[i], JSON.parse(toRotate), period); } } // INJECT CSS var css = document.createElement("style"); css.type = "text/css"; css.innerHTML = ".txt-rotate > .wrap { border-right: 0.08em solid #666 }"; document.body.appendChild(css); }; script.js $(document).ready(function(){ $('#menu').click(function(){ $(this).toggleClass('fa-times'); $('.navbar').toggleClass('nav-toggle'); }); $(window).on('scroll load',function(){ $('#menu').removeClass('fa-times'); $('.navbar').removeClass('nav-toggle'); }); $('.portfolio .button-container .btn').click(function(){ let filter = $(this).attr('data-filter'); if(filter == 'all'){ $('.portfolio .image-container .box').show('400') }else{ $('.portfolio .image-container .box').not('.'+filter).hide('200'); $('.portfolio .image-container .box').filter('.'+filter).show('400'); } }); $('#theme-toggler').click(function(){ $(this).toggleClass('fa-sun'); $('body').toggleClass('dark-theme'); }); // smooth scrolling $('a[href*="#"]').on('click',function(e){ e.preventDefault(); $('html, body').animate({ scrollTop : $($(this).attr('href')).offset().top, }, 500, 'linear' ); }); }); function setDate() { const now = new Date(); const mm = now.getMonth(); const dd = now.getDate(); const yyyy = now.getFullYear(); const secs = now.getSeconds(); const mins = now.getMinutes(); const hrs = now.getHours(); const monthName = [ 'January','February','March','April', 'May','June','July','August','September', 'October','November','December' ]; if (hrs > 12) { hours.innerHTML = hrs - 12; } else { hours.innerHTML = hrs; } if (secs < 10) { seconds.innerHTML = '0' + secs; } else { seconds.innerHTML = secs; } if (mins < 10) { minutes.innerHTML = '0' + mins; } else { minutes.innerHTML = mins; } month.innerHTML = monthName[mm]; day.innerHTML = dd; year.innerHTML = yyyy; } setInterval(setDate,1000); window.onload = setInterval(clock,1000); function clock() { var d = new Date(); var date = d.getDate(); var month = d.getMonth(); var montharr =["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]; month=montharr[month]; var year = d.getFullYear(); var day = d.getDay(); var dayarr =["Sun","Mon","Tues","Wed","Thu","Fri","Sat"]; day=dayarr[day]; var hour =d.getHours(); var min = d.getMinutes(); var sec = d.getSeconds(); hour = updateTime(hour); min = updateTime(min); sec = updateTime(sec); document.getElementById("date").innerHTML=day+" "+date+" "+month+" "+year; document.getElementById("time").innerHTML=hour+":"+min+":"+sec; } function updateTime(k) { if (k < 10) { return "0" + k; } else { return k; } } var TxtRotate = function(el, toRotate, period) { this.toRotate = toRotate; this.el = el; this.loopNum = 0; this.period = parseInt(period, 10) || 2000; this.txt = ''; this.tick(); this.isDeleting = false; }; TxtRotate.prototype.tick = function() { var i = this.loopNum % this.toRotate.length; var fullTxt = this.toRotate[i]; if (this.isDeleting) { this.txt = fullTxt.substring(0, this.txt.length - 1); } else { this.txt = fullTxt.substring(0, this.txt.length + 1); } this.el.innerHTML = '<span class="wrap">'+this.txt+'</span>'; var that = this; var delta = 300 - Math.random() * 100; if (this.isDeleting) { delta /= 2; } if (!this.isDeleting && this.txt === fullTxt) { delta = this.period; this.isDeleting = true; } else if (this.isDeleting && this.txt === '') { this.isDeleting = false; this.loopNum++; delta = 500; } setTimeout(function() { that.tick(); }, delta); }; window.onload = function() { var elements = document.getElementsByClassName('txt-rotate'); for (var i=0; i<elements.length; i++) { var toRotate = elements[i].getAttribute('data-rotate'); var period = elements[i].getAttribute('data-period'); if (toRotate) { new TxtRotate(elements[i], JSON.parse(toRotate), period); } } // INJECT CSS var css = document.createElement("style"); css.type = "text/css"; css.innerHTML = ".txt-rotate > .wrap { border-right: 0.08em solid #666 }"; document.body.appendChild(css); }; Agradeço imenso a vossa ajuda, por favor. Aguardando uma resposta breve de vossa parte. Cumprimentos José Moreira Ps: https://codepen.io/Quencyjones79/pen/gOXQrbV (imagens para ajuda referidas em cima)- https://mab.to/64upEF7st todo o código-fonte.: https://mab.to/S7mtJ2kmh
  21. Boas tardes estou a desenvolver um projeto final e aparece me o seguinte erro Ja tentei de tudo mas nao sei como resolver alguem me poderia ajudar? Aqui está o codigo: <?php $uname1 = $_POST['Nome_Utilizador']; $paswrd = $_POST['Password']; $email = $_POST['Email']; if (!empty($uname1) || !empty($email) || !empty($paswrd)) { $host = "localhost"; $dbusername = "root"; $dbpassword = ""; $dbname = "pap"; // Create connection $conn = new mysqli ($host, $dbusername, $dbpassword, $dbname); if (mysqli_connect_error()){ die('Connect Error ('. mysqli_connect_errno() .') ' . mysqli_connect_error()); } else{ $SELECT = "SELECT Nome_Utilizador From login Where Nome_Utilizador = ?"; $INSERT = "INSERT Into registoo (NmUtilizador , Password ,Email)values(0,?,?,?)"; //Prepare statement $stmt = $conn->prepare($SELECT); $stmt->bind_param("s", $email); $stmt->execute(); $stmt->bind_result($email); $stmt->store_result(); $rnum = $stmt->num_rows; //checking username if ($rnum==0) { $stmt->close(); $stmt = $conn->prepare($INSERT); $stmt->bind_param("sss", $uname1,$paswrd,$email); $stmt->execute(); echo "Registado com sucesso"; } else { echo "Alguem ja tem esse nome de utlizador , coloque outro"; } $stmt->close(); $conn->close(); } } else { echo "Todos os campos sao necessarios"; die(); } ?>
  22. Boas eu tenho um trabalho que é uma biblioteca e esta tudo funcional o login e o register tao bem,mas quando quero clico na opçao livros não consigo da me erro 500,mas nao consigo ver no codigo onde possa estar o erro, supostamente o erro encontra se neste codigo so nao sei onde. <?php if (count(get_included_files()) == 1) {exit("Direct access not permitted.");} // Carregar e Instanciar Classe require_once 'livros.php'; $product = new Livro($pdo); $capa = '<img class="image" src="../assets/img/livro/'; $html = ''; //echo "LISTAR"; $html .= '<table id="livros" class="table table-striped">'; $html .= '<thead id="tabela_livros"><tr> <th>Titulo</th> <th>Autor</th> <th>Genero</th> <th>Editora</th> <th>Descrição</th> </thead><tbody>'; // Obter Produtos e número de registos $stmt = $product->read(); $num = $stmt->rowCount(); if ($num > 0) { // Obter conteúdos while ( $row = $stmt->fetch(PDO::FETCH_ASSOC)) { $html .= ' <tr> <td> '. $capa . $row['id'] . '.jpg' . '"'. '</td> <td> '. $row[ 'nome' ] . '</td> <td>' . $row[ 'autor' ] . '</td> <td>' . $row[ 'editora' ] . '</td> <td>' . $row[ 'genero' ] . '</td> <td>' . $row[ 'descricao' ] . '</td> </tr>'; } } else{ $html .= '<tr><td colspan="11">Sem registos</td></tr>'; } $html .= '<tbody></table>' echo $html; ?>
  23. Olá a todos. Estou a fazer uma base de dados "ecommerce" contudo quando estava a fazer a ligação do ficheiro mysqli_connect.php com o ficheiro add_artist.php, estou a ter erros no segundo ficheiro. Em baixo envio o código fonte e algumas imagens para me ajudarem. <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Add an Artist</title> <meta charset="UTF-8"> <meta name="description" content="Home page"> <meta name="keywords" content="ecommerce"> <meta name="author" content="José Moreira"> <meta name="viewport" content="width=device-width, initial-scale=1"> </head> <body> <?php # Script 19.1 - add_artist.php // This page allows the administrator to add an artist. if ($_SERVER['REQUEST_METHOD'] = = 'POST') { // Handle the form. // Validate the first and middle names (neither required): $fn = (!empty($_POST['first_name'])) ? trim($_POST['first_name']) : NULL; $mn = (!empty($_POST['middle_name'])) ? trim($_POST['middle_name']) : NULL; // Check for a last_name... if (!empty($_POST['last_name'])) { $ln = trim($_POST['last_name']); // Add the artist to the database: require ('../../mysqli_connect. php'); $q = 'INSERT INTO artists (first_ name, middle_name, last_name) VALUES (?, ?, ?)'; $stmt = mysqli_prepare($dbc, $q); mysqli_stmt_bind_param($stmt, 'sss', $fn, $mn, $ln); mysqli_stmt_execute($stmt); // Check the results.... if (mysqli_stmt_affected_ rows($stmt) = = 1) { echo '<p>The artist has been added.</p>'; $_POST = array( ); } else { // Error! $error = 'The new artist could not be added to the database!'; } // Close this prepared statement: mysqli_stmt_close($stmt); mysqli_close($dbc); // Close the database connection. } else { // No last name value. $error = 'Please enter the artist\'s name!'; } } // End of the submission IF. // Check for an error and print it: if (isset($error)) { echo '<h1>Error!</h1> <p style="font-weight: bold; color: #C00">' . $error . ' Please try again.</p>'; } // Display the form... ?> <h1>Add a Print</h1> <form action="add_artist.php" method="post"> <fieldset><legend>Fill out the form to add an artist:</legend> <p><b>First Name:</b> <input type="text" name="first_name" size="10" maxlength="20" value="<?php if (isset($_POST['first_name'])) echo $_POST['first_name']; ?>" /></p> <p><b>Middle Name:</b> <input type="text" name="middle_name" size="10" maxlength="20" value="<?php if (isset($_POST['middle_name'])) echo $_POST['middle_name']; ?>" /></p> <p><b>Last Name:</b> <input type="text" name="last_name" size="10" maxlength="40" value="<?php if (isset($_POST['last_name'])) echo $_POST['last_name']; ?>" /></p> </fieldset> <div align="center"><input type="submit" name="submit" value="Submit" /></div> </form> </body> </html> mysqli_connect.php <?php # Script 9.2 - mysqli_connect.php // This file contains the database access information. // This file also establishes a connection to MySQL, // selects the database, and sets the encoding. // Set the database access information as constants: DEFINE ('DB_USER', 'username'); DEFINE ('DB_PASSWORD', 'Quencyjones79'); DEFINE ('DB_HOST', 'localhost'); DEFINE ('DB_NAME', 'ecommerce'); // Make the connection: $dbc = @mysqli_connect (DB_HOST, DB_USER, DB_PASSWORD, DB_NAME) OR die ('Could not connect to MySQL: ' . mysqli_connect_error( ) ); // Set the encoding... mysqli_set_charset($dbc, 'utf8'); Agradeço imenso a sua ajuda.
  24. Bom dia meus caros, alguém com algumas dicas sobre formas de envio de SMS via Browser? Tenho que usar uma API e enviar a partir dela? Alguma luz? obrigado,
  25. Boa tarde a todos, Estou a desenvolver uma aplicação web e uma das funções era o envio de emails apos submeter um form. Funciona tudo muito bem em localhost mas ao passar para um servidor sempre que tento enviar o email é dado erro SMTP -> ERROR: Failed to connect to server: Connection timed out (110) The following From address failed: xxx@iscte-iul.pt : Called Mail() without being connected function smtpmailer($para, $de, $de_nome, $replyto , $cc ,$assunto, $corpo) { global $error; $mail = new PHPMailer(); $mail->CharSet = 'UTF-8'; $mail->IsSMTP(); // Ativar SMTP $mail->SMTPDebug = 1; // Debugar: 1 = erros e mensagens, 2 = mensagens apenas $mail->SMTPAuth = true; // Autenticação ativada $mail->SMTPSecure = 'tls'; //$mail->SMTPSecure = 'TLS'; $mail->Host = 'smtp.office365.com'; // SMTP utilizado $mail->Port = 587; // A porta 587 deverá estar aberta em seu servidor $mail->Username = GUSER; $mail->Password = GPWD; $mail->SetFrom($de, $de_nome); $mail->AddReplyTo($replyto, $de_nome); $mail->AddCC($cc, $de_nome); $mail->Subject = $assunto; $mail->Body = $corpo; $mail->AddAddress($para); if (!$mail->Send()) { $error = 'Mail error: ' . $mail->ErrorInfo; return false; } else { $error = 'Mensagem enviada!'; return true; } } O que poderá causar este erro. Poderá ser permissoes ? Obrigado a todos
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.