Aller au contenu

[RÉSOLU] unexpected T_CONSTANT_ENCAPSED_STRING ?


Invité Compte_supprime_75576

Messages recommandés

Invité Compte_supprime_75576

Je ne comprend pas mon serveur affiche une erreur :

Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING in /home/httpd/vhosts/psychoblog.org/httpdocs/sql.php on line 2

adresse :

http://www.psychoblog.org/sql.php

Pourtant dans le script j'ai pas grand chose :

<?php

$host = 'sql.psychoblog.org';

$user = 'pseudo';

$pass = '';

$db = 'psychoblog';

// connection à la DB

$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );

mysql_select_db($db) or die ('Erreur :'.mysql_error());

?>

Je ne vois pas mon erreur surtout à la ligne 2.

Le plus bizarre c'est que sur mon serveur d'évalution j'ai rien du tout une page blanche.

Apparemment sur mon héberger je suis en php 4.3.11

En local je suis en version 5.2.1.

Alors je sais pas quoi faire... désoler je débute.

Lien vers le commentaire
Partager sur d’autres sites

Invité Compte_supprime_75576
<?php
$host = "sql.psychoblog.org";
$user = "pseudo";
$pass = "";
$db = "psychoblog";

// connection à la DB
$link = mysql_connect ($host,$user,$pass) or die ("Erreur : ".mysql_error() );
mysql_select_db($db) or die ("Erreur :".mysql_error());
?>

Tu as corrigé quelque chose ? Désole je ne vois pas ce qui as changé ?

A moins que tu es juste voulu mettre mon code, en affichage code ?

Merci beaucoup.

Lien vers le commentaire
Partager sur d’autres sites

Oui, j'ai remplacé les simple quote par des doubles quotes il faut savoir que dans pas mal de langage le style de quote type le contenu.

Par exemple '4' ou 4 sera un entier, alors que "4" sera une chaine de caractere,

apres ca depend des langage,

il me semble qu'avec php4 tu pouvais mettre de la chaine de caracteres en simple quote ( 'toto' ),

chose qui est peut etre interdite en php5. Je fais que des hypothese de cas d'ecole, mais je suppute que ca marche mieux comme ca non ?

Lien vers le commentaire
Partager sur d’autres sites

Invité Compte_supprime_75576
Oui, j'ai remplacé les simple quote par des doubles quotes il faut savoir que dans pas mal de langage le style de quote type le contenu.

Par exemple '4' ou 4 sera un entier, alors que "4" sera une chaine de caractere,

apres ca depend des langage,

il me semble qu'avec php4 tu pouvais mettre de la chaine de caracteres en simple quote ( 'toto' ),

chose qui est peut etre interdite en php5. Je fais que des hypothese de cas d'ecole, mais je suppute que ca marche mieux comme ca non ?

Je viens de tester, et en fait non toujours la même erreur. Ce bizarre.

C'est pas logique, mon code est bon ?

Es-ce que ça serai parce que serveur n'est pas bon ?

Car en fait j'essaye de contacter netim, car j'arrive pas a trouver le serveur sql de mon hébergement (psychoblog.org). C'est bizzare.

Apparement non car j'ai tester avec un autre compte free et ça fait la même chose. je comprend pas.

<?php
$host = "sql.free.fr";
$user = "yannick.val";
$pass = "code";
$db = "yannick.val";

// connection à la DB
$link = mysql_connect ($host,$user,$pass) or die ("Erreur : ".mysql_error() );
mysql_select_db($db) or die ("Erreur :".mysql_error());
?>

Je comprend plus rien...

PS: PHP Version 4.3.11 (sur le serveur : http://www.psychoblog.org/test.php)

Qqn à une piste ?

Lien vers le commentaire
Partager sur d’autres sites

ca me parait zarbi essaye de commenter la connexion mysql juste en gardant l'assignation de variable pour voir comme ca :

<?php

$host = "sql.free.fr";

$user = "yannick.val";

$pass = "code";

$db = "yannick.val";

// connection à la DB

//$link = mysql_connect ($host,$user,$pass) or die ("Erreur : ".mysql_error() );

//mysql_select_db($db) or die ("Erreur :".mysql_error());

?>

Si ta toujours la meme erreur ?

Lien vers le commentaire
Partager sur d’autres sites

Invité Compte_supprime_75576
ca me parait zarbi essaye de commenter la connexion mysql juste en gardant l'assignation de variable pour voir comme ca :
<?php

$host = "sql.free.fr";

$user = "yannick.val";

$pass = "code";

$db = "yannick.val";

// connection à la DB

//$link = mysql_connect ($host,$user,$pass) or die ("Erreur : ".mysql_error() );

//mysql_select_db($db) or die ("Erreur :".mysql_error());

?>

Si ta toujours la meme erreur ?

oui toujours, ce qui étrange ce que je viens d'installer un script a installation automatique avec les même paramètres (mots de passe et bdd) et ça marche bien.

Pour ce script j'ai des erreurs.

Pourtant ce juste un fichier texte, avec une extension php... et avec le code si dessus.

Ps: je part au travail je suis de retour ce soir vers 23h00, merci encore.

Lien vers le commentaire
Partager sur d’autres sites

Je suis tout à fait pour la méthode de yannick.val car la gestion est facilitée : on a pas besoin de chercher dans le code.

Et si jamais ses valeurs étaient utilisées plusieurs fois, il faudrait modifier toutes les occurences. :francais:

Surtout que bon assigner une variable en php ca marche quoi :)

Sinon le parse error, serait peut etre du a un caractere invisible dans ton fichier texte qui le fait tripper, ca arrive sous certain editeur windows. Enfin car la je suis a court d'idée pour l'erreur de syntaxe. Alors que bon ca a l'air correct

Lien vers le commentaire
Partager sur d’autres sites

Invité Compte_supprime_75576
Je suis tout à fait pour la méthode de yannick.val car la gestion est facilitée : on a pas besoin de chercher dans le code.

Et si jamais ses valeurs étaient utilisées plusieurs fois, il faudrait modifier toutes les occurences. :francais:

Surtout que bon assigner une variable en php ca marche quoi :)

Sinon le parse error, serait peut etre du a un caractere invisible dans ton fichier texte qui le fait tripper, ca arrive sous certain editeur windows. Enfin car la je suis a court d'idée pour l'erreur de syntaxe. Alors que bon ca a l'air correct

Merci de vos réponses.

j'ai recréer un nouveau fichier et recopier (et non copier-coller) le texte, et en fait toujours la même erreur.

Ce qui est bizarre c'est que j'ai déplacer les paramètres :

<?php


// connection à la DB
//$link = mysql_connect ($host,$user,$pass) or die ("Erreur : ".mysql_error() );
//mysql_select_db($db) or die ("Erreur :".mysql_error());

//$user = "yannick";
$pass = "<code>";
$db = "membres";
$host = "sql.psychoblog.org";

?>

En fait l'erreur ce décale à chaque fois que je supprime une ligne. On dirai que c'est les informations du types : $mots = "info";

Bon j'ai fait un test :

J'ai recréer un fichier vide : si je mets que :

<?php
$mots = 'test';
?>

ça marche

avec

<?php
$mots = 'test';
$host = 'sql.psychoblog.org'
?>

pareil ça marche

avec

<?php
$mots = 'test';
$host = 'sql.psychoblog.org';
$user = 'yannick';
?>

ça marche

avec

<?php
$mots = 'test';
$host = 'sql.psychoblog.org';
$user = 'yannick';
$pass = 'code';
?>

ça marche

avec

<?php
$mots = 'test';
$host = 'sql.psychoblog.org';
$user = 'yannick';
$pass = 'code';
$db = 'membres';
?>

Ca m'a dit une erreur ligne 4, j'ai efface jusqu'à la ligne 4 et retaper tout, et ça marche.

comprend plus rien.

Enfin merci beaucoup pour vos conseils, en tout cas ça restera un mystère pour moi ce pas logique.

Sinon le parse error, serait peut etre du a un caractere invisible dans ton fichier texte qui le fait tripper, ca arrive sous certain editeur windows.

Je suis sur un mac et ça l'a fait depuis textedit, dreamweaver mx, et TextWrangler.

Enfin bizarre tout ça.

Merci beaucoup à tous.

Lien vers le commentaire
Partager sur d’autres sites

avec

<?php
$mots = 'test';
$host = 'sql.psychoblog.org';
$user = 'yannick';
$pass = 'code';
$db = 'membres';
?>

Ca m'a dit une erreur ligne 4, j'ai efface jusqu'à la ligne 4 et retaper tout, et ça marche.

Si tu change $db par un autre nom de var par exemple $db66 pour avoir :

<?php
$mots = 'test';
$host = 'sql.psychoblog.org';
$user = 'yannick';
$pass = 'code';
$db66 = 'membres';
?>

Ca te met toujours l'erreur ? ca se trouve en php5 les var ne sont plus polymorphe et une fois que tu a assigné un type a une var tu ne peut plus changer de type, donc si ca se te trouve la var $db est initialisé ailleurs avec un autre type.

PS: EDITE TON POST PLUS HAUT TU A TON MDP EN CLAIR LOL <-- plus maintenant :) [modo]

Lien vers le commentaire
Partager sur d’autres sites

Invité Compte_supprime_75576
avec

<?php
$mots = 'test';
$host = 'sql.psychoblog.org';
$user = 'yannick';
$pass = 'code';
$db = 'membres';
?>

Ca m'a dit une erreur ligne 4, j'ai efface jusqu'à la ligne 4 et retaper tout, et ça marche.

Si tu change $db par un autre nom de var par exemple $db66 pour avoir :

<?php
$mots = 'test';
$host = 'sql.psychoblog.org';
$user = 'yannick';
$pass = 'code';
$db66 = 'membres';
?>

Ca te met toujours l'erreur ? ca se trouve en php5 les var ne sont plus polymorphe et une fois que tu a assigné un type a une var tu ne peut plus changer de type, donc si ca se te trouve la var $db est initialisé ailleurs avec un autre type.

PS: EDITE TON POST PLUS HAUT TU A TON MDP EN CLAIR LOL <-- plus maintenant :) [modo]

Non plus d'erreur, sauf que je suis sous PHP 4, et le truc ce que c'est ma première page php, sur le serveur, et juste avec les lignes indiqués.

Merci beaucoup, je pense plus a un fichier corrompu. enfin je ne saurais jamais.

Lien vers le commentaire
Partager sur d’autres sites

Oui, j'ai remplacé les simple quote par des doubles quotes il faut savoir que dans pas mal de langage le style de quote type le contenu.

Par exemple '4' ou 4 sera un entier, alors que "4" sera une chaine de caractere,

apres ca depend des langage,

il me semble qu'avec php4 tu pouvais mettre de la chaine de caracteres en simple quote ( 'toto' ),

chose qui est peut etre interdite en php5. Je fais que des hypothese de cas d'ecole, mais je suppute que ca marche mieux comme ca non ?

En PHP, la différence entre le simple quote et le double quote se situe exclusivement au niveau du traitement effectué et non du typage (ce seront systématiquement des strings).

Quelques exemples :

<?php

$foo = 'foo';
echo "$foo bar";	// Affiche: foo bar
echo "${foo}bar";	// Affiche: foobar
echo $foo."bar";	// Affiche: foobar
echo '$foo bar';	// Affiche: $foo bar
echo '${foo}bar';	// Affiche: ${foo}bar
echo $foo.'bar';	// Affiche: foobar

?>

En somme, les strings délimités par des simple quotes seront pris "littéralement" tandis que ceux délimitées par des double quotes seront "interprétées" (on parle "d'interpolation" pour être exact). Dans un soucis d'optimisation (et pour éviter les gags), il convient donc d'utiliser les simple quotes de façon préférentielle et les double quotes uniquement quand c'est nécessaire.

Voilà pour la minute culturelle.

Et pour répondre à l'OP, tu as très certainement un charactère quelconque qui traine quelque part dans ton fichier.

Le mieux c'est de recréer ton fichier de zéro avec un éditeur différent.

Lien vers le commentaire
Partager sur d’autres sites

Invité Compte_supprime_75576
Oui, j'ai remplacé les simple quote par des doubles quotes il faut savoir que dans pas mal de langage le style de quote type le contenu.

Par exemple '4' ou 4 sera un entier, alors que "4" sera une chaine de caractere,

apres ca depend des langage,

il me semble qu'avec php4 tu pouvais mettre de la chaine de caracteres en simple quote ( 'toto' ),

chose qui est peut etre interdite en php5. Je fais que des hypothese de cas d'ecole, mais je suppute que ca marche mieux comme ca non ?

En PHP, la différence entre le simple quote et le double quote se situe exclusivement au niveau du traitement effectué et non du typage (ce seront systématiquement des strings).

Quelques exemples :

<?php

$foo = 'foo';
echo "$foo bar";	// Affiche: foo bar
echo "${foo}bar";	// Affiche: foobar
echo $foo."bar";	// Affiche: foobar
echo '$foo bar';	// Affiche: $foo bar
echo '${foo}bar';	// Affiche: ${foo}bar
echo $foo.'bar';	// Affiche: foobar

?>

En somme, les strings délimités par des simple quotes seront pris "littéralement" tandis que ceux délimitées par des double quotes seront "interprétées" (on parle "d'interpolation" pour être exact). Dans un soucis d'optimisation (et pour éviter les gags), il convient donc d'utiliser les simple quotes de façon préférentielle et les double quotes uniquement quand c'est nécessaire.

Voilà pour la minute culturelle.

Et pour répondre à l'OP, tu as très certainement un charactère quelconque qui traine quelque part dans ton fichier.

Le mieux c'est de recréer ton fichier de zéro avec un éditeur différent.

Désolé pour le temps de réponse, en fait j'ai tout réécris et plus de problème. et surtout merci pour ta minute culturelle ;-) C'est toujours bon d'avoir des conseils surtout quand on débute.

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...