Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Função


MTavares

Pergunta

Prezados colegas,

Eu tenho a seguinte função:

function valor($valor1){

// e dentro dessa função eu tenho uma tabela(HTML), onde trago os valores de uma tabela (SQL)

$sql = ....

while($muito = mysql_fetch_object($sql)){

// e dentro desse laço eu tenho um campo 'checkbox' onde dentro do 'value' trago o id do campo que desejo

}

}

Pois bem, quando tento chamar essa funçao com os valores, ele só me retorna o último registro do checkbox....alguém sabe o porque disso?

Vale ressaltar que isso acontece quando seleciono mais de um item...

abs

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

eu estou criando da seguinte forma:

function valor($valor){

$sql = ...

while($muito=mysql_fetch_object($sql)){

...

echo "<input type='checkbox' name='documentos' value=\"".$id."\">";

...

}

}

e recuperando dessa forma:

valor($valor);

<?

if($_REQUEST['Submit'] == 'Atualizar'){

// Aqui listo os 'checkboxs' que foram selecionados, mas só vem o último

}

?>

Link para o comentário
Compartilhar em outros sites

  • 0

Hmmm, sim.

Você resgata os valores do database e cada valor cria um checkbox.

Existem duas maneiras de fazer o que você quer.

Uma é inviável, que seria criar um novo campo na tabela com o nome de cada checkbox, definir o nome de cada uma e depois usar o foreach para recuperar cada valor do post.

A outra é mais fácil, você cria as checkboxes com colchetes no fim do nome, assim, em vez de um valor só, elas serão partes de uma array.

No seu script ele só retorna o valor da última checkbox porque toda hora você sobrepõe esse valor, perceba que a toda hora você troca o valor de $documentos.

Você pode fazer assim:

...
function valor($valor){
$sql = ...

while($muito=mysql_fetch_object($sql)){

...

echo "<input type='checkbox' name='documentos[]' value=\"".$id."\">";
...

}

}
E recuperar assim:
<?php
if($_REQUEST['Submit'] == 'Atualizar'){
$Documentos = $_POST["documentos"]; // Ou use $_GET["documentos"] se o seu formulário enviar os dados por GET
foreach($Documentos as $Documento){
echo "$Documento<br />";
}
}
?>

Perceba que eu dei um echo só pra você ver como o script funciona, mas você poderá colocar o restante de sua função ali, e pra cada checkbox selecionada, ele criará uma variável $Documento e trabalhará com ela.

Perceba também que se você precisar dessa variável mais tarde, ela novamente mostrará somente o último valor.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...