3
respostas

Parse error: syntax error, unexpected T_STRING, expecting T_CONSTANT_ENCAPSED_STRING or '(' in D:\web\localuser\rozo\www\scae_web\envia-contato.php on line 9

Esse erro aparece no momento que tento enviar e-mail com meu código dentro de meu FTP, direto pela web. Quando testo no WAMP corre tudo normalmente, será que alguém consegue me dar uma luz?.

Erro:

Parse error: syntax error, unexpected T_STRING, expecting T_CONSTANT_ENCAPSED_STRING or '(' in D:\web\localuser\rozo\www\scae_web\envia-contato.php on line 9

meu envia-contato.php:

<?php
session_start();
$nome = $_POST["nome"];
$email = $_POST["email"];
$mensagem = $_POST["mensagem"];

//use PHPMailer\PHPMailer\PHPMailer;

use PHPMailer\PHPMailer\PHPMailer;

include_once "PHPMailerAutoload.php";
include_once "PHPMailer.php";
include_once "OAuth.php";
include_once "POP3.php";
include_once "SMTP.php";
include_once "Exception.php";

$mail = new PHPMailer();

$mail->isSMTP();
$mail->SMTPAuth = true;
$mail->Host = 'smtp.gmail.com';
$mail->Port = 587;
$mail->SMTPSecre = 'tls';
$mail->Username = "33pedro@gmail.com";
$mail->Password = 'P3dro$oares';

$mail->setFrom("33pedro@gmail.com", "Alura Curso Pedro");
$mail->addAddress("33pedro@gmail.com");
$mail->Subject = "Email de contato da loja!";
$mail->msgHTML("<html>De: {$nome}<br/>Email: ($email)<br/>Mensagem: {$mensagem}</html>");
$mail->AltBody = "De: {$nome}\nEmail: {$email}\nMensagem: {$mensagem}";
$mail->SMTPOptions = array(
'ssl' => array(
    'verify_peer' => false,
    'verify_peer_name' => false,
    'allow_self_signed' => true
));

if($mail->send()) {
    $_SESSION["success"] = "Mensagem enviada com sucesso";
    header("Location: index.php");
} else {
    $_SESSION["danger"] = "Erro ao enviar mensagem " . $mail->ErrorInfo;
    header("Location: contato.php");
}
die();
3 respostas

Oi Pedro, tudo bom?

Qual a versão do php do seu xampp e a versão desse servidor que você roda direto?

O erro aponta a linha 9:

use PHPMailer\PHPMailer\PHPMailer;

E indica um problema de sintaxe. Provavelmente o php do servidor web está em uma versão que não suporta namespaces (5.3 ou anterior).

Compartilha com a gente a versão atual =)

Abraço

Pois é, isso acontece mesmo, as versões não são iguais: Servidor Web: PHP Version 5.2.17 Servidor Wamp: PHP Version 5.6.31 estou verificando uma maneira de deixar ambos na mesma versão, mas acredito que seja esse o caminho, qualquer novidade informo aqui!

Oi Pedro, tudo bom?

Passa o feedback aqui pra gente depois =)

Assim se alguém passar pelo mesmo problema poderá encontrar mais apoio.

Abraço!