Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Question de syntaxe

14 views
Skip to first unread message

Raphael

unread,
May 2, 2013, 1:58:24 PM5/2/13
to
Bonjour,

je suis actuellement chez OVH en hébergement où la version de php est
5.2.17 et j'ai un problème de syntaxe. Lorsque j'écris mon code de la
façon suivante :

<?php
echo toto;
?>

j'obtiens l'erreur :

Parse error: syntax error, unexpected T_STRING in
/homez.713/neworker/www/test.php on line 1

qui disparait si j'ecris :

<?
echo toto;
?>

sans le php donc. De même, si j'écris des commentaires dans mon code
avec un double slash :

<?
// test echo
echo toto;
?>

Là, plus rien ne s'affiche à l'écran. Est-ce normal?

Merci pour votre réponse.

Raphael


Denis Beauregard

unread,
May 2, 2013, 2:32:48 PM5/2/13
to
Le Thu, 02 May 2013 19:58:24 +0200, Raphael <rap...@nospam.fr>
écrivait dans fr.comp.lang.php:

>Bonjour,
>
>je suis actuellement chez OVH en hébergement où la version de php est
>5.2.17 et j'ai un problème de syntaxe. Lorsque j'écris mon code de la
>façon suivante :
>
><?php
>echo toto;
>?>
>
>j'obtiens l'erreur :
>
>Parse error: syntax error, unexpected T_STRING in
>/homez.713/neworker/www/test.php on line 1

Ce qui est normal. Il faut écrire

echo $toto;

C'est la base du PHP.

>qui disparait si j'ecris :
>
><?
>echo toto;
>?>
>
>sans le php donc. De même, si j'écris des commentaires dans mon code
>avec un double slash :

C'est un commentaire. Le mot php est requis en PHP 5. Ce qui explique
pourquoi certains sites ne fonctionnent plus.

><?
>// test echo
>echo toto;
>?>
>
>Là, plus rien ne s'affiche à l'écran. Est-ce normal?


Pourquoi ne pas trouver un des tutoriaux dans Internet pour avoir une
bonne base ?


Denis

denisb

unread,
May 2, 2013, 2:34:19 PM5/2/13
to
Le 02/05/13 19:58, Raphael a écrit :
> <?php
> echo toto;
> ?>

echo "toto";

toto n'étant ni une variable ($toto) ni une constante
il faut encadrer la valeur par des quotes (simples ou doubles).


> <?
> echo toto;
> ?>

sans doute les short tags (<?) ne sont pas acceptés ;
rien n'est donc parsé.


> <?
> // test echo
> echo toto;
> ?>

idem.


--
@@@@@
E -00 comme on est very beaux dis !
’ `) /
|\_ ==”

Raphael

unread,
May 2, 2013, 2:51:15 PM5/2/13
to
Le 02/05/13 20:32, Denis Beauregard a écrit :
Merci pour cette réponse, je sais que je manque un peu de rigueur mais
si je demande dans un forum c'est que je ne trouve pas ce que je cherche
dans un tutoriel. Et je répète, l'erreur vient quand j'écris php après
"<?", quelque soit le code. j'ai même fait des copier-coller de code que
j'ai trouvé sur internet et à chaque fois que dans le code il y a
"<?php", j'ai une erreur de syntaxe. Pouvez-vous m'aider à comprendre
pourquoi???

Raphael

unread,
May 2, 2013, 2:57:33 PM5/2/13
to
Le 02/05/13 20:34, denisb a écrit :
> Le 02/05/13 19:58, Raphael a écrit :
>> <?php
>> echo toto;
>> ?>
>
> echo "toto";
>
> toto n'étant ni une variable ($toto) ni une constante
> il faut encadrer la valeur par des quotes (simples ou doubles).

Oui oui, évidemment, mais même quand j'écris cela j'ai une erreur :


Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in
/homez.713/neworker/www/test.php on line 1

>
>

Denis Beauregard

unread,
May 2, 2013, 4:55:41 PM5/2/13
to
Le Thu, 02 May 2013 20:57:33 +0200, Raphael <rap...@nospam.fr>
�crivait dans fr.comp.lang.php:

>Le 02/05/13 20:34, denisb a �crit :
>> Le 02/05/13 19:58, Raphael a �crit :
>>> <?php
>>> echo toto;
>>> ?>
>>
>> echo "toto";
>>
>> toto n'�tant ni une variable ($toto) ni une constante
>> il faut encadrer la valeur par des quotes (simples ou doubles).
>
>Oui oui, �videmment, mais m�me quand j'�cris cela j'ai une erreur :
>
>
>Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in
>/homez.713/neworker/www/test.php on line 1

Avec ceci ?

<?php echo "toto"; ?>

Pas d'erreur chez moi pourtant.


Denis

Raphael

unread,
May 2, 2013, 5:17:39 PM5/2/13
to Denis Beauregard
Le 02/05/13 22:55, Denis Beauregard a �crit :
> <?php echo "toto"; ?>
>
Merci �norm�ment, je viens de comprendre pourquoi. Le retour � la ligne
n'introduit pas d'espace entre "php" et la commande suivante qui est
"echo" dans dreamweaver.

Quand j'�cris :

<?php
echo "toto";
?>

Le navigateur voit ceci :

<?phpecho "toto";?>

Merci encore.

Pierre Maurette

unread,
May 5, 2013, 2:55:50 PM5/5/13
to
Raphael :
> Le 02/05/13 22:55, Denis Beauregard a ᅵcrit :
>> <?php echo "toto"; ?>
>>
> Merci ᅵnormᅵment, je viens de comprendre pourquoi. Le retour ᅵ la ligne
> n'introduit pas d'espace entre "php" et la commande suivante qui est "echo"
> dans dreamweaver.
>
> Quand j'ᅵcris :
>
> <?php
> echo "toto";
> ?>
>
> Le navigateur voit ceci :
>
> <?phpecho "toto";?>

Vous avez peut-ᅵtre, sans doute, un problᅵme avec vos caractᅵres de fin
de ligne. Je n'ai pas essayᅵ de le reproduire en PHP, mais un script
Python dᅵbutant par:
#! /usr/bin/env python
# -*- coding: utf-8 -*-
se lance automatiquement dans un de mes Linux. Sauf si les fins de
lignes sont en CRLF (0x0D 0x0A), /ᅵ la Windows/. Il me semble que
j'avais constatᅵ que dans ce cas, c'ᅵtait l'exᅵcutable python# qui
n'ᅵtait pas trouvᅵ, et pour cause. En rᅵalitᅵ, la seconde ligne importe
peu, en particulier le fait que /ᅵa parle d'encodage/ n'a rien ᅵ voir.

J'utilise peu Dreamweaver. Vous pouvez afficher les caractᅵres de fin
de ligne. Vous pouvez paramᅵtrer le type de caractᅵre de fin de ligne
par dᅵfaut. Je suppose que sur des fichiers existants, il ne les
modifie pas. Vous pouvez paramᅵter vos transferts FTP en mode binaire
ou texte. Normalement, on devrait attendre qu'un transfert en mode
texte d'un fichier CRLF (Windows) l'ᅵcrive en LF (Unix) sur un serveur
Linux, mais je n'en suis pas certain.

Pour ce genre de recherche et ᅵventuellement de traitement, ᅵ partir de
Windows, le mieux serait peut-ᅵtre d'utiliser (par exemple) Notepad++
et son plugin intᅵgrᅵ NppFTP. Lᅵ, vous pouvez ᅵditer directement sur le
serveur, voir vos fins de lignes, les modifier en un clic, etc.

J'utilise parfois Notepad++ de cette faᅵon, pour des rustines, ou pour
mettre l'existant en conformitᅵ, mais ma faᅵon normale de travailler
c'est, en gᅵnᅵral dans un Eclipse, positionner par dᅵfaut mes fichiers
en Unix et UTF-8, et les transferts en binaire. Je peux d'ailleurs tout
faire ᅵ partir d'Eclipse, y compris le travail directement sur les
serveurs. Voyez si ce qui est possible avec Dreamweaver, ᅵ priori tout
sauf la modification aprᅵs coup des fins de lignes, enfin, je ne sais
pas le faire.

--
Pierre Maurette


Olivier Miakinen

unread,
May 5, 2013, 4:56:59 PM5/5/13
to
Le 05/05/2013 20:55, Pierre Maurette r�pondait � Raphael :
>>
>> Quand j'�cris :
>>
>> <?php
>> echo "toto";
>> ?>
>>
>> Le navigateur voit ceci :
>>
>> <?phpecho "toto";?>
>
> Vous avez peut-�tre, sans doute, un probl�me avec vos caract�res de fin
> de ligne.

Je suis persuad� que c'est bien �a le probl�me. Le User-Agent du
nouvelleur de Rapha�l indique qu'il est sur Macintosh, or la fin de
ligne traditionnelle sur Mac �tait (est ?) CR seul au lieu de LF
seul (Unix) ou de CRLF (Windows et standards Internet).

> J'utilise peu Dreamweaver. Vous pouvez afficher les caract�res de fin
> de ligne. Vous pouvez param�trer le type de caract�re de fin de ligne
> par d�faut.

Probablement, et �a a des chances de r�soudre le probl�me.

Cordialement,
--
Olivier Miakinen

Raphael

unread,
May 6, 2013, 8:29:09 PM5/6/13
to
Le 05/05/13 22:56, Olivier Miakinen a �crit :
Merci � toi Pierre, ainsi qu'� Olivier. Je pense que le probl�me vient
effectivement de l�. Je suis bien sous Mac et j'ai remarqu� que ce
probl�me est survenu depuis que je suis pass� � la version CS6 de Adobe.
Je viens de faire une modification d'un site que j'avais r�alis� il y a
un an et en faisant la synchro avec ma copie local depuis Dreamweaver,
plus aucun script ne fonctionnait. J'ai refais une copie avec Transmit
(c'est un client FTP) et tout est redevenu normal. Je n'ai pas le temps
de chercher dans les r�glages pour le moment, mais d�s que j'aurai pu
v�rifier je posterai une r�ponse pour d'autres � qui le probl�me arriverait.

Raphael

unread,
May 6, 2013, 10:01:44 PM5/6/13
to
Le 07/05/13 02:29, Raphael a �crit :
Je viens de v�rifier et effectivement le probl�me venait d'un r�glage de
pr�f�rence dans Dreamweaver qui faisait des saut de ligne "� la mode"
Macintosh. C'est une option que l'on peut modifier. Voici le lien vers
le site de adobe qui donne des explications :

http://help.adobe.com/fr_FR/dreamweaver/cs/using/WSc78c5058ca073340dcda9110b1f693f21-7be0a.html#WSc78c5058ca073340dcda9110b1f693f21-7bdda

Qui dit ceci :

<<Type de saut de ligne Permet d'indiquer le type de serveur distant
(Windows, Macintosh ou UNIX) qui h�bergera votre site. Le choix du type
de caract�res de saut de ligne appropri� (CR, CR/LF, LF) garantit que
votre code source HTML s'affiche correctement lorsqu'il est affich� �
partir du serveur distant. Ce param�tre est �galement utile lorsque vous
travaillez avec un �diteur de texte externe qui ne reconna�t que
certains types de retours de chariot. Par exemple, utilisez CR/LF
(Windows), si votre �diteur de texte est le Bloc-notes de Windows, et CR
(Macintosh) s'il s'agit de SimpleText.>>
0 new messages