Ir para conteúdo

POWERED BY:

Arquivado

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

balasalgada

mysqli e PHP

Recommended Posts

Galera estou fazendo uma conexão com o banco onde a pagina.html exibe os dados do banco de dados.

//faz a conexao
include("conexao.php");

//seleciona os dados da tabela
$consulta =("SELECT * FROM acervo");

$con = $mysqli -> query($consulta) or die ($mysqli->error);

<?php while($dado = $con-> fetch_array() and $dado1 = $con1-> fetch_array()){?>
<fieldset>
<legend><b>Título:<?php echo $dado['tituloLivro']; ?></b></legend>
<p align='justify'><b>Código do livro:</b> <?php echo $dado['codLivro']; ?></a>
<p align='justify'><b>Edição:</b> <?php echo $dado['edicaoLivro']; ?></a>
<p align='justify'><b>Editora:</b> <?php echo $dado1['nomeEditora']; ?></a>
<p align='justify'><b>Ano de publicação:</b> <?php echo $dado['anoPubLivro']; ?></p>
<p align='justify'><b>Resumo:</b> <?php echo $dado['resenhaLivro']; ?></a>
<p align='justify'><b>Status: </b><?php echo $dado['statusLivro']; ?></a>
<br>
</fieldset>

<?php } ?>

 

Essa parte está funcionando perfeitamente, exibindo tudo que preciso certinho, o problema é que eu queria adicionar um botão dentro do fieldset para que a pessoa clicasse e reservasse o livro, mas eu tentei fazer e o botão funciona como se fosse apenas um botão para todos os livros da tabela, sendo que deveria ser um para cada livro, assim, quando tentava reservar um livro ele reservava todos os livros automaticamente e não consegui pensar em nenhuma solução pra isso :(

Qualquer ajuda é bem vinda :)

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

levando bem ao pé da letra...
Você tem algum campo/flag que indica se o livro está 'reservado'?

Seria o "statusLivro" correto?

Nesse caso basicamente o 'botão' precisa levar em conta apenas o ID.


Um exemplo a grosso modo pra ti:

<?php while($dado = $con-> fetch_array() and $dado1 = $con1-> fetch_array()):?>
	<fieldset>
		<legend>
			<strong>Título:<?php echo $dado['tituloLivro']; ?></strong>
		</legend>
		<p align='justify'><b>Código do livro:</b> <?php echo $dado['codLivro']; ?></a>
		<p align='justify'><b>Edição:</b> <?php echo $dado['edicaoLivro']; ?></a>
		<p align='justify'><b>Editora:</b> <?php echo $dado1['nomeEditora']; ?></a>
		<p align='justify'><b>Ano de publicação:</b> <?php echo $dado['anoPubLivro']; ?></p>
		<p align='justify'><b>Resumo:</b> <?php echo $dado['resenhaLivro']; ?></a>
		<p align='justify'><b>Status: </b><?php echo $dado['statusLivro']; ?></a>
		<br />
		<a href="reservar_livro.php?codLivro=<?php $dado['codLivro'];?>">Reservar Livro</a>
	</fieldset>

<?php endwhile; ?>

Assim durante o Loop você cria sempre uma URL dinamica ficando...
reservar_livro.php?codLivro=n
Onde 'n' é o número do ID..
Ex: com 1 .

reservar_livro.php?codLivro=1

Ai nesse caso só criar um outro arquivo php chamado por exemplo de 'reservar_livro.php':

//faz a conexao
include("conexao.php");

//Lembra do parametro GET da URL 'reservar_livro.php?codLivro=n'  ???? usamos ele abaixo...
$codLivro = $_GET['codLivro'];


$sql = "UPDATE acervo SET statusLivro = 'RESERVADO' WHERE codLivro = '$codLivro'";

$con = $mysqli->query($sql) or die ($mysqli->error);


Ai agora só você criar dar uma modificada no seu LOOP e verificar se o mesmo tem statusLivro = 'RESERVADO', caso esteja assim alguem já reservou o livro.

 

Espero que tenha pegado a ideia central.

 

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

DA um var_dump...

<?php while($dado = $con-> fetch_array() and $dado1 = $con1-> fetch_array()):
var_dump($dado);

//restante

Provavelmente o codLivro está vazio....
Enfim olha seu var_dump e tenta corrigir.

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.