Dlms 4 Denunciar post Postado Março 12, 2014 Bom dia galera, Estou com o seguinte problema, eu estou criando buttons dinamicamente através da Query (código) que está armazenado no banco, então através de um while.. os buttons vão sendo criados gerando values e names diferentes.. essa criação está funcinando beleza. Mas quando eu tenho que pegar esse Name em outra página php.. não estou conseguindo.. na verdade nem sei se é possível capturar um name de um button que seja formado por uma string + variável.. vejamos o name e o value do button que são incrementados.. <?php } $cont++; if($cont==4){echo''; $cont=0;}}}?> Como eu capturo esse name ou id do button ai em outra página com S_POST? alguém pode ajudar-me? Compartilhar este post Link para o post Compartilhar em outros sites
André D. Molin 15 Denunciar post Postado Março 12, 2014 Poderia postar o código completo da página? Compartilhar este post Link para o post Compartilhar em outros sites
Dlms 4 Denunciar post Postado Março 12, 2014 Estranho.. eu postei e não ficou.. só apareceu o final.. <td bgcolor="#4569FF" align="left"><input type="submit" style="width:239px; height:30px; text-align:center;" name="submit_<?php echo $doc1[0];?>" value="<?php echo rtrim($doc1[1]);?>" onClick="location.href='../../arquivo_morto/fichas/docpessoal_tipos.php'" id="submit_<?php echo $doc1[0];?>"> Este aqui é o button! Como eu capturo esse name ou id do button ai em outra página com S_POST? Compartilhar este post Link para o post Compartilhar em outros sites
Lucas Guima 164 Denunciar post Postado Março 13, 2014 Qual a finalidade? Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Março 13, 2014 foreach( $_POST as $k => $c ) { echo PHP_EOL . '<br />' . $k . ': ' . $v; } Compartilhar este post Link para o post Compartilhar em outros sites
Dlms 4 Denunciar post Postado Março 13, 2014 Hinom, Não sei se vc entendeu.. ou eu que não entendi o que vc postou.. mas tipo.. na minha outra página.. eu quero saber como eu pego esse valor.. enviado por Post.. tipo.. na outra página eu pego assim:? $btn=$_POST["submit_".$doc[0]]; <-- quando faço isto vem vazio! é isso que quero saber.. como capturo esse valor! Lucas, a finalidade é continuar o sistema.. mas para prosseguir, eu preciso enviar essa informação para a outra página.. mas como o name do meu botão é uma string + variável não estou conseguindo pegar... Compartilhar este post Link para o post Compartilhar em outros sites
Lucas Guima 164 Denunciar post Postado Março 13, 2014 Tenho a leve impressão de que cada submit desse deveria estar um um form. Para que você precisa do valor do submit? Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Março 13, 2014 #6.. no post #3 <input type="submit" name="submit_<?php echo $doc1[0];?>"..... Baseado nisso, entendi que o nome do botão é definido dinamicamente, provavelmente algo vindo de um banco de dados, certo ? Então vc quer saber como resgatar esses nomes na página que reecbe a requisição, porém, como os nomes dos objetos são dinâmicos, o resgate desses dados deve ser automático. certo ? Então, se for isso, o primeiro passo é extrair o valor da array global "$_POST". As chaves do array representam os nomes dos objetos (botões e campos de formulario). Os valores representam os seus respectivos valores. No post #5, um exemplo de como resgatar. Não quer dizer que seja "a solução definitiva". É meramente um escopo. Não quer dizer que deve copiar e colar no código que tudo funcionará automaticamente. Apenas entenda o exemplo e conseguirá imprementar o que precisa. off: Conforme comentado acimam, pode ser que esteja fazendo algo desnecessário, contudo, sou alheio a isso. Compartilhar este post Link para o post Compartilhar em outros sites
Dlms 4 Denunciar post Postado Março 13, 2014 através do name do botão.. ele fará uma nova consulta no banco em uma outra página e irá verificar subpastas e gerar as imagens de acordo com cada documento... o name é nome do documento. hinom, esse cara aqui --> <input type="submit" name="submit_<?php echo $doc1[0];?>"..... faria com que os names não fossem iguais, ou seja a saída deles seriam submit_01.. submit_02 ...atée ultimo resgistro que tenho no banco... a única dúvida que tenho é como pegar esse cara na outra página.. eu parto do princípio ( não sei se estou certo) que independente de quantos eu vou gerar eu vou clicar em um botão de cada vez,ou seja, a página que vai receber o conteúdo receberia por exemplo o name = submit_01 e o seu valor = Documento Pessoal ..é disto que estou falando.. na página que recebe o valor.. eu tenhoque capturar esse cara por $_POST.. se o meu name na página que manda fosse assim por exemplo.. name="carro" eu pegaria assim $var=$_POST["carro"]; Mas.. o meu name é contituido de uma string + variavel .. name="submit_<?php echo $doc1[0];?> e o que quero saber é isto.. como pego esse valor... pois assim $var=$_POST["submit_".$doc[0]]; não estou recebendo dados.. apenas isto.. Compartilhar este post Link para o post Compartilhar em outros sites
Evandro Oliveira 331 Denunciar post Postado Março 13, 2014 Tem como postar o HTML completo do formulário, como disseram, acho que você está tentando resolver o problema com a solução errada... Compartilhar este post Link para o post Compartilhar em outros sites
Dlms 4 Denunciar post Postado Março 13, 2014 Evandro, se eu mudar o name do meu input.. deixando apenas a string eu recebo dado do outro lado.. a questão está em como capturar mesmo esse name feito de forma dinamica! pois eu andei pesquisando e é verdade.. objetos com o mesmo name não seria uma forma correta de programar.. e testando acaba mandando valores duplicados... por isso fiz de forma dinamica.. para cada botão ter um name diferente.. só preciso saber capturar a informação do outrolado com $_POST Compartilhar este post Link para o post Compartilhar em outros sites
Evandro Oliveira 331 Denunciar post Postado Março 13, 2014 Acho que você não pegou o verdadeiro problema, Diferenciar o documento no nome do botão submit é um sintoma ruim. Se você quiser prover um download, por exemplo, o mais correto seria um link mesmo... Se você deseja enviar um valor qualquer de uma lista de valores, pode se utilizar de radio buttons Agora se quiser teimar em continuar fazendo duma forma que 3 pessoas estão te dizendo que não vai dar certo... foreach ($_POST as $nome => $valor) { if (substr($nome, 0, 7) === 'submit_') { $botao_clicado = $nome; $valor_do_botao_clicado = $valor; } } Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Março 13, 2014 #12 boa colocação "sintoma ruim" Diferenciar o documento no nome do botão submit é um sintoma ruim. #11 Há formas mais adequadas de resolver.. Do jeito como fez está complicando. A modelagem é importante,.. vc pode continuar do jeito que fez e conseguirá chegar ao resultado que almeija, porém, não recomendo tal como outros dois já comentaram.. Veja no #12 um pequeno exemplo da gambiarra que terá que implementar.. Compartilhar este post Link para o post Compartilhar em outros sites
Lucas Guima 164 Denunciar post Postado Março 13, 2014 Acho que deveria estar assim: <form action="imagens.php"> <input type="submit" name="doc" value="<?php echo rtrim( $doc1[0] )?>" /> </form> Em imagens.php você receberá apenas 1 (um) submit com 1 (um) valor, que foi o que entendi que você precisará. Isso ainda é uma alteração básica, para não modificar tanto seu código, pois tratar value de submit também não é uma boa prática. Compartilhar este post Link para o post Compartilhar em outros sites
Dlms 4 Denunciar post Postado Março 13, 2014 Evandro Oliveira, eu não teimei, só estava colocando meu ponto de vista, afinal eu sempre recuperei os dados enviados da maneira que falei.. usar string + variavel é a melhor solução de fato para o meu caso.. só precisava saber como recuperar... Hinom, Você tinha razão.. eu achei que só poderia recuperar desta forma que coloquei mais acima... varri o $_POST .. diga-se de passagem eu nem sabia que ele era um array ( tava na documentação na minha cara).. vivendo e aprendendo... e fazendo da maneira que vc disse.. eu retorno o seguinte resultado.. [submit_02] => Certificado de Conclusão do 2º. era exatamente disto que estava falando... o nome continua dinâmico e não preciso declarar um $_POST para receber.. basta varrer o mesmo.. Perdoem ai pelos questionamentos, mas sair aceitando toda opnião , conselho ou seja o que for sem meditar ou ponderar os mesmos tb não ajuda no crescimento... e obrigado pela ajuda galera.. agora posso dar seguimento.. abraço. Compartilhar este post Link para o post Compartilhar em outros sites