[RESOLU] Parse error: syntax error, unexpected '{' in /home/avisueld/www/mail/MailHandler.php on line 51

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Parse error: syntax error, unexpected '{' in /home/avisueld/www/mail/MailHandler.php on line 51

Re: Parse error: syntax error, unexpected '{' in /home/avisueld/www/mail/MailHandler.php on line 51

par andr » 25 févr. 2016, 10:36

Pour en être sur, rien de mieux qu'une simple page PHP qui contient juste ça :
<?php
phpinfo();

Merci à vous tous pour votre aide,j'ai vérifier la mise à jour de PHP et en fait elle n'avait pas été prise en charge car le fichier placé à la racine de mon site n'été pas conforme..Chose faîte et maintenant plus de problème.
Donc sujet RESOLU
Encore merci pour vos suggestions
André



Re: Parse error: syntax error, unexpected '{' in /home/avisueld/www/mail/MailHandler.php on line 51

par @rthur » 25 févr. 2016, 10:26

Pour en être sur, rien de mieux qu'une simple page PHP qui contient juste ça :
<?php
phpinfo();

Re: Parse error: syntax error, unexpected '{' in /home/avisueld/www/mail/MailHandler.php on line 51

par ynx » 25 févr. 2016, 10:21

Pourtant le code posté dans ton premier message ne comporte pas d'erreur de syntaxe : http://sandbox.onlinephpfunctions.com/c ... 78d1f8192d
J'ai commenté les classes et variables non définies (require recaptcha et include libmail) et le code s’exécute correctement. Par contre je retrouve bien ton message d'erreur avec PHP 4.

Peux tu essayer de supprimer le try/catch afin de confirmer ou non que le problème vient de là ?

Re: Parse error: syntax error, unexpected '{' in /home/avisueld/www/mail/MailHandler.php on line 51

par andr » 24 févr. 2016, 17:35

Après quelques tests, le problème semble venir de la version de php que tu utilises. Il semble que tu utilises la version 4 de php, or la gestion des exceptions (try/catch) a été ajoutée dans php à partir de la version 5.
Il faut donc mettre à jour ta version de PHP.
Et non justement j'ai mis à jour ma version de PHP ci-dessous le fichier coller à la racine de mon site

app.engine=php
app.engine.version=5.6
http.firewall=none
environment=production

Donc je cherche encore...

Re: Parse error: syntax error, unexpected '{' in /home/avisueld/www/mail/MailHandler.php on line 51

par ynx » 24 févr. 2016, 10:16

Après quelques tests, le problème semble venir de la version de php que tu utilises. Il semble que tu utilises la version 4 de php, or la gestion des exceptions (try/catch) a été ajoutée dans php à partir de la version 5.
Il faut donc mettre à jour ta version de PHP.

Re: Parse error: syntax error, unexpected '{' in /home/avisueld/www/mail/MailHandler.php on line 51

par andr » 23 févr. 2016, 15:57

Salut,

Les parenthèses sont normalement facultatives pour les structures de langage (include, require, echo...).

Il ne semble pas y avoir d'erreur de syntaxe dans le code posté (hormis le texte "ligne 51" que tu as ajouté). Es-tu sur qu'il s'agit bien de ce code ?
A tout hasard, as tu le même message d'erreur en supprimant le include 'libmail.php'; ?

Bonne journée,
[quote ="andré"]
Merci pour les suggestions mais j'ai tenté les 2 et j'ai toujours le même message?

Bonne journée[/quote]

Re: Parse error: syntax error, unexpected '{' in /home/avisueld/www/mail/MailHandler.php on line 51

par ynx » 23 févr. 2016, 13:43

Salut,

Les parenthèses sont normalement facultatives pour les structures de langage (include, require, echo...).

Il ne semble pas y avoir d'erreur de syntaxe dans le code posté (hormis le texte "ligne 51" que tu as ajouté). Es-tu sur qu'il s'agit bien de ce code ?
A tout hasard, as tu le même message d'erreur en supprimant le include 'libmail.php'; ?

Bonne journée,

Re: Parse error: syntax error, unexpected '{' in /home/avisueld/www/mail/MailHandler.php on line 51

par Spols » 23 févr. 2016, 12:21

Je pense que si tu met l'argument de ton include entre paranthèse cela fonctionnera mieux
try{
  include ("libmail.php");

Parse error: syntax error, unexpected '{' in /home/avisueld/www/mail/MailHandler.php on line 51

par andré » 22 févr. 2016, 21:08

Bonjour à vous tous
Je viens demander un peu d'aide aux spécialistes PHP. Mon problème est l'erreur citée dans le sujet
J'ai pour envoyer mes emails, un fichier MailHandler,TMform.js et ma page contact.html. J'ai essayé en cherchant par moi même mais, je n'ai pas réussi.....d'où mon post
Je vous joints donc ces fichiers peut-être trouverez vous d'où vient l'erreur
ps:j'ai remplacé par des étoiles les infos personnelles et indiqué la ligne 51 nommée.

En vous remerciant par avance
Cordialement

André
<?php
	$owner_email='************@gmail.com';
	//SMTP server settings	
	$host = '*********';
    $port = '****';//"****";
    $username = '****************@gmail.com';
    $password = '';

    $subject='A message from your site visitor ';
    $user_email='';    
	$message_body='';
	$message_type='html';

	$max_file_size=50;//MB 
	$file_types='/(doc|docx|txt|pdf|zip|rar)$/';
	$error_text='something goes wrong';
	$error_text_filesize='File size must be less than';
	$error_text_filetype='Failed to upload file. This file type is not allowed. Accepted files types: doc, docx, txt, pdf, zip, rar.';

	$private_recaptcha_key='6LeZwukSAAAAACmqrbLmdpvdhC68NLB1c9EA5vzU'; //localhost
	
	
	$use_recaptcha=isset( $_POST["recaptcha_challenge_field"]) and isset($_POST["recaptcha_response_field"]);
	$use_smtp=($host=='' or $username=='' or $password=='');
	$max_file_size*=1048576;

	if($owner_email==''){
		die('Attention, recipient e-mail is not set! Please define "owner_email" variable in the MailHanlder.php file.');
	}

	if(preg_match('/^(127\.|192\.168\.)/',$_SERVER['REMOTE_ADDR'])){
		die('Attention, contact form will not work locally! Please upload your template to a live hosting server.');
	}

	//if($use_recaptcha){
		require_once('recaptchalib.php');
		$resp = recaptcha_check_answer ($private_recaptcha_key,$_SERVER["REMOTE_ADDR"],$_POST["recaptcha_challenge_field"],$_POST["recaptcha_response_field"]);
		if (!$resp->is_valid){
			die ('wrong captcha');
		}
	//}
	
	if(isset($_POST['name']) and $_POST['name'] != ''){$message_body .= '<p>Visiteur: ' . $_POST['name'] . '</p>' . "\n" . '<br>' . "\n"; $subject.=$_POST['name'];}
	if(isset($_POST['email']) and $_POST['email'] != ''){$message_body .= '<p>Adresse Email: ' . $_POST['email'] . '</p>' . "\n" . '<br>' . "\n"; $user_email=$_POST['email'];}
	if(isset($_POST['state']) and $_POST['state'] != ''){$message_body .= '<p>State: ' . $_POST['state'] . '</p>' . "\n" . '<br>' . "\n";}
	if(isset($_POST['phone']) and $_POST['phone'] != ''){$message_body .= '<p>Téléphone: ' . $_POST['phone'] . '</p>' . "\n" . '<br>' . "\n";}	
	if(isset($_POST['fax']) and $_POST['fax'] != ''){$message_body .= '<p>Fax Number: ' . $_POST['fax'] . '</p>' . "\n" . '<br>' . "\n";}
	if(isset($_POST['message']) and $_POST['message'] != ''){$message_body .= '<p>Message: ' . $_POST['message'] . '</p>' . "\n";}	
	if(isset($_POST['stripHTML']) and $_POST['stripHTML']=='true'){$message_body = strip_tags($message_body);$message_type='text';}

ligne 51   
try{
	include "libmail.php";
	$m= new Mail("utf-8");
	$m->From($user_email);
	$m->To($owner_email);
	//$m->Subject($subject);
	$m->Body($message_body,$message_type);
	//$m->log_on(true);

	if(isset($_FILES['attachment'])){
		if($_FILES['attachment']['size']>$max_file_size){
			$error_text=$error_text_filesize . ' ' . $max_file_size . 'bytes';
			die($error_text);			
		}else{			
			if(preg_match($file_types,$_FILES['attachment']['name'])){
				$m->Attach($_FILES['attachment']['tmp_name'],$_FILES['attachment']['name'],'','attachment');
			}else{
				$error_text=$error_text_filetype;
				die($error_text);				
			}
		}		
	}
	if(!$use_smtp){
		$m->smtp_on( $host, $username, $password, $port);
	}

	if($m->Send()){
		die('success');
	}	
	
}catch(Exception $mail){
	die($mail);
}	
?>
<h4>Formulaire</h4>
        <form id="contact-form">
          <!--<div class="contact-form-loader"></div>-->
          <fieldset>
            <label class="name">
              <input type="text" name="name" placeholder="Nom:" value="" data-constraints="@Required @JustLetters"  />
              <span class="empty-message">*Ce champs est obligatoire.</span>
              <span class="error-message">*Ce champs est obligatoire.</span>
            </label>
           
            <label class="email">
              <input type="text" name="email" placeholder="E-mail:" value="" data-constraints="@Required @Email" />
              <span class="empty-message">*Ce champs est obligatoire.</span>
              <span class="error-message">*Adresse mail incorrecte.</span>
            </label>
            <label class="phone">
              <input type="text" name="phone" placeholder="Téléphone:" value="" data-constraints="@Required @JustNumbers" />
              <span class="empty-message">*Ce champs est obligatoire.</span>
              <span class="error-message">*Numéro incorrect.</span>
            </label>
           
            <label class="message">
              <textarea name="message" placeholder="Message:" value="" data-constraints="@Required @Length(min=20,max=999999)"></textarea>
              <span class="empty-message">*Ce champs est obligatoire.</span>
              <span class="error-message">*Message trop court.</span>
            </label>
            <div>
              <a href="#" class="btn" data-type="reset">Effacer</a>
              <a href="#" class="btn" data-type="submit">Envoyer</a>
            </div>
          </fieldset> 
          <div class="modal fade response-message">
            <div class="modal-dialog">
              <div class="modal-content">
                <div class="modal-header">
                  <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
                  <h4 class="modal-title">Modal title</h4>
                </div>
                <div class="modal-body">
                  Votre message a été envoyé nous allons y répondre.
                </div>