[Résolu] Une erreur PHP

WRInaute accro
J'ai ça comme erreur, j'avoue que je sèche un peu :

Parse error: parse error, unexpected T_VARIABLE in /data/www/com/e/d/aproposde.com/p/i/voip/htdocs/forum/_index.php on line 1

Ca marche en local mais donne ce message quand je mets en ligne...

Qqn de plus plus inspiré ? :idea:
 
WRInaute accro
Et j'ai la même chose ici
http://voip.aproposde.com/testforum/

Parse error: parse error, unexpected '}' in /data/www/com/e/d/aproposde.com/p/i/voip/htdocs/testforum/index.php on line 1

Le début du code est
Code:
<?php

// use smileys > true or false
$useSmileys = true;

// reverse answer list > true or false
$reverseAnswers = true;

// number of answers/topics per page
$itemsPerPage = 20;

QQn comprend qqch ???
 
WRInaute accro
C'est le genre d'erreur qui apparait quand quelques lignes au dessus tu as oublié un ";" ou alors une { pas fermée etc... L'erreur est souvent au dessus ;)


Si tu donnes un peu plus de code on pourra peut etre mieux voir ;-)
 
WRInaute impliqué
on line 1 !
la c'est tres fort !
Bah tous simplement change <?php en <?
J'ai vu une fois que cela avait resolu un probleme ...
 
WRInaute discret
GAMING ZONE a dit:
on line 1 !
la c'est tres fort !
Bah tous simplement change <?php en <?
J'ai vu une fois que cela avait resolu un probleme ...

nimporte quoi
<? et <?php sont tous les deux tolérés
il est dailleurs plus courant d'utiliser <?php

poste ton code pour qu'on puisse t'aider ;)
 
WRInaute passionné
Re: Une erreur PHP

ecocentric a dit:
Parse error: parse error, unexpected T_VARIABLE in /data/www/com/e/d/aproposde.com/p/i/voip/htdocs/forum/_index.php on line 1

Si tu utilises des variables de type POST ou GET, utilise bien $_GET["variable"] ou $_POST["variable"] plutot que $variable

...

Avec tout le code ce serait plus simple.
 
WRInaute impliqué
Je sais tres bien que <?php et <? sont identiques, mais je dis juste que cela avait resolu un probleme, lut sur un forum, je me demande si ce n'etait pas WRI, justement, sinon c'etait sur le webmaster-hub ...
pour indiqué une DTD XML, on utilise <! , my sirdipp ...
 
WRInaute impliqué
GAMING ZONE a dit:
pour indiqué une DTD XML, on utilise <! , my sirdipp ...

J'ai pas parlé de DTD, mais simplement de XML..
Code:
<?xml version="1.0" encoding="ISO-8859-1" ?>

Donc le mieux pour éviter tout conflit et d'utiliser <?php et non plus <?
 
WRInaute impliqué
Problème de caractère de retour à la ligne.

Tu prend ton fichier sous windows et tu vérifies que les caratères de retour à la ligne sont bien CR+LF, ensuite tu transfere via FTP en vérifiant bien que le transfert se fait en mode ASCII.
 
WRInaute impliqué
Sir Dipp a dit:
GAMING ZONE a dit:
pour indiqué une DTD XML, on utilise <! , my sirdipp ...

J'ai pas parlé de DTD, mais simplement de XML..
Code:
<?xml version="1.0" encoding="ISO-8859-1" ?>

Donc le mieux pour éviter tout conflit et d'utiliser <?php et non plus <?
Ah , excuse moi ...
Cependant, l'extension ne jouerait-il pas un rôle?
un .php ayant <? sera comme si c'etait un <?php (executer du coté serveur)
par contre un.xml sera toujours declaré avec un <?xml ( et non executer coté serveur ) ( supposition de ma part, car je n'ai jamais regarder le language XML )
Donc est-ce bien utile ? ( c'est pour ma culture personnel )

Pour revenir sur le sujet, je pense que shrom a donné la solution ...
Une imcompabilité entre unix et windows vieille comme Internet ;)
 
WRInaute impliqué
GAMING ZONE a dit:
Sir Dipp a dit:
GAMING ZONE a dit:
pour indiqué une DTD XML, on utilise <! , my sirdipp ...

J'ai pas parlé de DTD, mais simplement de XML..
Code:
<?xml version="1.0" encoding="ISO-8859-1" ?>

Donc le mieux pour éviter tout conflit et d'utiliser <?php et non plus <?
Ah , excuse moi ...
Cependant, l'extension ne jouerait-il pas un rôle?
un .php ayant <? sera comme si c'etait un <?php (executer du coté serveur)
par contre un.xml sera toujours declaré avec un <?xml ( et non executer coté serveur ) ( supposition de ma part, car je n'ai jamais regarder le language XML )
Donc est-ce bien utile ? ( c'est pour ma culture personnel )

La plus part des flux xml sont réalisé en php, donc ils sont xml, avec une extention .php (la preuve tu l'as juste au dessus à côté du nom du forum).
J'espère que tça t'aide dans ta culture ;)
 
WRInaute accro
En fait, c'est cette partie de code qui fait pêter un plomb à mon hébergeur (Lost Oasis, qui est en PHP 5 de mémoire) alors que ça marche sous Easy PHP et sur Online.Net :

Code:
function insertSmileys() { ?>

	<script language="javascript">	
	function insSml(face) {
		var newText;
		var currentText = document.form.txt.value;
		newText = currentText+face;
		document.form.txt.value=newText;
		document.form.txt.focus();
	}
	</script>

	<a href="#"><img src=smileys/smile.gif hspace=2 border=0 onClick="insSml(' :) ');"></a>
	<a href="#"><img src=smileys/wink.gif hspace=2 border=0 onClick="insSml(' ;)' );"></a>
	<a href="#"><img src=smileys/laugh.gif hspace=2 border=0 onClick="insSml(' :d ');"></a>
	<a href="#"><img src=smileys/doubt.gif hspace=2 border=0 onClick="insSml(' :s ');"></a>
	<a href="#"><img src=smileys/hot.gif hspace=2 border=0 onClick="insSml(' (h) ');"></a>
	<a href="#"><img src=smileys/tears.gif hspace=2 border=0 onClick="insSml(' :\'( ');"></a>
	<a href="#"><img src=smileys/angry.gif hspace=2 border=0 onClick="insSml(' :@ ');"></a>
	<a href="#"><img src=smileys/angel.gif hspace=2 border=0 onClick="insSml(' (a) ');"></a>
	<a href="#"><img src=smileys/bloss.gif hspace=2 border=0 onClick="insSml(' :$ ');"></a>
	<a href="#"><img src=smileys/tongue.gif hspace=2 border=0 onClick="insSml(' :p ');"></a>
	<a href="#"><img src=smileys/beer.gif hspace=8 border=0 onClick="insSml(' (b) ');"></a>

<? }

Quelqu'un a une idée pour résoudre le problème ?[/quote]
 
WRInaute accro
Voilà, je viens d'isoler le problème :

Code:
<?php

// use smileys > true or false
$useSmileys = true;

// reverse answer list > true or false
$reverseAnswers = true;

// number of answers/topics per page
$itemsPerPage = 20;

//----------------------------------------------------------------------------------------------
// retrieving all variables
//----------------------------------------------------------------------------------------------

if($_POST) 
{ 
	extract($_POST, EXTR_PREFIX_SAME, "post_"); 
}
if($_GET) 
{ 
	extract($_GET, EXTR_PREFIX_SAME, "get_"); 
}
if($_COOKIE) 
{ 
	extract($_COOKIE, EXTR_PREFIX_SAME, "cookie_"); 
}

if(!$_ForumNick) 
{ 
	$ForumNick = ""; 
}

//----------------------------------------------------------------------------------------------
// functions for inserting and showing the smilies
//----------------------------------------------------------------------------------------------

function insertSmileys() 
{ 
	$a = 1;
?>

<?php
}

function showSmileys($face) 
{
	$temp = str_replace(":)","<img src=smileys/smile.gif border=0>", $face);
	$temp = str_replace(";)","<img src=smileys/wink.gif border=0>", $temp);
	$temp = str_replace(":d","<img src=smileys/laugh.gif border=0>", $temp);
	$temp = str_replace(":s","<img src=smileys/doubt.gif border=0>", $temp);
	$temp = str_replace("(h)","<img src=smileys/hot.gif border=0>", $temp);
	$temp = str_replace(":'(","<img src=smileys/tears.gif border=0>", $temp);
	$temp = str_replace(":@","<img src=smileys/angry.gif border=0>", $temp);
	$temp = str_replace("(a)","<img src=smileys/angel.gif border=0>", $temp);
	$temp = str_replace(":$","<img src=smileys/bloss.gif border=0>", $temp);
	$temp = str_replace(":p","<img src=smileys/tongue.gif border=0>", $temp);
	$temp = str_replace("(b)","<img src=smileys/beer.gif border=0>", $temp);
	return $temp;
}

?>

==> Parse error: parse error, unexpected '}' in /data/www/com/e/d/aproposde.com/p/i/voip/htdocs/testforum/index2.php on line 1

Par contre, si j'écris

Code:
function insertSmileys() 
{ 

}

c'est bon...

Quelqu'un comprend ???
 
WRInaute impliqué
Il y a deux façons de débuter un script : <? ou <?php. Sémantiquement la deuxième solution est conseillée. Certains disent qu'elle est aussi plus rapide car le couple serveur/module PHP sait immédiatement qu'il a affaire à du code PHP. Or on remarque qu'il n'en est rien : les deux façons de faire sont équivalentes avec un petit avantage de rapidité d'éxécution pour <?. Par contre si vous envisagez d'utiliser PHP dans du code XML ou XHTML, il est nécessaire de préciser <?php.
 
WRInaute accro
Bon, voici la réponse que j'ai eu sur un autre forum :

amha, il s'agit d'un caractère cr / lf qui fout le souk dans ton
programme et qui met l'analyseur syntaxe de php en vrille, c'est vicieux
ce genre de chose quand on passe de unix à windows et inversement.

De fait, le code provenait d'un Mac (apparemment) et le parseur PHP de LO pêtait un câble. Il suffisait de remettre le fichier dans un format Unix et tout fonctionne nickel.
 
Discussions similaires
Haut