Jump to content
veaoum

Chamar fiunção em vez de ficheiro

Recommended Posts

veaoum

Olá! Eu estou a criar uma base de dados com algumas tabelas e queria usar um ficheiro por tabela para criar as querys dessa tabela e todas as funções associadas a respectiva tabela (inserção,remoção, edição,etc) mas a minha duvida é se depois eu consigo no formulário chamar a função que eu pretendo no em vez de executar o ficheiro todo..... É possível? Como é que posso fazer isso?

P.S.: Só reparei depois na fiunção se alguém conseguir ter privilégios para fazer essa correcção e poder fazer eu agradeço.

Edited by veaoum

Share this post


Link to post
Share on other sites
veaoum

Encontrei duas opções:

<html>
<body>
<form method="post" action="display()">
<input type="text" name="studentname">
<input type="submit" value="click">
</form>
<?php
function display()
{
echo "hello".$_POST["studentname"];
}
?>
</body>
</html>

Não queria usar esta porque queria colocar as funções fora do ficheiro html. A outra é:

HTML

<form method="post" action="yourFileName.php">
   <input type="text" name="studentname">
   <input type="submit" value="click" name="submit"> <!-- assign a name for the button -->
</form>

PHP

<?php
function display()
{
   echo "hello ".$_POST["studentname"];
}
if(isset($_POST['submit']))
{
  display();
}
?>

Existirá mais alguma opção?

Share this post


Link to post
Share on other sites
Knot

Podes ter os teus ficheiros index.php, index2.php, contatos.php, etc, etc com os teus formulários

<form method='post' action='save_data.php'>
<input type="text" name="studentname">
...
...
...
<input type="submit" value="click" name="inserir_dados">//nome definido que vai ser enviado neste caso por POST
</form>


<form method='post' action='save_data.php'>
<input type="text" name="studentname">
...
...
...
<input type="submit" value="click" name="apagar_dados">//nome definido que vai ser enviado neste caso por POST
</form>

depois no teu fcheiro save_data.php podes colocar o teu código assim

if(isset($_POST['inserir_dados']))
{
//executo o sql de inserir dados
// redireciono a resposta para o ficheiro que pretendo
}
else if(isset($_POST['apagar_dados']))
{
//executo o sql de inserir dados
// redireciono a resposta para o ficheiro que pretendo através do header('location: index.php')
}
else
{
//redireciono para uma página que pretendo
}

Isto também pode ser feito com recurso a ajax, mas aí não me sinto tão à vontade para te explicar.

Edited by Knot

Share this post


Link to post
Share on other sites
veaoum

Já agora o PHP limpa automaticamente o $_POST ou convém estarmos sempre a limpa-lo?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.