Olá, Visitante. Por favor Entre ou Registe-se se ainda não for membro.
4 de Dezembro de 2008, 19:25:36
Início Ajuda Pesquisa Entrar Registe-se
Notícias: REGISTE-SE JÁ NO REDCODESTUDIO!
A sua Comunidade de Desenvolvimento Web


+  Redcodestudio
|-+  Programação Web
| |-+  PHP
| | |-+  [Duvidas] Erro PHP (Parse error)
« anterior seguinte »
Páginas: [1] Ir para o fundo Imprimir
Autor Tópico: [Duvidas] Erro PHP (Parse error)  (Lida 4878 vezes)
TripleHCP
Aprendiz
**
Offline Offline

Mensagens: 82


Ver Perfil
« em: 16 de Março de 2006, 19:34:40 »

Boas é um seguinte, eu estou a fazer em php de maneira a mandar o conteudo inserido num formulário para um determinado email, neste caso o meu. Estou a testar aqui no EasyPHP e isto dame assim "Parse error: parse error in c:\programas\easyphp1-8\www\email.php on line 35"

Vou por aqui o codico pois não percebo o problema da linha 35 :?

Código:

1<html>
2<head>
3<title>Untitled Document</title>
4</head>
5
6<body>
7<?
8if ($_POST[mensagem] != "")
9{
10$date = date("d/m/Y h:i");
11$nome = $_POST[nome];
12$mail = $_POST[mail];
13
14$email = "Pedro_1234564@hotmail.com";
15$assunto = "E-Mail enviado";
16$mensagem = "
17
18Enviado por: $nome
19
20Mensagem:
21
22$_POST[mensagem]
23
24                       Enviado em: $date ";
25
26$headers = "From: $nome<$mail>";
27mail($email, $assunto, $mensagem, $headers);
28
29echo "<br><br><b>E-Mail enviado, irei responder tão breve quanto possível.<br>Obrigado!</b>";
30
31} else {
32
33echo "tenta outra vez";
34?></body>
35</html>


Cumps
Registado
LuisFilipe
Aprendiz
**
Offline Offline

Mensagens: 88



Ver Perfil
« Responder #1 em: 16 de Março de 2006, 20:42:11 »

Falta fechar
Código:
}
após o else

Código:
31} else {
32
33echo "tenta outra vez";
34}?></body>
35</html>
Registado
TripleHCP
Aprendiz
**
Offline Offline

Mensagens: 82


Ver Perfil
« Responder #2 em: 16 de Março de 2006, 21:16:09 »

Porra pois é  Tongue  Tanks, mas agora dame outro erro que é Warning: mail(): Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in c:\programas\easyphp1-8\www\email.php on line 27

O que é suposto fazer, é que ainda n sei grande coisa disto. Tongue

Cumps
Registado
LuisFilipe
Aprendiz
**
Offline Offline

Mensagens: 88



Ver Perfil
« Responder #3 em: 16 de Março de 2006, 21:39:30 »

Pois isso já é muito avançado mas

Citação de: "php.ini"
...
[mail function]
; For Win32 only.
SMTP = localhost
smtp_port = 25
...
E o localhost não tem um servidor de mail logo dá erro.

tenta com o servidor de mail do teu ISP. Acho que pode tentar mesmo com este smtp.sapo.pt

colocas onde está localhost, smtp.sapo.pt
Registado
TripleHCP
Aprendiz
**
Offline Offline

Mensagens: 82


Ver Perfil
« Responder #4 em: 16 de Março de 2006, 21:44:49 »

Mesmo assim dá erro (o mesmo), eu já tentei por no www.orgfree.com mas não me manda nenhum email.
Registado
LuisFilipe
Aprendiz
**
Offline Offline

Mensagens: 88



Ver Perfil
« Responder #5 em: 16 de Março de 2006, 22:07:18 »

Citação de: "TripleHCP"
Mesmo assim dá erro (o mesmo), eu já tentei por no www.orgfree.com mas não me manda nenhum email.
Julgo que esse tal como o Hotmail, tal como o Gmail são por HTTP e não SMTP e não sei se o PHP suporta isso.

Citação de: "php_manual_pt_BR.chm"
Atenção
A implentação do Windows de mail() difere bastante da implentação Unix. Primeiro, ele não usa um binary local para compor mensagens mas apenas opera com sockets diretos o que significa que uma MTA é necessária monitorando um socket de rede (que pode ser ou o localhost ou uma máquina remota). Segundo, os cabeçalhos personalizados como From:, Cc:, Bcc: e Date: são not interpretados por MTA em primeiro lugar, mas são analizados pelo PHP. PHP < 4.3 somente elementos suportados Cc: elemento de cabeçalho (e foi caso-sensitivo). PHP >= 4.3 suporta todos os elementos de cabeçalho mensionados e não mais caso-sensitivo.
Registado
TripleHCP
Aprendiz
**
Offline Offline

Mensagens: 82


Ver Perfil
« Responder #6 em: 16 de Março de 2006, 22:13:09 »

Então e o que sugeres que faça?
Registado
LuisFilipe
Aprendiz
**
Offline Offline

Mensagens: 88



Ver Perfil
« Responder #7 em: 16 de Março de 2006, 22:24:19 »

Citação de: "TripleHCP"
Então e o que sugeres que faça?
Investigar, investigar, investigar, tigar, tigar. (Musica da Dori no Nemo quando vão para o fundo do precipício)

Enviar um mail não é assim tão linear como isso.
Quem nunca tentou enviar um mail com o botão direito do Rato paradescobrir que aquilo não está configurado ?

Quem trata so mail é um servidor local que se encarrega de tratar do problema. Aqui temos que o contactar de alguma forma.

Isto parece promissor

http://dk.php.net/manual/en/function.imap-mail.php

Citar
// no need to open stream
$mb = imap_open("{pop-server.Huh?:110/pop3}INBOX",
"<username>","<password>");
imap_mail($to, $subject, $msg);
// no need to close stream
imap_close($mb);



Porque no fundo, quando envias um mail, não és tu que o envias. O que fazes é enviar ao teu ISP a mensagem para ele a enviar.

Com HTTP (Hotmail, Gmail, ...) é diferente, estás normalmente numa página de asp ou php ou java ou javascript e é o servidor deles que recebe e envia o mail.

Portanto ou envias o mail através do teu ISP (tua conta) ou através de uma conta HTTP do Hotmail, Gmail, ...

Vou procurar mail HTTP ou Hotmail
Registado
LuisFilipe
Aprendiz
**
Offline Offline

Mensagens: 88



Ver Perfil
« Responder #8 em: 16 de Março de 2006, 22:38:22 »

Mail.
http://www.sitepoint.com/article/advanced-email-php

-----

http://www.webmasterworld.com/forum88/971.htm

Citação de: "transistor"
Ok, the mail function works like this:
mail ($to, $subject, $message, $headers)

$to = "someone <some@email>";
$subject = "You've got mail!";
$message = "Hello someone.";
$headers = "From: me@mysite.com\n"; // I suggest you try using only \n
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
$headers .= "Reply-To: me <me@mysite.com>\n";
$headers .= "X-Priority: 1\n";
$headers .= "X-MSmail-Priority: High\n";
$headers .= "X-mailer: My mailer";


Citação de: "iJeep"
I used the method in mesage 2 and it worked. May have just been because It got rid of the second "To:" field.
Registado
gimbras
Emblema de Prata
****
Offline Offline

Mensagens: 1103



Ver Perfil WWW
« Responder #9 em: 16 de Março de 2006, 23:08:10 »

Esse último erro é mesmo porque o servidor de mail do EasyPHP não deve estar configurado. Tenta num servidor online mesmo.
Registado

TripleHCP
Aprendiz
**
Offline Offline

Mensagens: 82


Ver Perfil
« Responder #10 em: 17 de Março de 2006, 10:28:56 »

Gimbras eu já tentei e n funcionou no orgfree, eu tentei por localhost, smtp.netvisao.pt mas não funcionou na mesma :? Como configuro para funcionar? Aquilo no erro também diz para eu usar  ini_set() na linha do mail() é para substituir o mail() por ini_set()?

Cumps
Registado
Liliana
Iniciado
*
Offline Offline

Mensagens: 1


Ver Perfil
« Responder #11 em: 7 de Abril de 2008, 10:15:48 »

Ola pessoal estou aqui a fazer o meu projecto de final d curso e aconteceu m isto

diz que tem parse error na linha 36 algm me pode ajudar?

$erro='';
if ((!empty($_POST['Nome']) && (!empty($_POST['Nome_utilizador']) && (!empty($_POST['password'])
&& (!empty($_POST['grupo_disc']) (!empty($_POST['conf_pass'])){
   if ($_POST['password']!=$_POST['conf_pass']){
      $erro=$erro+' Passoword e Confirmação têm e ser iguais '
Registado
alftuga
Aprendiz
**
Offline Offline

Mensagens: 202


Ver Perfil WWW
« Responder #12 em: 8 de Abril de 2008, 14:21:14 »

assim a primeira falta um ";"
 $erro=$erro+' Passoword e Confirmação têm e ser iguais '
Registado
gimbras
Emblema de Prata
****
Offline Offline

Mensagens: 1103



Ver Perfil WWW
« Responder #13 em: 9 de Abril de 2008, 13:27:05 »

Código:
$erro="";

(...)

$erro=$erro.' Passoword e Confirmação têm e ser iguais ';

A concatenação em PHP, se não me falha a memória é feita com um ponto . e não um mais.
As aspas ou pelicas uma vez abertas têm de ser sempre fechadas.
Cada instrução tem de ser terminada com ponto e vírgula.

Às vezes, uma pessoa nem repara e acaba por se esquecer desses pormenores.

Cumps.
« Última modificação: 9 de Abril de 2008, 13:28:36 por gimbras » Registado

Páginas: [1] Ir para o topo Imprimir 
« anterior seguinte »
Ir para:  


Entrar com nome de utilizador, password e duração da sessão


Powered by MySQL Powered by PHP Powered by SMF 1.1.4 | SMF © 2006-2007, Simple Machines LLC
Seo4Smf v0.2 © Webmaster's Talks
XHTML 1.0 válido! CSS válido!
Página criada em 0.071 segundos com 19 procedimentos.