Erreur PHP <FONT>

Résolu/Fermé
FatalDead - 25 avril 2015 à 06:40
 Utilisateur anonyme - 25 avril 2015 à 12:15
Bonjour,

Je viens vous demander de l'aide car j'ai un un soucis pour rendre les noms d'utilisateurs en couleur sur mon site web.

Dans le fichier user on nous dit d'entrer un code (que je citerais plus bas) et quand je le fait mon site donne :
"Parse error: syntax error, unexpected 'color' (T_STRING) in /home/soado/public_html/application/modules/User/Model/User.php on line 41"

La ligne en cause est :

return `<font color="#FF0198?>' .$this->displayname. `</font>';


D'après notpad la ligne devient verte (comme les comentaires dans les fichiers) à partir du
<font color="
mais après multiple modification pas moyen de faire fonctionner ce code ....

Le code complet à copier coler:

public function getTitle()
{
// This will cause various problems
//$viewer = Engine_Api::_()->user()->getViewer();
//if( $viewer->getIdentity() && $viewer->getIdentity() == $this->getIdentity() )
//{
// $translate = Zend_Registry::get(`Zend_Translate');
// return $translate->translate(`You');
//}
$fields = $this->fields()->getFieldsValuesByAlias();
$gender = $fields[`gender'];

if( isset($this->displayname) && " !== trim($this->displayname) ) {
if(isset($gender) && $gender == `3') {
return `<font color="#FF0198?>' .$this->displayname. `</font>';
} else {
return $this->displayname ;
}
} else if( isset($this->username) && " !== trim($this->username) ) {
return $this->username;
} else if( isset($this->email) && " !== trim($this->email) ) {
$tmp = explode(`@', $this->email);
return $tmp[0];
} else {
return "<i>" . Zend_Registry::get(`Zend_Translate')->_("Deleted Member") . "</i>";
}
}


Aidez moi c'est assez urgent ... Merci d'avance :)

2 réponses

Utilisateur anonyme
25 avril 2015 à 08:20
Bonjour

Il y a plusieurs truc bizarres dans ton code :
Chaque fois que tu as une paire d'apostrophes, celle de gauche est remplacée par un accent grave, regarde bien juste avant le <font dans le code que tu nous as donné ci-dessus.
if( isset($this->displayname) && " !== trim($this->displayname) ) { :
Que fait ce " après le && ? Et on retrouve cette bizarrerie à plusieurs reprises dans ton code
<font color="#FF0198?> : pourquoi ? au lieu de " après la couleur ? Et si tu es en html5, sache que la balise font n'est pas supportée
1
Salut merci pour tes remarques, le "?" est juste un bug il y a bien un " à la fin.

Concernant le html5 je ne savais pas, mais comment puis-je remplacer ça pour que l'effet soit le même du coup ? :S (Je débute en codage).

Merci encore
0
Utilisateur anonyme
25 avril 2015 à 09:21
le "?" est juste un bug il y a bien un " à la fin
Qu'est-ce que ça veut dire "c'est juste un bug" ? Le site a transformé ce que tu avais écrit ? Si c'est ça, c'est grave. Si c'est toi qui t'es trompé à recopier, ce n'est pas un bug mais une faute de frappe.
Je viens de comprendre le " après le &&. En fait, c'est '' (deux apostrophes et non pas un double quote) qu'il fallait. Et cette ligne est donc une manière très compliquée d'écrire
if( ! empty($this->displayname) )

au lieu de
if( isset($this->displayname) && '' !== trim($this->displayname) )


Pour remplacer font, il faut utiliser le CSS. Il y a de nombreux tutoriels sur internet.
1
Oui j'ai fait quelques recherches, j'ai finalement utiliser le <span style=...> et oui enfaite quand j'ai copié collé il m'a changé tous les ' et les " c'est pour ça que mon fichier était bugué. Je prend en compte ton conseil. En tout cas merci tu m'a vraiment mis sur la voie de la résolution ;) +1
0
Utilisateur anonyme > FatalDead
25 avril 2015 à 12:15
De rien :-)
0