Ir para o conteúdo
pemoamsi

Problemas com o _POST

Mensagens Recomendadas

pemoamsi

O código que vou apresentar retorna uma pagina com uma tabela de itens. No final de cada linha tem um botão para "actualizar" a base de dados apenas alterando dois valores de 0 para 1.

O meu problema é que está tudo a funcionar, excepto, claro, a parte em que divia guardar o id_downloads do item em que eu carro, e está a guardar do ultimo imprimido...

Pagina 1

<form action="submeter.php" method="post">


$result = $db->query('SELECT * FROM downloads');
$i = 0;
foreach ($result as $row){
 //Codigo que não interessa....
 echo '<tr class="r' . $i . '">'
 if($row['updated'] == 1)
{
echo '<td class="updated"> updated </td>';
}
else
{
echo '<td class="updated">
<input type="hidden" name="varname" value=' . $row['id_downloads'] . '>
<input type="submit" value="Download">
</td>';
}

echo '
<td>
</td>
</tr> ' ;

$i++;
}
//Resto do código

Pagina 2 submeter.php

<?php
$id_downloads = $_POST['varname'];
$db = new PDO('sqlite:backup.sqlite');

if(isset($id_downloads))
{
echo "teste";
echo $id_downloads;
$update = $db->query('UPDATE downloads
 SET status=1, updated=1
 WHERE id_downloads = "' . $id_downloads . '"');

$update->execute();
}
?>

Editado por pemoamsi

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pmg

Experimenta ver o conteúdo completo do array $_POST na página submeter.php

<?php
echo '<pre>';
print_r($_POST);
die('</pre>');

// ...

Sugestão: faz um <form> para cada botão. Em vez dum form com N botões e N campos 'hidden', passas a ter N forms, cada um com um botão e um campo 'hidden'.

Editado por pmg

What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pemoamsi

Experimenta ver o conteúdo completo do array $_POST na página submeter.php

<?php
echo '<pre>';
print_r($_POST);
die('</pre>');

// ...

Sugestão: faz um <form> para cada botão. Em vez dum form com N botões e N campos 'hidden', passas a ter N forms, cada um com um botão e um campo 'hidden'.

Array

(

)

Sobre a outra sugestão, colocavas então o id_downloads na action e retiravas a variavel por GET?

Boa ideia ;) Obrigado... RESOLVIDO

Editado por pemoamsi

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pikax

decerteza que estas a imprimir o input?

echo ' [....]  <input type="hidden" name="varname" value=' . $row['id_downloads'] . '>

Editado por pikax

Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.