IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de donn�es Discussion :

Code PHP et erreur serveur Free : "Parse error: syntax error, unexpected '{' " [MySQL]


Sujet :

PHP & Base de donn�es

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    D�cembre 2005
    Messages
    47
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2005
    Messages : 47
    Par d�faut Code PHP et erreur serveur Free : "Parse error: syntax error, unexpected '{' "
    Bonjour � tous,

    J'ai �cris un code PHP qui g�re un carnet d'adresses avec une base de donn�es MySQL.
    Le code fonctionne bien en local mais j'ai syst�matiquement un message d'erreur quand je souhaite l'utiliser sur mon FTP Free.

    Parse error: syntax error, unexpected '{' ........ on line 91

    Voil� le code correspondant :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    .
    .
    .
    $reponse = mysql_query("SELECT nom,prenom,adresse,codepostal,ville,tel,email,sexe FROM contact ORDER BY nom") or die(mysql_error());
     
    while ($donnees = mysql_fetch_array($reponse))
    {
    	// Si le champ nom n'est pas renseigné
    	if (($_POST['nom'] == NULL) AND ($_POST['prenom'] != NULL))
    	{   
    		if (ereg(strtolower($recherche_prenom),strtolower($donnees['prenom']))
    		{  // LIGNE 91
    			include('affich_cartecontact.php');
    		}
    	}
     
    	// Si le champ prenom n'est pas renseigné
    	elseif (($_POST['nom'] != NULL) AND ($_POST['prenom'] == NULL))
    	{
    		if (ereg(strtolower($recherche_nom),strtolower($donnees['nom']))
    		{
    			include('affich_cartecontact.php');
    		}
    	}
     
    	// Si le champ prenom et le champ nom sont renseignés
    	elseif (($_POST['nom'] != NULL) AND ($_POST['prenom'] != NULL))
    	{
    		if ((ereg(strtolower($recherche_nom),strtolower($donnees['nom'])) AND (ereg(strtolower($recherche_prenom),strtolower($donnees['prenom'])))
    		{
    			include('affich_cartecontact.php');
    		}
    	}
     
    	// Si le champ prenom et le champ nom ne sont pas renseignés
    	else
    	{
    		echo("<CENTER>");
    		echo("<TABLE cellspacing=\"10\">");
    		echo("<TR>");
    		echo("<TD><IMG align=\"right\" width=\"60px\" height=\"60px\" src=\"../css/icone/ico_erreur.png\"></TD>");
    		echo("<TD>"."Vous n'avez renseigné aucun champ !"."</TD>");
    		echo("</TR>");
    		echo("</TABLE>");
    		echo("</CENTER><BR>");
    	}	
    }
    .
    .
    .
    J'ai tap� mon message d'erreur dans Google et �a serait vraisemblablement un probl�me d� au serveur Free qu'il faut faire passer en php5.

    J'ai donc cr�� un fichier .htaccess qui contient php1.
    Je l'ai plac� � la racine de mon FTP : aucun changement.
    Je l'ai plac� dans le r�pertoire ou il y a le fichier affich_cartecontact.php (code ci-dessus) : aucun changement.


    Que faire?

    Merci pour votre aide.

  2. #2
    Membre �m�rite Avatar de sharrascript
    Homme Profil pro
    D�veloppeur Web ind�pendant
    Inscrit en
    Avril 2007
    Messages
    678
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 44
    Localisation : France, Rh�ne (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : D�veloppeur Web ind�pendant

    Informations forums :
    Inscription : Avril 2007
    Messages : 678
    Par d�faut
    Salut mauriiice,

    Dans un premier temps, il te manque des parenth�ses dans cette ligne :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    if ((ereg(strtolower($recherche_nom),strtolower($donnees['nom'])) AND (ereg(strtolower($recherche_prenom),strtolower($donnees['prenom'])))
    Il y en a plus d'ouvertes que de ferm�es, rectifie d�j� cette erreur.

    ++

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    D�cembre 2005
    Messages
    47
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2005
    Messages : 47
    Par d�faut
    Merci, c'est d�j� �a de corriger

    Mais ca ne r�sout pas mon probl�me avec Free :/
    En plus, j'ai lu plusieurs post de membre chez qui l'op�ration avait fonctionn� avec le fichier .htaccess et php 1...

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    D�cembre 2005
    Messages
    47
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2005
    Messages : 47
    Par d�faut
    Copain ?


  5. #5
    Membre chevronn�
    Inscrit en
    Septembre 2006
    Messages
    685
    D�tails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 685
    Par d�faut
    Bonjour,

    Il est o� le probl�me en fait maintenant ?

    Mettre php 1 dans un .htaccess, modifie bien la version de php sur un h�bergement chez free (phpinfo()) pour v�rifier.

  6. #6
    Membre �m�rite Avatar de sharrascript
    Homme Profil pro
    D�veloppeur Web ind�pendant
    Inscrit en
    Avril 2007
    Messages
    678
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 44
    Localisation : France, Rh�ne (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : D�veloppeur Web ind�pendant

    Informations forums :
    Inscription : Avril 2007
    Messages : 678
    Par d�faut
    De plus, m�me sur cette ligne il manque des parenth�ses :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    if (ereg(strtolower($recherche_prenom),strtolower($donnees['prenom']))

  7. #7
    Membre chevronn�
    Inscrit en
    Septembre 2006
    Messages
    685
    D�tails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 685
    Par d�faut
    J'ajouterais qu'au lieu de se servir de cet inf�me ereg et strtolower, il serait pr�f�rable d'utiliser stripos()

    Et vu que c'est pour faire une recherche, il va de soi que l'op�ration doit s'effectuer du c�t� de MySQL, en utilisant une case insensitive.

    L�, ton script n'est pas du tout coh�rent, tu contr�les tes variables POST dans ta boucle...

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    D�cembre 2005
    Messages
    47
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2005
    Messages : 47
    Par d�faut
    Ca me rend fou...

    J'ai bien mis le fichier .htaccess � la racine de mon ftp avec php 1 dedans.

    J'ai cr�� un fichier avec l'instruction phpinfo() dans le r�pertoire du code qui pose probl�me.
    Ca m'indique bien : PHP Version 5.1.3RC4-dev


    MAIS j'ai toujours le m�me message d'erreur, � savoir une accolade inattendue...
    "Parse error: syntax error, unexpected '{' in ..../recherche_contactV2.php on line 92"

    Je remet le code qui pose probl�me :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    .
    .
    .
    $reponse = mysql_query("SELECT nom,prenom,adresse,codepostal,ville,tel,email,sexe FROM contact ORDER BY nom") or die(mysql_error());
     
    while ($donnees = mysql_fetch_array($reponse))
    {
    	// Si le champ nom n'est pas renseigné
    	if (($_POST['nom'] == NULL) AND ($_POST['prenom'] != NULL))
    	{
    		if (ereg(strtolower($recherche_prenom),strtolower($donnees['prenom']))
    		{ // LIGNE 92
    			$compteur_resultat = $compteur_resultat + 1;
    			include('affich_cartecontact.php');
    		}
    	}
     
     
    	// Si le champ prenom n'est pas renseigné
    	elseif (($_POST['nom'] != NULL) AND ($_POST['prenom'] == NULL))
    	{
    		if (ereg(strtolower($recherche_nom),strtolower($donnees['nom']))
    		{
    			$compteur_resultat = $compteur_resultat + 1;
    			include('affich_cartecontact.php');
    		}
    	}
     
    	// Si le champ prenom et le champ nom sont renseignés
    	elseif (($_POST['nom'] != NULL) AND ($_POST['prenom'] != NULL))
    	{
    		if ((ereg(strtolower($recherche_nom),strtolower($donnees['nom'])) AND (ereg(strtolower($recherche_prenom),strtolower($donnees['prenom'])))
    		{
    			$compteur_resultat = $compteur_resultat + 1;
    			include('affich_cartecontact.php');
    		}
    	}
     
    	// Si le champ prenom et le champ nom ne sont pas renseignés
    	else
    	{
    		echo("<CENTER>");
    		echo("<TABLE cellspacing=\"10\">");
    		echo("<TR>");
    		echo("<TD><IMG align=\"right\" width=\"60px\" height=\"60px\" src=\"../css/icone/ico_erreur.png\"></TD>");
    		echo("<TD>"."Vous n'avez renseigné aucun champ !"."</TD>");
    		echo("</TR>");
    		echo("</TABLE>");
    		echo("</CENTER><BR>");
    	}	
    }
     
    .
    .
    .

  9. #9
    Membre �m�rite Avatar de sharrascript
    Homme Profil pro
    D�veloppeur Web ind�pendant
    Inscrit en
    Avril 2007
    Messages
    678
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 44
    Localisation : France, Rh�ne (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : D�veloppeur Web ind�pendant

    Informations forums :
    Inscription : Avril 2007
    Messages : 678
    Par d�faut
    Dans un premier temps je ne ferais que me citer

    Citation Envoy� par sharrascript Voir le message
    De plus, m�me sur cette ligne il manque des parenth�ses :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    if (ereg(strtolower($recherche_prenom),strtolower($donnees['prenom']))
    Et je pense que le conseil de Xunil est � prendre.

    Je n'ai pas jet� un �il dans le code, mais d�j� essai de corriger les erreurs que je t'ai donn�es accolades et parenth�ses etc...

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    D�cembre 2005
    Messages
    47
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2005
    Messages : 47
    Par d�faut
    Citation Envoy� par sharrascript Voir le message
    Je n'ai pas jet� un �il dans le code, mais d�j� essai de corriger les erreurs que je t'ai donn�es accolades et parenth�ses etc...
    C'�tait effectivement un probl�me d� � un oubli de parenth�ses, erreur que je fais souvent...
    Je vais r�activer la fermeture automatique des parenth�ses dans Smultron, �a va �tre vite r�gl�

    J'ajouterais qu'au lieu de se servir de cet inf�me ereg et strtolower, il serait pr�f�rable d'utiliser stripos()

    Et vu que c'est pour faire une recherche, il va de soi que l'op�ration doit s'effectuer du c�t� de MySQL, en utilisant une case insensitive.

    L�, ton script n'est pas du tout coh�rent, tu contr�les tes variables POST dans ta boucle...
    Je suis bien conscient que ce code est imparfait, je vais tacher de me renseigner sur la fonction que tu m'as donn� afin de le retravailler.

    En revanche, je n'ai pas bien compris l'histoire de la "case insensitive"...



    Merci pour votre aide.

  11. #11
    Membre �m�rite Avatar de sharrascript
    Homme Profil pro
    D�veloppeur Web ind�pendant
    Inscrit en
    Avril 2007
    Messages
    678
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 44
    Localisation : France, Rh�ne (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : D�veloppeur Web ind�pendant

    Informations forums :
    Inscription : Avril 2007
    Messages : 678
    Par d�faut
    Concernant l'histoire des casses sensitives, c'est par exemple, avec la fonction ereg, tu cherche "a" dans la chaine "b", mais tu utilise strtolower pour enlever les majuscules et �tre s�r de trouver la chaine m�me compos�e de majuscules ou non.

    Alors qu'il y a par exemple : eregi qui t'�vite d'utiliser le strtolower, car insensible � la casse des caract�res.

    Voilou ++

  12. #12
    Membre averti
    Profil pro
    Inscrit en
    D�cembre 2005
    Messages
    47
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2005
    Messages : 47
    Par d�faut
    Merci pour ces infos

    ++

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [2.x] Probl�me avec le fichier app.php sur un serveur free.fr
    Par chlock62 dans le forum Symfony
    R�ponses: 5
    Dernier message: 19/06/2013, 16h06
  2. R�ponses: 3
    Dernier message: 02/09/2008, 13h39
  3. R�ponses: 1
    Dernier message: 12/12/2007, 14h03
  4. [PHP-JS] Parse error: syntax error, unexpected T_STRIN
    Par maldini dans le forum Langage
    R�ponses: 4
    Dernier message: 25/07/2006, 18h49
  5. arr�t du code php si erreur = vrai...
    Par sam01 dans le forum Langage
    R�ponses: 5
    Dernier message: 25/02/2006, 22h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo