Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

rosarinho

Editar dados da tabela e salvar alteração no banco

Recommended Posts

Boa tarde,

 

Gostaria de uma ajuda, criei uma página onde todos conseguem visualizar os telefones das filiais

só que possui telefones desatualizados e gostaria de criar algo que ative uma alteração onde nessa tabela a pessoa clique altere

o dado e clicando fora ou em algum botão para salvar a alteração, nessa página não possui logins somente visualização dos dados.

 

Abaixo está cod que uso para puxar os dados do sql e mostrar no site em uma tabela. Agora preciso de um jeito para poder alterar ela

e salvar e atualizar dentro do banco.

 

 

 

Alguém pode me ajudar??

 

Fico no aguardo!

<?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></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)){
	
			$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 "</tr>"; 
			
			
		}
		
		echo "</table>"; 
			
		
	} else {
		
		echo"Nenhum resultado encontrado!";
		

	}
	
?>
 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ele tem uns botões de editar e excluir. no link do botão de editar, vc cria um popup e passa os dados da linha pra ele. Eu faço assim :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu to fazendo um pouquinho diferente... criei um botão editar, que leva para página alterar.php, onde irá possuir os forms trazendo os dados da tabela.. mais ai que tá ele só me trás o nome os outros forms ficam em branco :/ meus cod abaixo ai ....

 

Se poder ajudar! Agradeço.. sou novato no php

<?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 </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)){
	
	$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=alterar.php?nome=$nome>Editar</a></td>";
				
			echo "</tr>";
			
			
		}
		
		echo "</table>"; 
			
		
	} else {
		
		echo"Nenhum resultado encontrado!";
		

	}
	
?>

alterar.php


<?php

error_reporting(0);
$banco= mysql_connect ("localhost", "root", "") or die (mysql_error());
mysql_select_db("filiaisbd") or die (mysql_error());

	$nome=$_GET[nome];
		
	$busca= mysql_query("SELECT * FROM contatobd WHERE nome=$nome");
	 $row = mysql_fetch_array($busca);
		
	while ($linha = mysql_fetch_array($busca))
		
	{
	
			$nome = $linha['nome'];
			$filiais = $linha ['filiais'];
			$setor = $linha ['setor'];
			$numero_cel = $linha ['numero_cel'];
			$nextel = $linha ['nextel'];		
		
		}	
	
			

	
?>

<form action="salvaralteracao.php" method="post">
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>

Compartilhar este post


Link para o post
Compartilhar em outros sites

tira o espaço que esta dentro do while, entre $linha e os colchetes rsrsrsrs

 

 

$nome = $linha['nome'];
            $filiais = $linha ['filiais'];
            $setor = $linha ['setor'];
            $numero_cel = $linha ['numero_cel'];
            $nextel = $linha ['nextel'];

 

$nome = $linha['nome'];
            $filiais = $linha['filiais'];
            $setor = $linha['setor'];
            $numero_cel = $linha['numero_cel'];
            $nextel = $linha['nextel'];

Compartilhar este post


Link para o post
Compartilhar em outros sites
<form action="salvaralteracao.php" method="post">
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>

Só esse form... mais quando eu edito só preenche os forms com o nome.. o resto nao preenche fica em branco

Compartilhar este post


Link para o post
Compartilhar em outros sites

faz o seguinte... da um echo nas variaveis, depois do while e vê o que aparece...

 

 

 

while ($linha = mysql_fetch_array($busca))            {                $nome = $linha['nome'];            $filiais = $linha ['filiais'];            $setor = $linha ['setor'];            $numero_cel = $linha ['numero_cel'];            $nextel = $linha ['nextel'];                        }      echo $nome."<br/>";echo $filiais."<br/>";echo $setor."<br/>";echo $nome."<br/>";echo $numero_cel."<br/>";echo $nextel."<br/>";

posta dnovo seu while, pra eu ver como está...

Compartilhar este post


Link para o post
Compartilhar em outros sites

esse mostra a tabela com os dados e a opção editar

<?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 </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)){
	
	$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=alterar.php?nome=$nome>Editar</a></td>";
				
			echo "</tr>";
			
			
		}
		
		echo "</table>"; 
			
		
	} else {
		
		echo"Nenhum resultado encontrado!";
		

	}
	
?>

esse outro é o alterar.php

onde tem o form que deveria trazer os forms preencheidos com os dados da tabela para pode alterar.. só que trás somente o campo nome preenchido.


<?php
error_reporting(0);
$banco= mysql_connect ("localhost", "root", "") or die (mysql_error());
mysql_select_db("filiaisbd") or die (mysql_error());
$nome=$_GET[nome];
$busca=mysql_query("SELECT * FROM contatobd WHERE nome=$nome");
while ($linha = mysql_fetch_array($busca))
{
$nome=$linha['nome'];
$filiais=$linha['filiais'];
$setor=$linha['setor'];
$numero_cel=$linha['numero_cel'];
$nextel=$linha['nextel'];
}
?>
<form action="salvaralteracao.php" method="post">
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>

Compartilhar este post


Link para o post
Compartilhar em outros sites

MYSQL está obsoleto, use preferencialmente o pdo ...

 

Veja se funciona assim :

<?php
error_reporting(0);

$banco = new PDO('mysql:host=localhost;dbname=filiaisbd','root','');

$nome=$_GET["nome"];

$busca = $banco->query("SELECT * FROM contatobd WHERE nome=$nome");

while ($linha = $busca->fetchAll(PDO::FETCH_ASSOC)){
    $nome = $linha['nome'];
    $filiais = $linha ['filiais'];
    $setor = $linha ['setor'];
    $numero_cel = $linha ['numero_cel'];
    $nextel = $linha ['nextel'];
}
?>

<form action="salvaralteracao.php" method="post">
    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>

Compartilhar este post


Link para o post
Compartilhar em outros sites

apaga a primeira linha do altera.php

 

error_reporting(0);

e coloca essas aqui, logo após a tag de abertura... vê se retorna algum erro.

 

 ini_set( 'display_errors', true );error_reporting( E_ALL );

 

você deu um echo nos campos, no altera.php, como te falei? pra ver se os dados estão vindo...

 

 

testa sua query com

 

$busca=mysql_query("SELECT * FROM contatobd WHERE nome=$nome") or die (mysql_error());

Compartilhar este post


Link para o post
Compartilhar em outros sites

Está desse jeito continua não funcionando :/

<?php  ini_set( 'display_errors', true );error_reporting( E_ALL );$banco= mysql_connect ("localhost", "root", "") or die (mysql_error());mysql_select_db("filiaisbd") or die (mysql_error());	$nome=$_GET['nome'];			$busca=mysql_query("SELECT * FROM contatobd WHERE nome=$nome") or die (mysql_error());	 			while ($linha=mysql_fetch_array($busca))            {                $nome=$linha['nome'];            $filiais=$linha['filiais'];            $setor=$linha['setor'];            $numero_cel=$linha['numero_cel'];            $nextel=$linha['nextel'];                        }   						?><form action="salvaralteracao.php" method="post">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>

Guilherme da Silva tentei o seu tbm.. não obtive resultado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom pelo oq percebi quando mudo

echo "<td><a href=alterar.php?nome=$nome>Editar</a></td>"; que é onde puxa a tabela com os dados.. ate então blz ta puxando...

mais quando clico em editar ele me levar para a página onde tem os forms.. nome filiais.. mais ele só preenche o nome ... os outros ficam em branco.. exemplo

cliquei para editar o joão

ai ele me leva para a página alterar.php e no form nome.. ele aparece lá joão .. só que os campos filiais, setor, numero, nextel ficam em branco...

alterei esse echo "<td><a href=alterar.php?nome=$nome>Editar</a></td>";

para esse aqui

echo "<td><a href=alterar.php?filiais=$filiais>Editar</a></td>";

ai percebi que na pagina alterar.php onde tem os forms no campo nome ele trouxe o nome da filial e não da pessoa.. percebi que o tem no alterar.php não está fazendo efeito somente até o get.

 

acho que deu para entender...

 

 

Até agora só vi SELECT, onde você está atualizando (UPDATE) os dados no banco de dados?

Entao to querendo primeiro trazer esses dados para o form... para depois altera-lós depois salvar.

 

to com banco criado já no wamp... a tabela já está ok agora nao consigo editar ela de jeito nenhum.. não consigo jogar cada um em seu form.

 

é bem parecido com esse vídeo..

mesmo assim não consegui.. tem alguma coisa ainda que eu to boiando e não consigo..

Compartilhar este post


Link para o post
Compartilhar em outros sites

você poderia postar a tabela "contatobd" ???

dot.gif A seleção atual não contém uma única coluna. As funções edição em grade, checkbox, editar, copiar e apagar não estão disponíveis.

 

 A seleção atual não contém uma única coluna. As funções edição em grade, checkbox, editar, copiar e apagar não estão disponíveis.nome	filiais	setor	numero_cel	nextelAbraão Silvino	Matriz -SP	Operacional	(011) 7712-4891	55*2*45080Adelson Soares	Matriz -SP	Gerente Faturamento	(011)98713-0246	55*2*25233Adonias Matriz -SP	Matriz -SP	Operacional	(011)98698-1319	55*2*37661Adriano dos Reis	São Jose dos Pinhais - P	Motorista	(041)9971-5236	Adriano Pereira	Fortaleza - CE	Motorista	(085)9998-0322	Adriano Ribeiro	Cabo de Santo Agostinho -	Motorista	(081)9892-1118	Alessandra Araujo	Matriz -SP â SP	Coordenadora de SAC	(011) 7730-5873	55*2*29813Alex	Simões Filho - BA	Motorista	(071)9147-1571	Alex Alves	Matriz -SP	Controladoria	(011) 7732-1391	55*2*25226Alexandre Dorneles	Porto Alegre -RS	Motorista	(051)8224-0436	Alexandre Paulo	Cabo de Santo Agostinho -	Motorista	(081)9892-1213	Alexandre Serpa	Porto Alegre -RS	Motorista	(051)8185-3184	Alexandre/ Douglas	Matriz -SP	Informática TI	(011) 7746-4001	55*11*88573Ana Barral	Simões Filho - BA	Pendência	(071)9158-7087	55*115*44346Andre Antonio	Blumenau -SC	Gerente	(047)9966-0157	55*2*20344Andre Ferreira	Cabo de Santo Agostinho -	Motorista	(081)9710-0247	Antonia Santina	Fortaleza - CE	Motorista	(085)9998-0379	Antonio	Simões Filho - BA	Operacional	(071)9165-5273	Antonio Alisson	Fortaleza - CE	Motorista	(085)9998-0196	Antonio Marcos	Cabo de Santo Agostinho -	Motorista	(081)9892-1188	Antonio Nilo	João Pessoa - PB	Motorista	(083)9859-0116	Antonio Pereira	Maceió -AL	Motorista	(082)9961-0208	Antonio Ricardo	Campinas - SP	Motorista	(019)98355-0084	Antonio Santana	Aracaju -SE	Motorista	(079)9111-0046	Arenita	Simões Filho - BA	Recepção	(071)9169-2903	

Essa é a tabela ... ate entao ela mostra de boa.. no final de cada linha tem um editar... nesse editar quando clico ele tem que me levar para a pagina alterar.php e nos campos do form preencher com os dados da linha selecionada

mais só preenche a primeira.. os outros ficam em branco..

ai que tá o problema... não consigo paassar para a próxima etapa que é depois salvar sem que os dados apareçam nos campos do form..

 

 

Fico no aguardo!!

 

 

eu até mudei o alterar... ele agora preenche os forms.. mais só com um dado... posso editar todos que eu quiser ele sempre preenche com o mesmo...

<?phperror_reporting(0);$banco= mysql_connect ("localhost", "root", "") or die (mysql_error());mysql_select_db("filiaisbd") or die (mysql_error());			$sql="SELECT * FROM contatobd";	$resultado=mysql_query($sql) or die ("Não foi possivel realizar a consulta ao banco");			 while ($linha = mysql_fetch_array($resultado))          {                $nome = $linha['nome'];            $filiais = $linha ['filiais'];            $setor = $linha ['setor'];            $numero_cel = $linha ['numero_cel'];            $nextel = $linha ['nextel'];             } ?>       <form action="salvaralteracao.php" method="post">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>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tira esse espaço e tenta!! Você disse que tirou mas ainda aparece com o espaço:

Está assim:
$linha ['filiais'];

Deixe assim:
$linha['filiais'];

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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