Edilson Santiago Postado Agosto 24, 2022 Denunciar Share Postado Agosto 24, 2022 (editado) Estou tentando fazer update no BD, mas não atualiza. Não sei o que acontece. A imagem da logo faz o upload certinho para a pasta, mas no BD nada muda. Não consigo encontrar o erro. Meu formulário: <?php session_start(); if(!isset($_SESSION['id'])) { header("location: ../index.php"); exit; } require_once '../config.php'; $resultado_igreja = "SELECT * FROM CadIgreja"; $resultado = $pdo->prepare($resultado_igreja); $resultado->execute(); $row_igreja = $resultado->fetch(PDO::FETCH_ASSOC); ?> <html lang="pt-br"> <head> <meta charset="utf-8"> <link type="text/css" rel="stylesheet" media="screen" href="estilos2.css" /> </head> <body> <div style="text-align:center"><h2><font color="#ffffff">DADOS DA IGREJA</h2></font><br><br></div> <div id="table"> <div class="instrucoes">Atenção! Você está no "Modo Editar". Todas as alterações feitas no formulário<br>serão gravadas no Banco de Dados ao clicar em "Salvar"</div> <form id="formulario" method="POST" enctype="multipart/form-data" action="proc_edit_igreja.php"> <label class="id">ID:</label> <input class="id" type="text" name="id" value="<?php echo $row_igreja['IdIgreja']; ?>"> <label class="nome">Nome:</label> <input class="nome" type="text" name="nome" value="<?php echo $row_igreja['Nome']; ?>"> <label class="tipo">Tipo:</label> <select class="editatipo" name="tipo"> <option value="<?php echo $row_igreja['id']; ?>"><?php echo $row_igreja['tipo']; ?></option> <option value=""></option> <option value="Sede">Sede</option> <option value="Congregação">Congregação</option> <option value="Ponto de Pregação">Ponto de Pregação</option> <option value="Missão">Missão</option> <option value="Célula">Pequeno Grupo / Célula</option> </select> <label class="rua">Endereço (Rua, Av., etc.):</label> <input class="rua" type="text" name="rua" value="<?php echo $row_igreja['EnderecoRua']; ?>" > <label class="numero">Número:</label> <input class="numero" type="text" name="numero" value="<?php echo $row_igreja['Num']; ?>" > <label class="complem">Complemento:</label> <input class="complem" type="text" name="complem" value="<?php echo $row_igreja['Compl']; ?>" > <label class="bairro">Bairro:</label> <input class="bairro" type="text" name="bairro" value="<?php echo $row_igreja['Bairro']; ?>" > <label class="cidade">Cidade:</label> <input class="cidade" type="text" name="cidade" value="<?php echo $row_igreja['Cidade']; ?>s" > <label class="uf">UF:</label> <select class="editauf" name="uf"> <option value="<?php echo $row_igreja['id']; ?>"><?php echo $row_igreja['UF']; ?></option> <option value=""></option> <option value="AC">AC</option> <option value="AL">AL</option> <option value="AP">AP</option> <option value="AM">AM</option> <option value="BA">BA</option> <option value="CE">CE</option> <option value="DF">DF</option> <option value="ES">ES</option> <option value="GO">GO</option> <option value="MA">MA</option> <option value="MS">MS</option> <option value="MT">MT</option> <option value="MG">MG</option> <option value="PA">PA</option> <option value="PB">PB</option> <option value="PR">PR</option> <option value="PE">PE</option> <option value="PI">PI</option> <option value="RJ">RJ</option> <option value="RN">RN</option> <option value="RS">RS</option> <option value="RO">RO</option> <option value="RR">RR</option> <option value="SC">SC</option> <option value="SP">SP</option> <option value="SE">SE</option> <option value="TO">TO</option> </select> <label class="cep">CEP:</label> <input class="cep" type="text" name="cep" value="<?php echo $row_igreja['CEP']; ?>" > <label class="tel">Telefone:</label> <input class="tel" type="text" name="tel" value="<?php echo $row_igreja['Tel']; ?>" > <label class="tel2">Telefone (2):</label> <input class="tel2" type="text" name="tel2" value="<?php echo $row_igreja['Tel2']; ?>" > <label class="email">E-mail:</label> <input class="email" type="text" name="email" value="<?php echo $row_igreja['E-mail']; ?>" > <label class="site">Site:</label> <input class="site" type="text" name="site" value="<?php echo $row_igreja['Site']; ?>" > <label class="razsoc">Razão Social:</label> <input class="razsoc" type="text" name="razsoc" value="<?php echo $row_igreja['RazSoc']; ?>" > <label class="cnpj">CNPJ:</label> <input class="cnpj" type="text" name="cnpj" value="<?php echo $row_igreja['CNPJ']; ?>" > <label class="dtorg">Dt. Organização:</label> <input class="dtorg" type="text" name="dtorg" value="<?php echo date('d/m/Y', strtotime($row_igreja['DtOrg'])); ?>" > <label class="dtatualiza">Última Atualização:</label> <input class="dtatualiza" type="text" name="dtatualiza" value="<?php echo date('d/m/Y', strtotime($row_igreja['UltimaAtualiz'])); ?>" > <label class="obs">Obs:</label> <input class="obs" type="textarea" scrool="yes" name="obs" value="<?php echo $row_igreja['Obs']; ?>" > <?php $logo_igreja = $row_igreja['Logo']; $logo = $logo_igreja; ?> <input id="selecao-arquivo" type="file" name="flImage" accept="image/*"> <div class="logo" id="foto_logo" name="foto_logo"><img id="imgPhoto" src="<?php echo $logo ?>"</img> <script type="text/javascript"> foto_logo = document.getElementById('selecao-arquivo'); foto_logo.addEventListener('change', function(e) { showThumbnail(this.files);}) function showThumbnail(files) { if (files && files[0]) { reader = new FileReader(); reader.onload = function (e) { imgPhoto.src = e.target.result;} reader.readAsDataURL(files[0]);}} </script> </div> <label class="selecao-arquivo" for='selecao-arquivo'>Selecionar Imagem »</label> <input class="btn_edit" type="submit" name"salvar" value="SALVAR"> </form> </div> </body> </head> </html> Minha página proc_edit_igreja.php: <?php session_start(); if(!isset($_SESSION['id'])) { header("location: ../index.php"); exit; } include_once '../config.php'; if(isset($_POST)){ $id = filter_input(INPUT_POST, 'id', FILTER_SANITIZE_STRING); $nome = filter_input(INPUT_POST, 'nome', FILTER_SANITIZE_STRING); $tipo = filter_input(INPUT_POST, 'tipo', FILTER_SANITIZE_STRING); $rua = filter_input(INPUT_POST, 'rua', FILTER_SANITIZE_STRING); $numero = filter_input(INPUT_POST, 'numero', FILTER_SANITIZE_STRING); $complem = filter_input(INPUT_POST, 'complem', FILTER_SANITIZE_STRING); $bairro = filter_input(INPUT_POST, 'bairro', FILTER_SANITIZE_STRING); $cidade = filter_input(INPUT_POST, 'cidade', FILTER_SANITIZE_STRING); $uf = filter_input(INPUT_POST, 'uf', FILTER_SANITIZE_STRING); $cep = filter_input(INPUT_POST, 'cep', FILTER_SANITIZE_STRING); $tel = filter_input(INPUT_POST, 'tel', FILTER_SANITIZE_STRING); $tel2 = filter_input(INPUT_POST, 'tel2', FILTER_SANITIZE_STRING); $email = filter_input(INPUT_POST, 'email', FILTER_SANITIZE_STRING); $site = filter_input(INPUT_POST, 'site', FILTER_SANITIZE_STRING); $razsoc = filter_input(INPUT_POST, 'razsoc', FILTER_SANITIZE_STRING); $cnpj = filter_input(INPUT_POST, 'cnpj', FILTER_SANITIZE_STRING); $dtorg = filter_input(INPUT_POST, 'dtorg', FILTER_SANITIZE_STRING); $dtatualiza = filter_input(INPUT_POST, 'dtatualiza', FILTER_SANITIZE_STRING); $obs = filter_input(INPUT_POST, 'obs', FILTER_SANITIZE_STRING); if ( isset( $_FILES[ 'flImage' ][ 'name' ] ) && $_FILES[ 'flImage' ][ 'error' ] == 0 ) { $arquivo_tmp = $_FILES[ 'flImage' ][ 'tmp_name' ]; $nome = $_FILES[ 'flImage' ][ 'name' ]; $extensao = pathinfo ( $nome, PATHINFO_EXTENSION ); $extensao = strtolower ( $extensao ); if ( strstr ( '.jpg;.jpeg;.gif;.png', $extensao ) ) { $novoNome = uniqid ( time () ) . '.' . $extensao; $destino = 'photos/' . $novoNome; if ( @move_uploaded_file ( $arquivo_tmp, $destino ) ) { $foto_logo = "http://www.meusite/paginas/" . $destino; }else $foto_logo = ""; }else $foto_logo = ""; }else $foto_logo = ""; } $sql = "UPDATE CadIgreja SET Nome=?, tipo=?, EnderecoRua=?, Num=?, Compl=?, Bairro=?, Cidade=?, UF=?, CEP=?, Tel=?, Tel2=?, E-mail=?, Site=?, RazSoc=?, CNPJ=?, Obs=?, Logo=?, DtOrg=?, UltimaAtualiz=? WHERE IdIgreja=?"; $stmt= $pdo->prepare($sql); if($stmt->execute([$nome, $tipo, $rua, $numero, $complem, $bairro, $cidade, $uf, $cep, $tel, $tel2, $email, $site, $razsoc, $cnpj, $obs, $logo, $dtorg, $dtatualiza, $id])){ echo '<script> alert ("Registro atualizado com sucesso!"); location.href=("painel.php?igreja")</script>'; }else{ echo '<script> alert ("Houve um erro. Tente novamente!"); location.href=("painel.php?igreja_editar")</script>'; } ?> Editado Agosto 24, 2022 por Edilson Santiago Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Frank K Hosaka Postado Agosto 24, 2022 Denunciar Share Postado Agosto 24, 2022 Correto, ele faz o upload, mas o programa da primeira listagem não grava o caminho da nova imagem na variável $logo, e também não transporta a variável $logo para a próxima página. A segunda página também não está preparada para receber o novo caminho do $logo que não foi definido na primeira página. Na segunda página também tem uma variável PHP $_FILES, ele não deveria estar lá, ele deveria estar na primeira página para definir o novo caminho do $logo. Isso é uma prova material para mandar o programador para o olho da rua por justa causa! Citar Link para o comentário Compartilhar em outros sites More sharing options...
1 Edilson Santiago Postado Agosto 24, 2022 Autor Denunciar Share Postado Agosto 24, 2022 (editado) Desculpe, amigo. Não compreendi. A variável $logo da página do formulário recebe o caminho que está no Banco de Dados, ou seja, a logo atual. Quando clico em "salvar", ele chama o php que vai fazer o UPDATE. Esse php, vai gerar o url da nova logo, então a primeira url já é desnecessária. De fato eu fiz o segundo php com a variável $foto_logo, em vez de $logo. Mas corrigido isso, continua o problema. Quanto à variável $_FILES, não entendi por que ela tem que estar na página do formulário, se ela é chamada no php antes do update, e é justamente ela que está pegando o arquivo do files e mandando pro upload, além de gerar o url do mesmo. Mas mesmo assim, segui a sua sugestão. Ficou assim a página do formulário: <?php session_start(); if(!isset($_SESSION['id'])) { header("location: ../index.php"); exit; } require_once '../config.php'; $resultado_igreja = "SELECT * FROM CadIgreja"; $resultado = $pdo->prepare($resultado_igreja); $resultado->execute(); $row_igreja = $resultado->fetch(PDO::FETCH_ASSOC); ?> <html lang="pt-br"> <head> <meta charset="utf-8"> <link type="text/css" rel="stylesheet" media="screen" href="estilos2.css" /> </head> <body> <div style="text-align:center"><h2><font color="#ffffff">DADOS DA IGREJA</h2></font><br><br></div> <div id="table"> <div class="instrucoes">Atenção! Você está no "Modo Editar". Todas as alterações feitas no formulário<br>serão gravadas no Banco de Dados ao clicar em "Salvar"</div> <form id="formulario" method="POST" enctype="multipart/form-data" action="proc_edit_igreja.php"> <label class="id">ID:</label> <input class="id" type="text" name="id" value="<?php echo $row_igreja['IdIgreja']; ?>"> <label class="nome">Nome:</label> <input class="nome" type="text" name="nome" value="<?php echo $row_igreja['Nome']; ?>"> <label class="tipo">Tipo:</label> <select class="editatipo" name="tipo"> <option value="<?php echo $row_igreja['id']; ?>"><?php echo $row_igreja['tipo']; ?></option> <option value=""></option> <option value="Sede">Sede</option> <option value="Congregação">Congregação</option> <option value="Ponto de Pregação">Ponto de Pregação</option> <option value="Missão">Missão</option> <option value="Célula">Pequeno Grupo / Célula</option> </select> <label class="rua">Endereço (Rua, Av., etc.):</label> <input class="rua" type="text" name="rua" value="<?php echo $row_igreja['EnderecoRua']; ?>" > <label class="numero">Número:</label> <input class="numero" type="text" name="numero" value="<?php echo $row_igreja['Num']; ?>" > <label class="complem">Complemento:</label> <input class="complem" type="text" name="complem" value="<?php echo $row_igreja['Compl']; ?>" > <label class="bairro">Bairro:</label> <input class="bairro" type="text" name="bairro" value="<?php echo $row_igreja['Bairro']; ?>" > <label class="cidade">Cidade:</label> <input class="cidade" type="text" name="cidade" value="<?php echo $row_igreja['Cidade']; ?>s" > <label class="uf">UF:</label> <select class="editauf" name="uf"> <option value="<?php echo $row_igreja['id']; ?>"><?php echo $row_igreja['UF']; ?></option> <option value=""></option> <option value="AC">AC</option> <option value="AL">AL</option> <option value="AP">AP</option> <option value="AM">AM</option> <option value="BA">BA</option> <option value="CE">CE</option> <option value="DF">DF</option> <option value="ES">ES</option> <option value="GO">GO</option> <option value="MA">MA</option> <option value="MS">MS</option> <option value="MT">MT</option> <option value="MG">MG</option> <option value="PA">PA</option> <option value="PB">PB</option> <option value="PR">PR</option> <option value="PE">PE</option> <option value="PI">PI</option> <option value="RJ">RJ</option> <option value="RN">RN</option> <option value="RS">RS</option> <option value="RO">RO</option> <option value="RR">RR</option> <option value="SC">SC</option> <option value="SP">SP</option> <option value="SE">SE</option> <option value="TO">TO</option> </select> <label class="cep">CEP:</label> <input class="cep" type="text" name="cep" value="<?php echo $row_igreja['CEP']; ?>" > <label class="tel">Telefone:</label> <input class="tel" type="text" name="tel" value="<?php echo $row_igreja['Tel']; ?>" > <label class="tel2">Telefone (2):</label> <input class="tel2" type="text" name="tel2" value="<?php echo $row_igreja['Tel2']; ?>" > <label class="email">E-mail:</label> <input class="email" type="text" name="email" value="<?php echo $row_igreja['E-mail']; ?>" > <label class="site">Site:</label> <input class="site" type="text" name="site" value="<?php echo $row_igreja['Site']; ?>" > <label class="razsoc">Razão Social:</label> <input class="razsoc" type="text" name="razsoc" value="<?php echo $row_igreja['RazSoc']; ?>" > <label class="cnpj">CNPJ:</label> <input class="cnpj" type="text" name="cnpj" value="<?php echo $row_igreja['CNPJ']; ?>" > <label class="dtorg">Dt. Organização:</label> <input class="dtorg" type="text" name="dtorg" value="<?php echo date('d/m/Y', strtotime($row_igreja['DtOrg'])); ?>" > <label class="dtatualiza">Última Atualização:</label> <input class="dtatualiza" type="text" name="dtatualiza" value="<?php echo date('d/m/Y', strtotime($row_igreja['UltimaAtualiz'])); ?>" > <label class="obs">Obs:</label> <input class="obs" type="textarea" scrool="yes" name="obs" value="<?php echo $row_igreja['Obs']; ?>" > <?php $logo_igreja = $row_igreja['Logo']; $logo = $logo_igreja; ?> <input id="selecao-arquivo" type="file" name="flImage" accept="image/*"> <div class="logo" id="foto_logo" name="foto_logo"><img id="imgPhoto" src="<?php echo $logo ?>"</img> <script type="text/javascript"> foto_logo = document.getElementById('selecao-arquivo'); foto_logo.addEventListener('change', function(e) { showThumbnail(this.files);}) function showThumbnail(files) { if (files && files[0]) { reader = new FileReader(); reader.onload = function (e) { imgPhoto.src = e.target.result;} reader.readAsDataURL(files[0]);}} </script> </div> <label class="selecao-arquivo" for='selecao-arquivo'>Selecionar Imagem »</label> <?php if ( isset( $_FILES[ 'flImage' ][ 'name' ] ) && $_FILES[ 'flImage' ][ 'error' ] == 0 ) { $arquivo_tmp = $_FILES[ 'flImage' ][ 'tmp_name' ]; $nome = $_FILES[ 'flImage' ][ 'name' ]; $extensao = pathinfo ( $nome, PATHINFO_EXTENSION ); $extensao = strtolower ( $extensao ); if ( strstr ( '.jpg;.jpeg;.gif;.png', $extensao ) ) { $novoNome = uniqid ( time () ) . '.' . $extensao; $destino = 'photos/' . $novoNome; if ( @move_uploaded_file ( $arquivo_tmp, $destino ) ) { $logo = "http://www.meusite.com.br/ibnagv/paginas/" . $destino; }else $logo = ""; } else $logo = ""; } ?> <input class="btn_edit" type="submit" name"salvar" value="SALVAR"> </form> </div> </body> </head> </html> E o php que faz o update ficou assim: <?php session_start(); if(!isset($_SESSION['id'])) { header("location: ../index.php"); exit; } require_once '../config.php'; if(isset($_POST)){ $id = filter_input(INPUT_POST, 'id', FILTER_SANITIZE_STRING); $nome = filter_input(INPUT_POST, 'nome', FILTER_SANITIZE_STRING); $tipo = filter_input(INPUT_POST, 'tipo', FILTER_SANITIZE_STRING); $rua = filter_input(INPUT_POST, 'rua', FILTER_SANITIZE_STRING); $numero = filter_input(INPUT_POST, 'numero', FILTER_SANITIZE_STRING); $complem = filter_input(INPUT_POST, 'complem', FILTER_SANITIZE_STRING); $bairro = filter_input(INPUT_POST, 'bairro', FILTER_SANITIZE_STRING); $cidade = filter_input(INPUT_POST, 'cidade', FILTER_SANITIZE_STRING); $uf = filter_input(INPUT_POST, 'uf', FILTER_SANITIZE_STRING); $cep = filter_input(INPUT_POST, 'cep', FILTER_SANITIZE_STRING); $tel = filter_input(INPUT_POST, 'tel', FILTER_SANITIZE_STRING); $tel2 = filter_input(INPUT_POST, 'tel2', FILTER_SANITIZE_STRING); $email = filter_input(INPUT_POST, 'email', FILTER_SANITIZE_STRING); $site = filter_input(INPUT_POST, 'site', FILTER_SANITIZE_STRING); $razsoc = filter_input(INPUT_POST, 'razsoc', FILTER_SANITIZE_STRING); $cnpj = filter_input(INPUT_POST, 'cnpj', FILTER_SANITIZE_STRING); $obs = filter_input(INPUT_POST, 'obs', FILTER_SANITIZE_STRING); $logo = filter_input(INPUT_POST, 'logo', FILTER_SANITIZE_STRING); $dtorg = filter_input(INPUT_POST, 'dtorg', FILTER_SANITIZE_STRING); $dtatualiza = filter_input(INPUT_POST, 'dtatualiza', FILTER_SANITIZE_STRING); $sql = "UPDATE CadIgreja SET Nome=?, tipo=?, EnderecoRua=?, Num=?, Compl=?, Bairro=?, Cidade=?, UF=?, CEP=?, Tel=?, Tel2=?, E-mail=?, Site=?, RazSoc=?, CNPJ=?, Obs=?, Logo=?, DtOrg=?, UltimaAtualiz=? WHERE IdIgreja=?"; $stmt= $pdo->prepare($sql); if($stmt->execute([$nome, $tipo, $rua, $numero, $complem, $bairro, $cidade, $uf, $cep, $tel, $tel2, $email, $site, $razsoc, $cnpj, $obs, $logo, $dtorg, $dtatualiza, $id])){ echo '<script> alert ("Registro atualizado com sucesso!"); location.href=("igreja.php")</script>'; }else{ echo '<script> alert ("Houve um erro. Tente novamente!"); location.href=("igreja_editar.php")</script>'; } } ?> Mas acho que ainda mereço a justa causa, porque continua fazendo o upload da imagem, mas não faz o update no BD. Fiz um echo para saber se a variável $logo está carregada, e sim, está. Na página do forumlário ela está carregada com a url da logo atual, e no php ela já aparece com a url da nova imagem. Mas nada de update. Por fim, agradeço sua atenção e ajuda. Não sou profissional. Estou criando esse sisteminha gratuitamente para a pequena igreja onde congrego, nas horas de folga, para ir pesquisando, fazendo e aprendendo... por isso às vezes minhas dúvidas e erros podem parecer principiantes, porque de fato são. No mais, abraços. Editado Agosto 24, 2022 por Edilson Santiago Quis mudar algumas palavras Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Frank K Hosaka Postado Agosto 24, 2022 Denunciar Share Postado Agosto 24, 2022 (editado) Eu vou estudar por aqui como ficou o novo código, enquanto isso, sugiro mudar if($stmt->execute([$nome, $tipo, $rua, $numero, $complem, $bairro, $cidade, $uf, $cep, $tel, $tel2, $email, $site, $razsoc, $cnpj, $obs, $logo, $dtorg, $dtatualiza, $id])){ por if($stmt->execute(['$nome','$tipo','$rua',$numero,... ou seja, as variáveis que trabalham com número sem aspas e com strings com aspas. Eu vou demorar bastante com esse código, pois pretendo testar. Editado Agosto 24, 2022 por Frank K Hosaka Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Frank K Hosaka Postado Agosto 24, 2022 Denunciar Share Postado Agosto 24, 2022 (editado) Fiz um monte de adaptações para funcionar no meu laboratório (você vai ter que readaptar o código novamente). O problema da variável logo resolvi através de um input invisível com o nome de logo. O valor dele é definido pelo código do JavaScript. Vou passar duas listagens, a primeira dei o nome de astudy.php e a segunda de astudy2.php. Note que o action do formulário da atualização cadastral manda para a página astudy2.php (você vai ter que consertar isso), eu não lembro mais qual era o nome da página. astudy.php ------------------------------------------------------------ <!--mudei o nome do campo E-Mail para Email no MysQL, o nome da tabela CadIgreja para cadigreja--> <html lang="pt-br"> <head> <meta charset="utf-8"> <link type="text/css" rel="stylesheet" media="screen" href="estilos2.css" /> <style> input, select {background:lightgray} </style> </head> <body> <div id=divcadastro style="text-align:center"><h2><font color=black>Atualização de cadastro da igreja</h2></font><br><br></div> <?php session_start(); $_SESSION['id']="Frank"; // aqui fiz gambirra para testar o o código if(!isset($_SESSION['id'])){header("location: ../index.php");} $pdo = new pdo('mysql:host=localhost;dbname=astudy','root',''); // outra gambiarra // require_once '../config.php'; // isso é importante, mas eu comentei para testar $resultado = $pdo->prepare("select * from cadigreja"); $resultado->execute(); $row = $resultado->fetchAll(PDO::FETCH_ASSOC); $row_igreja=$row[0]; echo "<form method=post><select name=selecigreja onchange=submit()><option>Selecione a igreja</option>"; foreach($row as $igreja){ echo "<option value=".$igreja['IdIgreja'].">".$igreja['Nome']."<br>";} echo "</select></form>"; if(isset($_POST['selecigreja'])){ $igrejaselecionada=$_POST['selecigreja']; $resultado_igreja=$pdo->prepare("select * from cadigreja where IdIgreja=$igrejaselecionada"); $resultado_igreja->execute(); $row_igreja=$resultado_igreja->fetch(PDO::FETCH_ASSOC);} ?> <div id="table"> <div class="instrucoes">Atenção! Você está no "Modo Editar". Todas as alterações feitas no formulário<br>serão gravadas no Banco de Dados ao clicar em "Salvar"</div> <form id="formulario" method="POST" enctype="multipart/form-data" action="astudy2.php"> <!-- alterado --> <label class="id">ID:</label> <input class="id" type="text" name="id" value="<?=$row_igreja['IdIgreja'];?>"> <label class="nome">Nome:</label> <input class="nome" type="text" name="nome" value="<?=$row_igreja['Nome'];?>"> <label class="tipo">Tipo:</label> <select class="editatipo" name="tipo"> <option value="<?php echo $row_igreja['id']; ?>"><?=$row_igreja['tipo'];?></option> <option value=""></option> <option value="Sede">Sede</option> <option value="Congregação">Congregação</option> <option value="Ponto de Pregação">Ponto de Pregação</option> <option value="Missão">Missão</option> <option value="Célula">Pequeno Grupo / Célula</option> </select> <label class="rua">Endereço (Rua, Av., etc.):</label> <input class="rua" type="text" name="rua" value="<?=$row_igreja['EnderecoRua'];?>" > <label class="numero">Número:</label> <input class="numero" type="text" name="numero" value="<?=$row_igreja['Num'];?>" > <label class="complem">Complemento:</label> <input class="complem" type="text" name="complem" value="<?=$row_igreja['Compl'];?>" > <label class="bairro">Bairro:</label> <input class="bairro" type="text" name="bairro" value="<?=$row_igreja['Bairro'];?>" > <label class="cidade">Cidade:</label> <input class="cidade" type="text" name="cidade" value="<?=$row_igreja['Cidade'];?>s" > <label class="uf">UF:</label> <select class="editauf" name="uf" id="uf"> <?php $uf=["AC","AL","AP","AM","BA","CE","DF","ES","GO","MA","MS","MT","MG","PA","PR","PE","PI","RJ","RO","RR","SC","SP","SE","TO"]; foreach($uf as $uf){ echo "<option value=$uf>$uf</option>";} echo "<script>textToFind='".$row_igreja['UF']."';for(i=0;i<uf.options.length;i++){ if (uf.options[i].text === textToFind){uf.selectedIndex = i;break;}} </script>"; ?> <label class="cep">CEP:</label> <input class="cep" type="text" name="cep" value="<?=$row_igreja['CEP'];?>"> <label class="tel">Telefone:</label> <input class="tel" type="text" name="tel" value="<?=$row_igreja['Tel'];?>" > <label class="tel2">Telefone (2):</label> <input class="tel2" type="text" name="tel2" value="<?=$row_igreja['Tel2'];?>" > <label class="email">E-mail:</label> <input class="email" type="text" name="email" value="<?=$row_igreja['Email'];?>" > <label class="site">Site:</label> <input class="site" type="text" name="site" value="<?=$row_igreja['Site'];?>" > <label class="razsoc">Razão Social:</label> <input class="razsoc" type="text" name="razsoc" value="<?=$row_igreja['RazSoc'];?>" > <label class="cnpj">CNPJ:</label> <input class="cnpj" type="text" name="cnpj" value="<?=$row_igreja['CNPJ'];?>" > <label class="dtorg">Dt. Organização:</label> <input class="dtorg" type="text" name="dtorg" value="<?=date('d/m/Y', strtotime($row_igreja['DtOrg']));?>" > <label class="dtatualiza">Última Atualização:</label> <input class="dtatualiza" type="text" name="dtatualiza" value="<?=date('d/m/Y', strtotime($row_igreja['UltimaAtualiz']));?>" > <label class="obs">Obs:</label> <input class="obs" type="textarea" scrool="yes" name="obs" value="<?=$row_igreja['Obs'];?>" > <div class="logo" id="foto_logo" name="foto_logo"> <input id="selecao-arquivo" type="file" accept="image/*"> <input id=inplogo type=hidden name="logo" value="<?row_igreja['Logo']?>"> <label class="selecao-arquivo" for='selecao-arquivo'>Selecionar nova imagem para atualizar »</label> <img id="imgPhoto" height=170px width=170px src="<?=$row_igreja['Logo']?>"</img> <script type="text/javascript"> foto_logo = document.getElementById('selecao-arquivo'); foto_logo.addEventListener('change', function(e) { showThumbnail(this.files);}) function showThumbnail(files) { if (files && files[0]) { inplogo.value=files[0].name reader = new FileReader(); reader.onload = function (e) { imgPhoto.src = e.target.result} reader.readAsDataURL(files[0])}} </script> </div> <p><input class="btn_edit" type="submit" name"salvar" value="SALVAR"></p> </form> </div> </body> </html> astudy2.php --------------------------------------------- <?php $_SESSION['id']="Frank"; // aqui fiz gambiarra para entrar no código; session_start(); if(!isset($_SESSION['id'])){header("location: ../index.php");} //require_once '../config.php'; $pdo = new pdo('mysql:host=localhost;dbname=astudy','root',''); $IdIgreja = $_POST['id']; $Nome = $_POST['nome']; $tipo = $_POST['tipo']; $EnderecoRua = $_POST['rua']; $Num = $_POST['numero']; $Compl =$_POST['complem']; $Bairro = $_POST['bairro']; $Cidade = $_POST['cidade']; $UF = $_POST['uf']; $CEP = $_POST['cep']; $Tel = $_POST['tel']; $Tel2 = $_POST['tel2']; $Email = $_POST['email']; $Site = $_POST['site']; $RazSoc = $_POST['razsoc']; $CNPJ = $_POST['cnpj']; $Obs = $_POST['obs']; $Logo = $_POST['logo']; $DtOrg = $_POST['dtorg']; $UltimaAtualiz = $_POST['dtatualiza']; $sql = "UPDATE CadIgreja SET Nome=?, tipo=?, EnderecoRua=?, Num=?, Compl=?, Bairro=?, Cidade=?, UF=?, CEP=?, Tel=?, Tel2=?, Email=?, Site=?, RazSoc=?, CNPJ=?, Obs=?, Logo=?, DtOrg=?, UltimaAtualiz=? WHERE IdIgreja=?"; $stmt= $pdo->prepare($sql); if($stmt->execute([$Nome, $tipo, $EnderecoRua, $Num, $Compl, $Bairro, $Cidade, $UF, $CEP, $Tel, $Tel2, $Email, $Site, $RazSoc, $CNPJ, $Obs, $Logo, $DtOrg, $UltimaAtualiz, $IdIgreja])){ echo '<script> alert ("Registro atualizado com sucesso!"); location.href=("igreja.php")</script>'; }else{ echo '<script> alert ("Houve um erro. Tente novamente!"); location.href=("igreja_editar.php")</script>'; } ?> Editado Agosto 25, 2022 por Frank K Hosaka Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Edilson Santiago
Estou tentando fazer update no BD, mas não atualiza. Não sei o que acontece. A imagem da logo faz o upload certinho para a pasta, mas no BD nada muda.
Não consigo encontrar o erro.
Meu formulário:
Minha página proc_edit_igreja.php:
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.