Ir para conteúdo

POWERED BY:

Arquivado

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

jonny_quest

[Resolvido] Chamar página mas passando parâmetro para outra.

Recommended Posts

Boa tarde ao grupo! :)

 

Galera! seguinte! o código abaixo funciona na parte de postagem do dado "precos/bolos.txt", essa informação quando vai para a página tabela.php, diz a ela qual o arquivo deve ser carregado, funciona muito bem!

 

 

<div align="center">
<form name="senddata" method="post" action="tabela.php">
<input name="TextoProd" type="hidden" value="precos/tabela1.txt" />
<input name="enviar" type="submit" value="Tabela de preços">
<a href="index.php?area=prod"></a>
</form>
</div>

 

Porém eu não consigo fazer o link usando o mesmo botão para que a página tabela.php seja carregada dentro da index.php, ela tá carregando sozinha sem a index.php.

 

Tentei também assim :

 

<div align="center">
<form name="senddata" method="post" action="tabela.php">
<input name="TextoProd" type="hidden" value="precos/tabela1.txt" />
<a href="index.php?area=prod"><input name="enviar" type="submit" value="Tabela de preços"></a>
</form>
</div>

Funciona, abre a index.php com a tabela.php dentro, mas a página tabela.php não tá recebendo o parâmetro para carregar o txt, e fica intermitente motando uma tabela vazia.

 

Da forma explicada no início a tabela recebe o parâmetro e é corretamente carregada, mas a página não abre dentro da index.php, desta forma explicada agora carrega dentro da index, mas a tabela não recebe o parâmetro. :(

 

Alguém me ajuda ai a organizar isso? :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

não entendi.

o que quer fazer exatamente? dê um exemplo mais concreto

 

você está tentando executar as duas ações: href e submit. isso não é possível mesmo. O que dá para fazer é o submit chamar uma função JS.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde Beraldo!

 

Eu tenho uma página index.php, que nela tem este script abaixo:

<?php
$area = @$_GET["area"];

switch ($area)

{
   default:
	include "home.php";
       break;

   case"bolos":
       include "bolos.php";
       break;

   case"tortas":
       include "tortas.php";
       break;

   case"bombons":
       include "bombons.php";
       break;

   case"assados":
       include "assados.php";
       break;

   case"fritos":
       include "fritos.php";
       break;

   case"pacotes":
       include "pacotes.php";
       break;

   case"contatos":
       include "contatos.php";
       break;

case"preco_prod":
	include "tabela.php";
	break;
}
?>

Cada uma dessas páginas é carregada dentro da estrutura de index.php ao clicar em seus respectivos botões no menu.

Dentro de cada página(bolos,tortas,bombons,assados,fritos e pacotes) eu tenho um botão do tipo submit que se encarrega de passar um valor de variável(bolos.txt, tortas.txt, etc...) para a página tabela.php, esta página irá carregar um desses arquivos TXT de acordo com a página onde seja requisitado ver os preços(bolos,tortas,bombons,assados,fritos e pacotes).

 

Por exemplo, na página bolo.php, no seu botão submit eu tenho isso:

 

<div align="center">
<form name="senddata" method="post" action="tabela.php">
<input name="TextoProd" type="hidden" value="precos/bolos.txt" />
<input name="enviar" type="submit" value="Tabela de preços">
<a href="index.php?area=prod"></a>
</form>
</div>

A página tabela.php, irá carregar sozinha na tela sem a estrutura de index.php, ou seja ao clicar no botão Tabela de preços, deveria carrega dentro da index.php em substituição a página bolos.php a página tabela.php e esta ser alimentada com o arquivo bolos.txt.

 

Isso não ocorre porque não estou sabendo como passar o parâmetro para a tabela.php com este script acima.

 

Na mesma página, agora se eu fizer isso:

 

<div align="center">
<form name="senddata" method="post" action="tabela.php">
<input name="TextoProd" type="hidden" value="precos/tabela1.txt" />
[b]<a href="index.php?area=prod">[/b]<input name="enviar" type="submit" value="Tabela de preços">[b]</a>[/b]
</form>
</div>

Colocar o botão do submit dentro do contexto de link, a página tabela.php é CORRETAMENTE carregada dentro da estrutura de index.php substituindo sua originária bolos.php. Mas acontece que por esse meio o parâmetro para carregar o TXT(por Ex. bolos.txt), não é passado para tabela.php, depois de um tempo retorna na tela várias células vazias de modo intermitente e eu tenho que fechar a página.

 

Eu não estou conseguindo resover isso, porque eu preciso de algo que além de mandar carregar a tabela.php com seu respectivo arquivo.txt, eu preciso ao mesmo tempo abrir esta tabela carregada dentro de index substituindo a página que a chamou.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Boa tarde Beraldo!

 

Eu tenho uma página index.php, que nela tem este script abaixo:

<?php
$area = @$_GET["area"];

 

Só lembrando: O arroba ( @ ) antes da variável serve para ocultar os erros do php, caso alguém mal intencionado digite um valor qualquer e o PHP mostre um erro na linha tal na tela, criando uma vulnerabilidade na página.

Compartilhar este post


Link para o post
Compartilhar em outros sites

o certo não seria você redirecionar para index.php?area=preco_prod ??

 

sua index inclue tabela.php, como você está tentando fazer:

case"preco_prod":
include "tabela.php";
break;

 

Você pode passar mais dados:

 

index.php?area=preco_prod∏=bolos

 

 

Isso não resolve?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara eu escrevi errado lá acima no lugar do prod o certo é preco_prod, na include, foi mal desculpe ai!!! :o

 

De certo o que voce disse resolve, basta dentro do botão do submit fazendo dele um link ele carrega a tabela.php dentro da index, eu já o fiz.

<a href="index.php?area=preco_prod"><input name="enviar" type="submit" value="Tabela de preços"></a>

 

Mas não sei o porque o submit perde ou não passa o parâmetro("preco/bolos.txt") para dentro da variável $tipo_de_tabela que está dentro de tabela.php

 

Essa variável $tipo_de_tabela é quem recebe das outras páginas o valor passado por elas e logo esta é quem informa á $linhas = fopen ("$tipo_de_tabela", "r"); que também está dentro de tabela.php que tipo de arquivo abrir ler e processar.

 

Matar a charada consiste em como descobrir isso.

 

Se eu apenas colocar <a href="index.php?area=preco_prod"></a> no final do form após os inputs, a página tabela.php é carregada sozinha na tela toda sem a estrutura em volta da index.php.

 

## EDIT ##

 

Bom dia ao grupo ! :)

 

Resolví o problema!!!

Veja abaixo:

 

<div align="center">
<form name="senddata" method="post" action="index.php?area=preco_prod">
<input name="TextoProd" type="hidden" value="precos/bolos.txt"/>
<input name="enviar" type="submit" value="Tabela de preços">
</form>
</div>

Bastava na ACTION do metodo POST passar esses valores(index.php?area=preco_prod)que funciona de boa! :joia:

Eu já sabia que funcionava, mas não sabia como passar isso e ao mesmo tempo passar o parâmetro("precos/bolos.txt"), para a página tabela.php. ;)

Eu estava tentando criar um link antes com o href. <_<

 

Problema resolvido ! :joia:

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.