rosarinho 0 Denunciar post Postado Setembro 30, 2015 Olá pessoal! Estou com um b.o tenho uma página chamada alteracao.php onde ela mostra uma tabela com os campos que são puxados do banco e cada linha possui um botão chamado editar. para poder editar a pessoa cadastrada. esse editar me direciona para o alterar.php onde me trás os dados no form! até ai funcionando.. mudo os dados da pessoa. e salvo onde ele vai para o salvaralteracao.php onde possui o update .mais ele da um erro. ( ! ) Notice: Undefined index: id in C:\wamp\www\intranet\salvaralteracao.php on line 3 obs.: criei uma coluna id que não é mostrada no alteracao.php somente no alterar.php com o campo disabled. não tem necessidade de mostrar na tabela pois só uso ela como referencia para puxar os dados para o form do alterar.php(id está como campo único e auto. incremen..) irei postar os códigos de cada um. alteracao.php <?php error_reporting(0); include 'connection.php'; echo "<div class=demo-table><table><tr>"; echo"<td>Nome </td>"; echo "<td>Filiais </td>"; echo "<td>Setor </td>"; echo "<td>Número de Celular </td>"; echo "<td>Nextel </td>"; echo "<td>Editar e Excluir </td></tr>"; $buscar=$_POST['buscar']; $sql=mysql_query("SELECT * FROM contatobd WHERE nome LIKE '%".$buscar."%' OR filiais LIKE '%".$buscar."%' OR setor LIKE '%".$buscar."%' OR numero_cel LIKE '%".$buscar."%' OR nextel LIKE '%".$buscar."%'"); $row=mysql_num_rows($sql); if ($row > 0){ while($linha=mysql_fetch_array($sql)){ $id=$linha['id']; $nome=$linha['nome']; $filiais=$linha ['filiais']; $setor=$linha['setor']; $numero_cel=$linha['numero_cel']; $nextel=$linha['nextel']; echo "<tr>"; echo"<td>$nome </td>"; echo "<td>$filiais </td>"; echo "<td>$setor </td>"; echo "<td>$numero_cel</td>"; echo "<td>$nextel </td>"; echo" <td><a href=\"cadastrarnovo.php\"> [Adicionar] -</a><a href=\"alterar.php?id=$id\">- [Editar] -</a> <a href=\"excluir.php?id=$id\">- [Excluir] </a></td>"; echo "</tr>"; } echo "</table>"; } else { echo"Nenhum resultado encontrado!"; } ?> alterar.php <?php error_reporting(0); $id=$_GET['id']; include "connection.php"; $sql="SELECT * FROM contatobd WHERE id='$id'"; $resultado=mysql_query($sql) or die ("Não foi possivel realizar a consulta ao banco"); while ($linha= mysql_fetch_array($resultado)) { $id=$linha["id"]; $nome=$linha["nome"]; $filiais=$linha["filiais"]; $setor=$linha["setor"]; $numero_cel=$linha["numero_cel"]; $nextel=$linha["nextel"]; } ?> <form action="salvaralteracao.php" method="post"> ID:<br><input type="text" name="id" value="<?php echo $id; ?>"disabled><br> Nome:<br> <input type="text" name="nome" value="<?php echo $nome; ?>"><br> Filiais:<br> <input type="text" name="filiais" value="<?php echo $filiais; ?>"><br> Setor:<br> <input type="text" name="setor" value="<?php echo $setor; ?>"><br> Numero de Celular: <br><input type="text" name="numero_cel" value="<?php echo $numero_cel; ?>"><br> Nextel:<br> <input type="text" name="nextel" value="<?php echo $nextel; ?>"><br> <input type="Submit" value="Salvar"> </form> salvaralteracao.php <?php $id =$_POST['id']; $nome=$_POST['nome']; $filiais=$_POST['filiais']; $setor=$_POST['setor']; $numero_cel=$_POST['numero_cel']; $nextel=$_POST['nextel']; include 'connection.php'; if(@mysql_query("UPDATE contatobd SET nome = '$nome', filiais = '$filiais', setor = '$setor', numero_cel = '$numero_cel', nextel = '$nextel' WHERE id= '$id'")){ if(mysql_affected_rows() == 1){ echo "Registro atualizado com sucesso"; } } else { if(mysql_errno() == 1062) { echo $erros[mysql_errno()]; exit; } else { echo "Erro nao foi possivel efetuar a edição"; exit; } @mysql_close(); } ?> Compartilhar este post Link para o post Compartilhar em outros sites
Diego Rinno 35 Denunciar post Postado Setembro 30, 2015 Quando você define o campo com DISABLED ele não é enviado junto ao formulário. Você pode alterar o campo pra um do tipo hidden ou então trocar o disabled por readonly e ver se funciona. O erro é justamente o caso do índice ID não existir, logo ele não foi enviado. Compartilhar este post Link para o post Compartilhar em outros sites
rosarinho 0 Denunciar post Postado Setembro 30, 2015 Quando você define o campo com DISABLED ele não é enviado junto ao formulário. Você pode alterar o campo pra um do tipo hidden ou então trocar o disabled por readonly e ver se funciona. O erro é justamente o caso do índice ID não existir, logo ele não foi enviado. Velho muito obrigado! não me atentei isso! só não queria que o usuário alterasse o cod.. muito obg mesmo estava tentando resolver desde de semana passada! posso ti pedir outra ajuda! to com dúvida no insert. porq tipo o usuário no form vai clicar em adicionar mais nao quero q ele coloque o cod, como faço para criar um insert usando a tabela alteracao.php sendo q o cod gere automatico! já criei isso aqui.. cadastrarnovo.php <html> <head> <title> Cadastro de Visitantes</title> </head> <body> <h1> Cadastro de usuários do site</h1> <br> <form action="incluir.php" method="post"> <pre> Insira as informações para efetuar o cadastro e deixe seu comentário. Nome: <input type="text" size="35" maxlength="256" name="nome"> Filiais: <input type="text" size="35" maxlength="256" name="filiais"> Setor: <input type="text" size="35" maxlength="256" name="setor"> Numero Cel: <input type="text" size="35" maxlength="256" name="numero_cel"> Nextel: <input type="text" size="35" maxlength="256" name="nextel"> <input type="submit" value ="Efetuar o cadastro"> </pre> </form> </body> </html> nessa não usei o campo id... nao sei se deveria... e criei esse o incluir.php <?php error_reporting(0); $nome=$_POST["nome"]; $filiais=$_POST["filiais"]; $setor=$_POST["setor"]; $numero_cel=$_POST["numero_cel"]; $nextel=$_POST["nextel"]; include 'connection.php'; if(mysql_query("INSERT INTO contatobd VALUES nome = '$nome', filiais = '$filiais', setor = '$setor', numero_cel = '$numero_cel', nextel = '$nextel' id ='$id'")) { if(mysql_affected_rows() == 1){ echo "Adicionado com Sucesso<br />"; } } ?> <a href="alteracao.php">Voltar</a> onde errei :/ Compartilhar este post Link para o post Compartilhar em outros sites