Logo Hardware.com.br
Deathcooll
Deathcooll Novo Membro Registrado
10 Mensagens 0 Curtidas

[Resolvido] Array em tabela HTML

#1 Por Deathcooll 25/10/2016 - 23:30
Boa noite pessoal, estou com um problema referente é um algoritmo de HTML... É o seguinte, preciso criar uma tabela utilizando HTML e cada coluna vai ser mostrado um conteúdo gerado pelo array, até ai tudo bem, o problema é que preciso criar um botão para deletar o item em questão do banco de dados, e ai é que ta... não sei como faço para salvar o id da coluna que foi gerada para depois executar o comando sql utilizando o PHP.
Abaixo segue o código para análise:
<?php
require_once("../bd.php&quot;
?>
<?php
session_start();
if(!isset($_SESSION["nome"]) || !isset($_SESSION["senha"])){
}else{
header("Location: ../login.html&quot;
exit;
}
?>
<?php
$query = sprintf("SELECT conteudo, autor, titulo, pagina, id FROM atualizacoes ORDER BY id DESC&quot;

$dados = mysql_query($query, $con) or die(mysql_error());

$linha = mysql_fetch_assoc($dados);

$total = mysql_num_rows($dados);
?>
<!DOCTYPE html>
<html>
<head lang="pt-BR">

<link href="../../css/style.css" rel="stylesheet">
<link href="../../css/bootstrapnonrow.css" rel="stylesheet">

<script type="text/javascript">
function voltar()
{
location.href="../logout.php"
}
</script>

<meta charset="UTF-8">

</head>
<body>
<div class="row ">
<div class="col-md-8 col-md-offset-2">
<form>
<h2 style="color: white">Atualizando blog</h2>

<table class="tabelaconteudo">
<?php
if($total>0){
do{

?>
<tr><td><?= $linha['titulo']?></td><td><?= $linha['pagina'] ?></td><td><?= $linha['autor'] ?></td><td><input type="submit" class="btn-cad" style="color: white" value="Apagar"></td></tr>
<?php
}while ($linha = mysql_fetch_assoc($dados));

}
?>

</table>
</form>

</div>
</div>
</body>
</html>

Vlw pessoal!! Aguardo pelo socorro!!
esquiloesperto
esquiloesper... Cyber Highlander Moderador
7.1K Mensagens 2.2K Curtidas
#2 Por esquiloesper...
26/10/2016 - 03:08
É muito simples meu amigo.
Você só precisa utilizar o seu input do mesmo modo que faria com qualquer outro.

Ou seja: Basta conceder a ele um atributo "name".

Fazendo desta maneira:[Code=php][/code]

Percebe que foram removidos os atributos class e style porque são desnecessários.
Por serem muitos, é mais eficiente referenciá-los através de uma regra CSS, adicionando as componentes que constariam na classe:[code=css][/code]

Supondo que o ID seja '1234', o parâmetro recebido será 'ref_1234=Apagar' (GET) ou 'ref_1234:Apagar' (POST).
- Para utilizá-lo basta coletar apenas os dígitos ou eliminar os 4 primeiros carateres da chave (key). Você escolhe.

Boa codificação.
Só é difícil enquanto estiver oculto! cool.png
Use a pesquisa


rolleyes.png  Navegar é preciso, viver... também.  smile.png
esquiloesperto
esquiloesper... Cyber Highlander Moderador
7.1K Mensagens 2.2K Curtidas
#5 Por esquiloesper...
26/10/2016 - 13:15
O Shura16 mostrou como fazer usando links.

Os desenvolvedores aqui utilizam ambos: forms e links.
Cada um deles têm as suas peculiaridades. O uso dos links é inimigo da privacidade nas informações e isto pode ser um grande problema de segurança, dentre outras situações.

Quanto ao uso do parâmetro em questão, existem diversas ferramentas que se podem aplicar. Por exemplo a substr(), a filter_sanitize_number_int, as expressões regulares, a preg_match_all(), intval(preg_replace())... etc... etc.

Por isso eu disse: Você escolhe.
Só é difícil enquanto estiver oculto! cool.png
Use a pesquisa


rolleyes.png  Navegar é preciso, viver... também.  smile.png
esquiloesperto
esquiloesper... Cyber Highlander Moderador
7.1K Mensagens 2.2K Curtidas
#7 Por esquiloesper...
26/10/2016 - 23:12
Calma, você chega lá...
É claro que perguntar é o caminho mais fácil, mas eu o aconselho a debruçar sobre as apostilas o quanto antes; Senão vai depender de ajuda para sempre!

- Vou postar aqui um exemplo de como deve implementar. É seu trabalho fazer as adaptações necessárias depois, estamos combinados?

Primeiro criamos um objeto $_POST fictício para teste, então a partir dele extrairemos somente aquilo que de fato importa:
[code=php]<?php
$result = array();
$_POST = array ('ID'=>'14', 'nome_campo'=>'vitoria', 'qqCoisa'=>'algo', 'ref_1111'=>'Apagar', 'ref_1122'=>'Apagar', 'ref_1133'=>'Apagar', 'ref_1144'=>'Apagar');

foreach ($_POST as $param_key => $param_value) {
if ( $param_value == 'Apagar' ) array_push ($result, substr ($param_key, 4) );
}

print_r($result);
?>[/code]Desse script obtemos vetor "$result", que é:
Array
(
[0] => 1111
[1] => 1122
[2] => 1133
[3] => 1144
)

Ou seja:
$result = ( 1111, 1122, 1133, 1144 ) // Agora você tem os IDs que tanto precisa.
Só é difícil enquanto estiver oculto! cool.png
Use a pesquisa


rolleyes.png  Navegar é preciso, viver... também.  smile.png
Deathcooll
Deathcooll Novo Membro Registrado
10 Mensagens 0 Curtidas
#9 Por Deathcooll
28/10/2016 - 12:45
Pessoal, consegui resolver o problema de uma maneira mais simples, simplesmente toda vez que gero uma linha da tabela também gero um form novo com um input hidden que recebe o atributo value conforme o id que preciso.
Dessa maneira:
[php]<?php
if($total>0){
do{

?>

// AQUI CONSEGUI O NAME FIXO QUE DESEJAVA
<?= $linha['titulo']?> <?= $linha['pagina'] ?> <?= $linha['autor'] ?>



<?php
}while ($linha = mysql_fetch_assoc($dados));

}
?>[/php]

Ainda assim agradeço pela ajuda de todos vocês! Vlw mesmo pessoal!!
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal