Problème avec une classe

Résolu
massacr Messages postés 233 Date d'inscription vendredi 2 juillet 2004 Statut Membre Dernière intervention 4 janvier 2007 - 25 juin 2005 à 19:32
dalou83 Messages postés 4 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 25 avril 2008 - 25 avril 2008 à 16:13
Cela fait 3 heures que j'essaye de comprendre où est l'erreur.

J'ai fait une classe :

<HR>
class creer_RSS {
var $fichier_xml;
var $title_channel;
var $url_channel;
var $description_channel;
var $language_channel;
var $copyright_channel;
var $lastBuildDate_channel;
$this->fichier_xml = '<?xml version="1.0"?>';
$this->fichier_xml. = '<rss version="2.0" xmlns:blogChannel="http://backend.userland.com/blogChannelModule">';
$this->fichier_xml. = '<channel>';
$this->fichier_xml. = '<title>'.$this->title_channel.'</title>';
$this->fichier_xml. = '<link>'.$this->url_channel.'</link>';
$this->fichier_xml. = '<description>'.$this->description_channel.'</description>';
$this->fichier_xml. = '<language>'.$this->language_channel.'</language>';
$this->fichier_xml. = '<copyright>'.$this->copyright_channel.'</copyright>';
$this->fichier_xml. = '<lastBuildDate>'.$this->lastBuildDate_channel.'</lastBuildDate>';
function rajouter_item ($title,$link,$description,$comments,$pub_date) {
$this->fichier_xml. = '';
$this->fichier_xml. = '<title>'.$title.'</title>';
$this->fichier_xml. = '<link>'.$link.'</link>';
$this->fichier_xml. = '<description>'.$description.'</description>';
$this->fichier_xml. = '<comments>'.$comments.'</comments>';
$this->fichier_xml. = ''.$pub_date.'

';
$this->fichier_xml. = '';
}
$this->fichier_xml. = '</channel>';
$this->fichier_xml. = '</rss>';
$this->ecriture_rss = fopen('backend.rss','w+');
fwrite($this->ecriture_rss,$fichier_xml);
fclose($this->ecriture_rss);
}

<HR>
Qui me donne toujours cette erreur :

<HR>
Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in c:\documents and settings\*****\bureau\projets\******\creer_rss.html on line
10

<HR>

Quelqu'un peut t-il essayer de me dépanner ? Là, je n'ai vraiment plus d'idée. En plus, je sais que l'erreur est toute bète. C'est rageant.

Voilà, à l'aiiiiiiiiiiiiiiiide !!!

Et merci d'avance

11 réponses

FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
25 juin 2005 à 22:46
Trop simple :p

Dans une classe, il te faut une methode au minimum (le constructeur en PHP5).

donc en faite :



class creer_RSS {
var $fichier_xml;
var $title_channel;
var $url_channel;
var $description_channel;
var $language_channel;
var $copyright_channel;
var $lastBuildDate_channel;

function creer_RSS() { // Qui est le constructeur en PHP4. En PHP5, tu dois utiliser __construct()
$this->fichier_xml = '<?xml version="1.0"?>';
$this->fichier_xml. = '<rss version="2.0" xmlns:blogChannel="http://backend.userland.com/blogChannelModule">';
$this->fichier_xml. = '<channel>';
$this->fichier_xml. = '<title>'.$this->title_channel.'</title>';
$this->fichier_xml. = '<link>'.$this->url_channel.'</link>';
$this->fichier_xml. = '<description>'.$this->description_channel.'</description>';
$this->fichier_xml. = '<language>'.$this->language_channel.'</language>';
$this->fichier_xml. = '<copyright>'.$this->copyright_channel.'</copyright>';
$this->fichier_xml. = '<lastBuildDate>'.$this->lastBuildDate_channel.'</lastBuildDate>';
}

function rajouter_item ($title,$link,$description,$comments,$pub_date) {
$this->fichier_xml. = '';
$this->fichier_xml. = '<title>'.$title.'</title>';
$this->fichier_xml. = '<link>'.$link.'</link>';
$this->fichier_xml. = '<description>'.$description.'</description>';
$this->fichier_xml. = '<comments>'.$comments.'</comments>';
$this->fichier_xml. = ''.$pub_date.'

';
$this->fichier_xml. = '';
}
$this->fichier_xml. = '</channel>';
$this->fichier_xml. = '</rss>';
$this->ecriture_rss = fopen('backend.rss','w+');
fwrite($this->ecriture_rss,$fichier_xml);
fclose($this->ecriture_rss);
}
3
cs_grandvizir Messages postés 1106 Date d'inscription samedi 8 novembre 2003 Statut Membre Dernière intervention 3 septembre 2006 22
25 juin 2005 à 19:43
Je viens de regarder ton code avec un colorateur TSynEdit [download] qui est un de mes programmes. Résultat : rien de probant.

Au lieu de :
$this->fichier_xml. = 'qqch';
fait (remarque les espaces)
$this->fichier_xml .= 'qqch';

Et enfin:
=495433 http://www.phpcs.com/forum.v2.aspx?ID=495433

Je ne vois que ça...

===========
Validez les réponses si ok...

ViewVite : HTML
0
massacr Messages postés 233 Date d'inscription vendredi 2 juillet 2004 Statut Membre Dernière intervention 4 janvier 2007
25 juin 2005 à 20:41
Salut

J'ai aussi un colorateur syntaxique, mais il ne me montre rien qui ne va pas. Les espaces ne changent rien, et la dernière solution ne peut pas etre bonne étant donné que le fichier XML n'est pas créé.

D'autres solutions ?
0
massacr Messages postés 233 Date d'inscription vendredi 2 juillet 2004 Statut Membre Dernière intervention 4 janvier 2007
26 juin 2005 à 11:26
Ca maaaaaaaaarche !!

Trop simple, heu, fallait quand meme le savoir !!

Merci.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
26 juin 2005 à 11:32
Bah, faut lire avant de creer des classes ;-)

Declaration de la classe

declaration des variables membres

constructeur

methodes

destructeur



les $this ne peuvent s'utiliser que dans les methodes (le constructeur et le destructeur en etant).



Pour ajouter a ce qu'a dit FHx, en php5, on doit aussi declarer
"l'etat" des methodes et variables membres (je dis etat parce que la le
nom m'echappe) : public, protected ou private.
0
massacr Messages postés 233 Date d'inscription vendredi 2 juillet 2004 Statut Membre Dernière intervention 4 janvier 2007
26 juin 2005 à 12:30
Je vais lire php.net pour enregistrer tout ca.

Sinon, j'ai un autre problème, mais pas pour les classes. C'est à cause du XML. Il n'accepte pas le caractère & dans les URL. Mais je DOIS m'en servir. Comment faire ?

Merci.
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
26 juin 2005 à 16:24
xml, url ..?

Bref, tu devrais encoder ce que tu passes.

url_encode () (ou urlencode je me souviens plus).

base64encode si tu passes un gros truc (tableau, image, objet etc).
0
massacr Messages postés 233 Date d'inscription vendredi 2 juillet 2004 Statut Membre Dernière intervention 4 janvier 2007
26 juin 2005 à 17:53
urlencode() ne marche pas. J'ai trouvé une solution en mettant moins de varaibles, mais ce n'est qu'une astuces, et pas une solution. En fait mon problème va plus loin, les accents non plus ne passent pas. Je ne comprend pas ce qui se passe.
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
27 juin 2005 à 09:28
Comment ca urlencode ne marche pas lol ?

Attends, c'est quoi le probleme exactement ? Ca ne vient pas de l'url.
Que veux tu dire par "le xml n'accepte pas le caractere &" ?

Montre un exemple du probleme que tu as ?



Pour les accents : utf8_encode () et utf8_decode ()
0
massacr Messages postés 233 Date d'inscription vendredi 2 juillet 2004 Statut Membre Dernière intervention 4 janvier 2007
27 juin 2005 à 16:44
Bon.

J'ai l'URL : http://index.php?page=8&article=9
Je met ca dans un fichier XML avec un fopen. Quand j'ouvre le fichier avec un lecteur de RSS, il n'affiche rien.
Quand j'essaye avec cette URL : http://index.php?page=8article=9, ca marche.
Donc, je voudrais convertir ce caractère.

Pour les accents, si je les mets dans le XML avec utf8_encode (), je ne veux pas mettre de PHP dans le fichier XML. Où puis-je mettre utf8_decode ()?
0
dalou83 Messages postés 4 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 25 avril 2008
25 avril 2008 à 16:13
salut,
j'ai besoin d'aide dans mon projet :
développement d'un outil pour lire un flux RSS avec filtrage et configuration de contenu
je dois développer avec java en utilisant Eclipse.
Mon problème : j'ai pas su comment élaborer les classes que je dois utiliser?
généralement Les flux RSS sont développés avec PHP ou XML.
merci
0
Rejoignez-nous