Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Hugu

Creating a PHP Form [Dúvidas]

Mensagens Recomendadas

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

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros 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...

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros 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.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros 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!

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros 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

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros 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.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros 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

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.