Ir para conteúdo

POWERED BY:

Arquivado

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

Web Fell

Update Em Pdo Com Janela Modal

Recommended Posts

Bom dia,

 

não estou conseguindo passar o id via post para fazer o update, pelo fato do formulário ser exibido em uma janela modal não encontrei a solução para tal, se alguém puder me dar a dica.

 

Estou com os seguintes fontes:

 

Tabela

 

<?php 
$cont = 0;
$sql = "SELECT * FROM categorias";
$result = $PDO->query($sql);
while ($row = $result->fetch(PDO::FETCH_ASSOC)){ 
if ($cont % 2 == 0){
$cor = "";
}else{
$cor = "";
}
print_r ("<tr bgcolor='".$cor."'>");
print_r ("<td>".$row['id']."</td>");
print_r ("<td>".$row['nome']."</td>");
print_r ("<td><a href='#dialog1' name='modal'><img src='img/add.png' title='Adicionar Novo'></a> <a href='#dialog2' name='modal'><img src='img/edit.png' title='Editar'></a> <a href='#dialog3' name='modal'><img src='img/delet.png' title='Excluir'></a>".$row['acoes']."</td>");
print_r ("</tr>");
$cont = $cont + 1;
 }
?>
Incluir

<?php 
$nome = $_POST["descricao"];
$sql = "INSERT INTO categorias(nome) VALUES(:nome)";
$stmt = $PDO->prepare( $sql );
$stmt->bindParam(':nome', $nome);


$result = $stmt->execute();


if (!$result){
var_dump( $stmt->errorInfo() );
exit;
}


echo $stmt->rowCount()." Categoria inserida com sucesso!";
header("refresh: 3; url=index.php"); 
?>

Alterar

<?php
$nome = $_POST["descricao"];
$id = $_POST["id"];
$sql = "UPDATE categorias set nome = :nome WHERE id = :id";
$stmt = $PDO->prepare( $sql );
$stmt->bindParam( ':id', $id );
$stmt->bindParam( ':nome', $nome );


$result = $stmt->execute();


if ( ! $result )
{
var_dump( $stmt->errorInfo() );
exit;
}


echo $stmt->rowCount() . " Categotia alterada com sucesso!";
header("refresh: 3; url=index.php"); 
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Deixa entender.. vc tem uma lista de registros apresentados em uma tabela na sua tela.. vc quer ao clicar no editar de um desses registros ele abrir um modal e passar o ID desse registro pro modal?

 

Se sim, vc pode fazer isso com o próprio jQuery que abriu o modal, ao clicar vc pega o VALUE e acrescenta no campo que deseja do modal..

 

um exemplo besta de como mais ou menos é.. dai basta vc implementar no seu código

<table>
	<tr>
    	<td>Cuiabá</td>
        <td><a href="1" class="botaoEditar">editar</a></td>
    </tr>
    <tr>
    	<td>São Paulo</td>
        <td><a href="3" class="botaoEditar">editar</a></td>
    </tr>
    <tr>
    	<td>Rio de Janeiro</td>
        <td><a href="5" class="botaoEditar">editar</a></td>
    </tr>
</table>

<div class="modal">
	<form action="" method="get">
		<input name="cidade_id" type="text" value="" id="cidade_id" />
	</form>
</div>

<script>
	$("a.botaoEditar").click(event) {
		event.preventDefault();
		
		var id = $(this).attr("href");
		
		$("input.cidade_id").attr("value",id);
	});
</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ele vai pegar o valor do HREF do link e colocar no VALUE do campo desejado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia wolfphw,

 

obrigado pela dica, entendi sua lógica perfeitamente. Porém o que não estou tendo êxito é com o parâmetro href do link, que até então estou usando para abrir o modal (href='#dialog1'), ai não tenho como passar por href

 

Acredito que o que preciso é passar o $row['id'] no While que percorre os registros:

print_r ("<td><a href='#dialog1' name='modal'><img src='img/add.png' ></a> <a href='#dialog2' name='modal'><img src='img/edit.png' </a> <a href='#dialog3' name='modal'><img src='img/delet.png'></a>".$row['acoes']."</td>");

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.