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

_viri_TT_

[Ajuda] Código PHP

11 mensagens neste tópico

Bom dia caros programadores :D

Bom, hoje estou a tentar desenvolver uma pequena pagina web, porém estou-me a deparar com um erro que não sei porque acontece.

Deixo aqui o código e agradecia que se algum de vós puder analisar e dizer-me onde está o erro era espectacular :P

if (!isset($_GET['Para'])) and (!isset($_GET['CC'])) and (!isset($_GET['BCC'])){
print ("<h1><font color=\"#880000\">Falta campo Para/cc/bcc!</font></h1>");
exit;
}

Tenho ideia que o problema está nos "and" mas não sei pelo que poderei substituir... também já experimentei com "&&".

Resumidamente se todos esses campos estiverem vazios queria que apresentasse a mensagem de erro...

Aguardo resposta da v/ parte.

Cumprimentos,

_viri_TT_

Edit:

O erro que dá é este:

Parse error: syntax error, unexpected T_LOGICAL_AND in /public_html/teste.php on line 3

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

<?php
if(empty($_GET['Para']) && empty($_GET['CC']) && empty($_GET['BCC'])){
print("stuff");
}
?>

EDIT:

PS - Não devias passar esses dados por Query String, mas sim por POST.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Obrigado pela correcção :D

Por POST eu iria ter que os escrever manualmente e o objectivo desta página irá ser receber informação de um programa em VB6 para enviar e-mails a vários utilizadores automaticamente...

Não sei se por POST será mais fácil e dará para o mesmo efeito... se puderes dar a opinião agradecia visto que eu em PHP sou muito verde  :P

Cumps,

_viri_TT_

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não, fazes:

<input type="hidden" value="valor" name="nome">

Assim fáz o mesmo que GET mas por POST. Acho que era isto que querias.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não, fazes:

<input type="hidden" value="valor" name="nome">

Assim fáz o mesmo que GET mas por POST. Acho que era isto que querias.

Nesse caso, como é que eu faço para atribuir um valor ao nome sendo que estou a utilizar o VB6 para fazer essa atribuição?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Nesse caso, como é que eu faço para atribuir um valor ao nome sendo que estou a utilizar o VB6 para fazer essa atribuição?

Epah, nunca trabalhei muito com VB6, aliás, o que sei é muito básico..

Uma pequena search no Google levou-me a ler sobre uma classe chamada ServerXMLHTTP.

Dá uma olhadela nisso, pode ser que sirva de alguma coisa. :P

Quanto ao script, em principio se o mantivesses a correr apenas localmente, isto é, sem ligações para o exterior directas, então não haverá problema. No entanto, se houver ligação entre esse teu script, e o exterior (interwebz), então convém passares esses dados por POST (principalmente por uma questão de privacidade), e não te esqueças de "limpar" o conteúdo destes, de forma a tornar o script seguro. :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O erro do post inicial era a falta de um ( (ou um ) a mais se preferires).

Não, fazes:

<input type="hidden" value="valor" name="nome">

Assim fáz o mesmo que GET mas por POST. Acho que era isto que querias.

O ser enviado por GET ou por POST é definido com o atributo method do <form>, não tem nada a ver com inputs.
0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O erro inicial já percebi o porquê :P

Parece que o PHP gosta de tudo com bastantes parêntesis :D

Quanto ao GET e ao POST, diz-me uma coisa, o POST também pode ser usado para ir bucar informação ao link ??

ou seja,

http://blablabla.com/index.php?Nome=viri

neste caso, se eu no código utilizar:

echo $_POST['Nome']

tem a mesma funcionalidade que o $_GET['Nome'] ?

Cumps.

The Loser,

Eu vou usar ligações para o exterior...

Porque o VB6 vai ser para desenvolver uma aplicação para correr "em casa" das pessoas, e o php seria para colocar num servidor Online para que algumas pessoas com permissões especiais no programa de VB possam enviar E-Mails através do software.

Essas pessoas nunca entram em contacto directo com a página PHP, esse contacto é feito através de código em VB, e por isso eu utilizo os dados através do link.

E como o PHP que eu sei, foi lido de um manual multilinguagens eu fiquei com a impressão que apenas o $_GET[''] era utilizado quando se colocava valores no link...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Quanto ao GET e ao POST, diz-me uma coisa, o POST também pode ser usado para ir bucar informação ao link ??

ou seja,

http://blablabla.com/index.php?Nome=viri

Nope, é essa a diferença mais visível entre os dois.

O GET é chamado de Query String, e é passado pelo URL (?asd=asdhuwd, etc).

O POST é chamado de hmm.. POST (xD), e é passado "por detrás da página".

Logo o "neste caso etc" torna-se invalido. O $_POST é para aceder a valores guardados em POST e o $_GET para aceder a valores guardados na Query String.

Essas pessoas nunca entram em contacto directo com a página PHP, esse contacto é feito através de código em VB, e por isso eu utilizo os dados através do link.

Como ao certo é que evitas que as pessoas entrem em contacto com a página directamente?

Se não tens qualquer tipo de validação qualquer zé mané pode chegar lá, passar os parâmetros que quer e kaboom! :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

:D

Hoje dou uma olhada  àquele link do ServerXMLHTTP...

A ver se consigo passar as QueryString's para POST.

Se eu vir que se torna complicado então coloco na Query String um campo só para validação :P

Cumps,

_viri_TT_

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

;)

Hoje dou uma olhada  àquele link do ServerXMLHTTP...

A ver se consigo passar as QueryString's para POST.

Se eu vir que se torna complicado então coloco na Query String um campo só para validação :P

Cumps,

_viri_TT_

Todos os campos de validação devem ser gerados dinamicamente, através dum algoritmo qualquer.

Espero que isso faça parte dos teus planos para a implementação deste campo.

Senão é o mesmo que não teres nada..

0

Partilhar esta mensagem


Link 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