Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Sign in to follow this  
Hugu

Creating a PHP Form [Dúvidas]

Recommended Posts

Hugu

Viva,

Numa das pesquisas pela net, cheguei a uma homepage de alguém que dava uma lição de como criar uma Form em PHP, e depois de explicar cada linha da scrip a liçao acabava com o seguinte script para ser gravado em *.html

<HTML>

<HEAD>

</HEAD>

<BODY>

<H1>Bob's Auto Parts</H1>

<H2>Order Form</H2>

<FORM action="processorder.php" method=post>

<TABLE>

<TR>

<TD BGCOLOR="#CCCCCC">Item</TD>

<TD BGCOLOR="#CCCCCC">Quantidades</TD>

</TR>

<TR>

<TD>Pneus</TD>

<TD><INPUT type="text" name="tireqty" size=3 maxlength=3></TD>

</TR>

<TR>

<TD>Oleo</TD>

<TD><INPUT type="text" name="oilqty" size=3 maxlength=3></TD>

</TR>

<TR>

<TD>Velas</TD>

<TD><INPUT type="text" name="sparkplugqty" size=3 maxlength=3></TD>

</TR>

</TABLE>

</FORM>

</BODY>

</HTML>

Cujo o resultado é este:

creatingaphpform.png

As minhas dúvidas:

Quando clico no botao "Submite Order", o browser "manda-me" para o url .../processorder.php

Quer dizer que tb tenho de criar um ficheiro Processorder.php? como crio este ficheiro?

E como fico com o registo dos pedidos? e como posso visualizar esses pedidos?

A duvida principal é como interligo uma script php a uma webpage escrita em html. E neste exemplo, como registo as encomendas?

Obr

Share this post


Link to post
Share on other sites
KiNgPiTo

Obvio que tens de criar um .php para receber os dados do form, neste caso crias um ficheiro processorder.php e através do post recebes o que for inserido no form.

No entanto se tens este tipo de duvidas, ainda vais ter de aprender umas coisas de php (e html) logo sugiro que leias isto:

http://www.w3schools.com/PHP/php_intro.asp

A partir daqui: http://www.w3schools.com/PHP/php_forms.asp entra no que precisas mas sugiro que leias desde o principio...

Share this post


Link to post
Share on other sites
Knitter

O código que colocaste não é o script, no tutorial que leste não te escapou a parte onde o script era feito? É que esta é apenas a parte de HTML, naturalmente precisas do código PHP para tratar este pedido.

Crias esse ficheiro como crias qualquer script PHP: editor de texto onde escreves a lógica que precisas :P

Os pedidos podem ser guardados num ficheiro ou numa base de dados, se não os guardares num local persistente, ao fim da execução os dados são perdidos. Podem ser guardados em memória se usares sessões.

A forma como resolves o problema dependerá do objectivo. Por alto, para guardares os dados enviados precisas de ter um script PHP que obtenha os valores enviados pelo browser, através da variável $_POST acessível ao script. É uma variável que todos os scripts que sejam executados por um pedido POST vão ter, não precisas da declarar, apenas usar. Nessa variável tens acesso aos dados dos campos através dos nomes dos campos, por exemplo, $_POST['oilqty'].

Não precisas de mais nada para ligar o formulário ao script que colocar no destino do formulário o endereço do script, seja relativo seja absoluto.

De qualquer modo, toda esta explicação é uma martelada no que precisas aprender e será melhor pegares num dos vários tutoriais de PHP que por aqui andam e ires percebendo melhor como funciona a tecnologia.

Share this post


Link to post
Share on other sites
Hugu

Obrigado a ambos! Já deu para entender mais ou menos a coisa!

O código que colocaste não é o script, no tutorial que leste não te escapou a parte onde o script era feito?

Nao.. foi daqui que tirei o exemplo.

A partir daqui: http://www.w3schools.com/PHP/php_forms.asp entra no que precisas mas sugiro que leias desde o principio...

..mas seguindo o exemplo nesta página, não consegui o que era suposto fazerem o *.html e o welcome.php! N sei porquê!

Tenho o xampp instalado e fiz o start do servidor correctamente, ate pk tenho um validador_de_BI.php e ele funcionou bem!

O que me acontece é qdo faço o submit aparece-me uma janela de download/abrir o ficheiro welcome.php, e faço abrir com o browser e depois aparece a seguinte msg:

Welcome

Notice: Undefined index: fname in /home/www/welcome.php on line 4

!

You are

Notice: Undefined index: age in /home/www/welcome.php on line 5

years old.

algo correu mal e n sei que possa ter sido. o script php terá alguma gafe?

EDIT: já topei o erro!

Share this post


Link to post
Share on other sites
Hugu

Se já topaste o erro, mete aqui, pode haver alguém com uma duvida semelhante...

Claro que sim!

Não era bem um erro, o problema era por causa do "caminho do ficheiro" eu pensava que o no PHP se podia usar caminhos relativos, mas afinal só funcionou bem quando pus o caminho absoluto.

Ou seja http://localhost/home/welcome.php na vez /welcome.php

Abr

Share this post


Link to post
Share on other sites
The Loser

É claro que podes usar caminhos relativos com PHP.

Same directory: ./welcome.php ou simplesmente welcome.php (se estiver configurado para tal, e provavelmente está).


I intend to live forever. So far so good.

Share this post


Link to post
Share on other sites
Hugu

É claro que podes usar caminhos relativos com PHP.

Same directory: ./welcome.php ou simplesmente welcome.php (se estiver configurado para tal, e provavelmente está).

Ah ok! então tinham o caminho relativo mal definido! Obrigado pelo esclarecimento!

Abr

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
Sign in to follow this  

×

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.