Torna indietro   AlterVista > L'angolo del webmaster > PHP, MySql e Apache (.htaccess)

Rispondi
 
LinkBack Strumenti discussione Modalità visualizzazione
  #1 (permalink)  
Vecchio 02-01-2008, 10.57.42
L'avatar di funcool
Utente storico
 
Data registrazione: 05-02-2004
Residenza: Qui... Non lì, qui!
Messaggi: 15,440
Predefinito Sfruttare il parser di MediaWiki

Mi servirebbe un parser per trasformare i testi di una Wiki e stamparli a video. Ho provato con questa classe ma non è perfetta (non trasforma tutto ma solo alcune cose principali). Ho provato a sfruttare il parser di MediaWiki ma non riesco a capire bene come funziona (non riesco a stampare nulla a video). Qualcuno ha qualche idea a proposito?
__________________
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
Rispondi citando

Crea Sito Web Gratis

Espandibile all'infinito. Joomla e altri applicativi già pronti. E guadagna con la pubblicità!

Crea Blog Gratis

WordPress con temi professionali. Nessun limite di spazio o plugin. Guadagni con i banner.

  #2 (permalink)  
Vecchio 02-01-2008, 11.21.46
Neofita
 
Data registrazione: 24-12-2007
Messaggi: 27
Predefinito

http://www.p2pforum.it/forum/showthread.php?t=154246

vedi un po'
__________________
Rispondi citando
  #3 (permalink)  
Vecchio 02-01-2008, 11.26.55
L'avatar di funcool
Utente storico
 
Data registrazione: 05-02-2004
Residenza: Qui... Non lì, qui!
Messaggi: 15,440
Predefinito

Io vedo solo una guida a MediaWiki, mi sono perso qualcosa?
__________________
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
Rispondi citando
  #4 (permalink)  
Vecchio 02-01-2008, 11.28.15
Neofita
 
Data registrazione: 24-12-2007
Messaggi: 27
Predefinito

Impara ad usarlo ce la faccio io ..non vedo il motivo per il quale non dovresti farcela tu!...
Quali problemi hai???Dive incontri difficoltà???


(io lo sto facendo vediamo un po' tu!)
__________________
Rispondi citando
  #5 (permalink)  
Vecchio 02-01-2008, 13.20.58
L'avatar di binarysun
Utente storico
 
Data registrazione: 02-07-2004
Messaggi: 2,014
Invia un messaggio via MSN a binarysun
Predefinito

Non sta chiedendo come funziona il wiki, ma come usare le classi.

La documentazione del codice è questa:
http://www.mediawiki.org/wiki/Manual:Parser.php
Sembra chiara, cosa ti serve di preciso?
__________________
"L'intelligenza è una pianta che va curata continuamente.
Dovreste vedere com'è bello, il mio bonsai."
Rat-man®

[Gradient Text]
[Su che server sei?]
->flickr
Rispondi citando
  #6 (permalink)  
Vecchio 03-01-2008, 08.55.25
L'avatar di funcool
Utente storico
 
Data registrazione: 05-02-2004
Residenza: Qui... Non lì, qui!
Messaggi: 15,440
Predefinito

Grazie del link.
Io ho questo codice:
Codice PHP:
<?php
include("Parser.php");
$oggetto=new Parser();
echo 
$oggetto->parse($testodaparsare"Titolo"$oggetto->mOptions);
?>
Ma non mi stampa nulla a video.

P.S.: Per la cronaca: CastiCrew continua a rispondere a caso per farmi credere che mi sta aiutando perché vuole un aiuto in una discussione dove non so come aiutarlo.
__________________
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
Rispondi citando
  #7 (permalink)  
Vecchio 03-01-2008, 10.19.20
L'avatar di stasera
Utente giovane
 
Data registrazione: 29-07-2006
Messaggi: 95
Predefinito

Il problema è cosa restituisce la funzione parse...
Sono andato a vedere in http://svn.wikimedia.org/doc/classParser.html (seguendo un link nella pagina segnalata) e dice che Parser::parse restituisce un oggetto di tipo ParserOutput, e bisognerà usare un metodo su quell'oggetto per avere il testo.

La documentazione non è chiara, ma credo basti "echo $oggetto->parse(...)->getText();".
Rispondi citando
  #8 (permalink)  
Vecchio 03-01-2008, 10.26.20
L'avatar di funcool
Utente storico
 
Data registrazione: 05-02-2004
Residenza: Qui... Non lì, qui!
Messaggi: 15,440
Predefinito

Ho provato così ma non mi dà ancora nulla in output:
Codice PHP:
<?php
include("Parser.php");
include(
"ParserOutput.php");
$oggetto=new Parser();
$nuovo=$oggetto->parse($testodaparsare"Titolo"$oggetto->mOptions);
echo 
$nuovo->getText();
?>
__________________
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
Rispondi citando
  #9 (permalink)  
Vecchio 03-01-2008, 10.27.26
Guest
 
Messaggi: n/a
Predefinito

Citazione:
Originalmente inviato da funcool Visualizza messaggio
Ho provato così ma non mi dà ancora nulla in output:
Codice PHP:
<?php
include("Parser.php");
include(
"ParserOutput.php");
$oggetto=new Parser();
$nuovo=$oggetto->parse($testodaparsare"Titolo"$oggetto->mOptions);
echo 
$nuovo->getText();
?>
Ma c'è qualche form che manda a questa pagina in codice?

Ciao...
Rispondi citando
  #10 (permalink)  
Vecchio 03-01-2008, 10.29.57
L'avatar di funcool
Utente storico
 
Data registrazione: 05-02-2004
Residenza: Qui... Non lì, qui!
Messaggi: 15,440
Predefinito

Perché ci deve essere un form?
Oltre a quello che ho scritto c'è prima solo l'assegnazione alla variabile $testodaparsare che funziona e che consiste nella lettura dal database di un valore.
__________________
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
Rispondi citando
  #11 (permalink)  
Vecchio 03-01-2008, 10.31.54
Guest
 
Messaggi: n/a
Predefinito

Perché come dici tu non c'è l'assegnazione di $testodaparsare.

Ciao...
Rispondi citando
  #12 (permalink)  
Vecchio 03-01-2008, 11.11.04
L'avatar di binarysun
Utente storico
 
Data registrazione: 02-07-2004
Messaggi: 2,014
Invia un messaggio via MSN a binarysun
Predefinito

Prova a passare come testo <nowiki>prova</nowiki> ti restituisce qualcosa?

PS
Titolo non è una stringa ma una classe, forse va in errore la classe, magari hanno una gestione errori interna e quindi non visualizzi errori.
__________________
"L'intelligenza è una pianta che va curata continuamente.
Dovreste vedere com'è bello, il mio bonsai."
Rat-man®

[Gradient Text]
[Su che server sei?]
->flickr
Rispondi citando
  #13 (permalink)  
Vecchio 03-01-2008, 11.19.16
L'avatar di funcool
Utente storico
 
Data registrazione: 05-02-2004
Residenza: Qui... Non lì, qui!
Messaggi: 15,440
Predefinito

Ho provato a mettere come testo "<nowiki>prova</nowiki>" e come titolo "$oggetto->getTitle()", ma non cambia nulla.
__________________
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
Rispondi citando
  #14 (permalink)  
Vecchio 03-01-2008, 11.25.39
Guest
 
Messaggi: n/a
Predefinito

Citazione:
Originalmente inviato da funcool Visualizza messaggio
Ho provato a mettere come testo "<nowiki>prova</nowiki>" e come titolo "$oggetto->getTitle()", ma non cambia nulla.
Quel <nowiki> non va bene neanche con stile quindi non c'entra niente, al massimo <p class="nowiki">.

Ciao...
Rispondi citando
  #15 (permalink)  
Vecchio 03-01-2008, 11.33.43
L'avatar di funcool
Utente storico
 
Data registrazione: 05-02-2004
Residenza: Qui... Non lì, qui!
Messaggi: 15,440
Predefinito

Potresti scrivere solo quando sai di cosa parli e dopo aver contato fino a 10?
__________________
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
Rispondi citando
  #16 (permalink)  
Vecchio 03-01-2008, 11.46.39
L'avatar di binarysun
Utente storico
 
Data registrazione: 02-07-2004
Messaggi: 2,014
Invia un messaggio via MSN a binarysun
Predefinito

Ti converrebbe cercare un'altra parte del codice dove viene creato e utilizzata la classe parser.

Cmq
Dopo aver creato la classe parser molto probabilmente la devi inizializzare con il metodo
firstCallInit
Magari è solo quello il problema.
__________________
"L'intelligenza è una pianta che va curata continuamente.
Dovreste vedere com'è bello, il mio bonsai."
Rat-man®

[Gradient Text]
[Su che server sei?]
->flickr
Rispondi citando
  #17 (permalink)  
Vecchio 03-01-2008, 12.45.15
AlterGuru
 
Data registrazione: 03-12-2003
Messaggi: 1,168
Predefinito

Un var_dump() di $nuovo dopo la chiamata a parse() cosa ti restituisce?

mavericck
Rispondi citando
  #18 (permalink)  
Vecchio 04-01-2008, 09.21.11
L'avatar di funcool
Utente storico
 
Data registrazione: 05-02-2004
Residenza: Qui... Non lì, qui!
Messaggi: 15,440
Predefinito

Citazione:
Originalmente inviato da binarysun Visualizza messaggio
Ti converrebbe cercare un'altra parte del codice dove viene creato e utilizzata la classe parser.
Provo a spulciarmi tutto il codice.

Citazione:
Originalmente inviato da binarysun Visualizza messaggio
Cmq
Dopo aver creato la classe parser molto probabilmente la devi inizializzare con il metodo
firstCallInit
Magari è solo quello il problema.
All'inizio del file "Parser.php" c'è scritto:
Codice:
 * There are four main entry points into the Parser class:
 * parse()
 *   produces HTML output
 * preSaveTransform().
 *   produces altered wiki markup.
 * transformMsg()
 *   performs brace substitution on MediaWiki messages
 * preprocess()
 *   removes HTML comments and expands templates
Quindi penso che si possa inizializzare la classe con una di queste quattro funzioni.

Citazione:
Originalmente inviato da mavericckweb Visualizza messaggio
Un var_dump() di $nuovo dopo la chiamata a parse() cosa ti restituisce?
Non mi stampa nulla a video (ho provato anche con $oggetto).
__________________
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
Rispondi citando
  #19 (permalink)  
Vecchio 04-01-2008, 10.11.45
AlterGuru
 
Data registrazione: 03-12-2003
Messaggi: 1,168
Predefinito

Citazione:
Originalmente inviato da funcool Visualizza messaggio
Non mi stampa nulla a video (ho provato anche con $oggetto).
è molto strano perchè il costruttore della classe inizializza alcuni attributi, e almeno quelli il var_dump() dovrebbe visualizzarli. Hai per caso silenziato warnings e notices?

Altro appunto, quando chiami parse() ho visto che passi "titolo", ma la funzione richiede un oggetto "title" passato per riferimento

mavericck
Rispondi citando
  #20 (permalink)  
Vecchio 04-01-2008, 10.16.20
L'avatar di funcool
Utente storico
 
Data registrazione: 05-02-2004
Residenza: Qui... Non lì, qui!
Messaggi: 15,440
Predefinito

Citazione:
Originalmente inviato da mavericckweb Visualizza messaggio
è molto strano perchè il costruttore della classe inizializza alcuni attributi, e almeno quelli il var_dump() dovrebbe visualizzarli. Hai per caso silenziato warnings e notices?
Ho messo all'inizio:
Codice PHP:
error_reporting(E_ALL); 
Citazione:
Originalmente inviato da mavericckweb Visualizza messaggio
Altro appunto, quando chiami parse() ho visto che passi "titolo", ma la funzione richiede un oggetto "title" passato per riferimento
Ho fatto così.
__________________
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
Rispondi citando
  #21 (permalink)  
Vecchio 04-01-2008, 10.38.45
AlterGuru
 
Data registrazione: 03-12-2003
Messaggi: 1,168
Predefinito

Giusto per curiosità..

un

Codice PHP:
define('MEDIAWIKI'true); 
dopo il <?php

cambia qualcosa?

mavericck
Rispondi citando
  #22 (permalink)  
Vecchio 04-01-2008, 10.47.33
L'avatar di funcool
Utente storico
 
Data registrazione: 05-02-2004
Residenza: Qui... Non lì, qui!
Messaggi: 15,440
Predefinito

Non cambia nulla.
__________________
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
Rispondi citando
  #23 (permalink)  
Vecchio 04-01-2008, 11.00.36
L'avatar di binarysun
Utente storico
 
Data registrazione: 02-07-2004
Messaggi: 2,014
Invia un messaggio via MSN a binarysun
Predefinito

Hai sicuramente Gli errori disabilitati.

Ho fatto una prova e mi sono fermato qua:
Codice:
<?php
define('MEDIAWIKI', true);  
include("includes/GlobalFunctions.php");
include("includes/ProfilerStub.php");
include("includes/MagicWord.php");
include("includes/ParserOutput.php");
include("includes/Parser.php");
$oggetto=new Parser();
$oggetto->firstCallInit();
$nuovo=$oggetto->parse("Prova", "Titolo", $oggetto->mOptions);
echo $nuovo->getText();
?>
Il problema è che va inizializzato un po tutto.
__________________
"L'intelligenza è una pianta che va curata continuamente.
Dovreste vedere com'è bello, il mio bonsai."
Rat-man®

[Gradient Text]
[Su che server sei?]
->flickr
Rispondi citando
  #24 (permalink)  
Vecchio 04-01-2008, 11.02.23
L'avatar di funcool
Utente storico
 
Data registrazione: 05-02-2004
Residenza: Qui... Non lì, qui!
Messaggi: 15,440
Predefinito

Con questa prova ti funziona? Ricorda che il titolo non è una stringa ma un oggetto.
__________________
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
Rispondi citando
  #25 (permalink)  
Vecchio 04-01-2008, 11.22.53
L'avatar di binarysun
Utente storico
 
Data registrazione: 02-07-2004
Messaggi: 2,014
Invia un messaggio via MSN a binarysun
Predefinito

Non funziona, ma ero stufo di cercare dipendenze.

Mi da un bel "Call to a member function getMagic() on a non-object" nella classe MagicWord.
Va sicuramente inizializzato qualcosa.

Poi fanno spesso uso di classe dichiarate Globali, probabilmente sono passati da poco alla programmazione ad oggetti.
__________________
"L'intelligenza è una pianta che va curata continuamente.
Dovreste vedere com'è bello, il mio bonsai."
Rat-man®

[Gradient Text]
[Su che server sei?]
->flickr
Rispondi citando
  #26 (permalink)  
Vecchio 04-01-2008, 12.36.43
AlterGuru
 
Data registrazione: 03-12-2003
Messaggi: 1,168
Predefinito

La cosa divertente è che in tutto il pacchetto mediawiki non esiste mai un esplicita istanziazione di Parser, tranne che in due file di test (maintenance/parserTests.inc linea 290, maintenance/renderDump.php linea 62).

Un'istanza di Parser trovata per caso è $wgParser (resa globale come accennato da binarysun), che però viene creata con
Codice PHP:
$wgParser = new StubObject'wgParser''Parser' ); 
in includes/setup.php linea 173.

Magari prova a crearla anche tu in quel modo, o dai un'occhiata ai due file di test citati sopra, per l'utilizzo diretto della classe.

mavericck
Rispondi citando
Rispondi

Strumenti discussione
Modalità visualizzazione

Regole di scrittura
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Attivato
Le faccine sono Attivato
Il codice [IMG] è Attivato
Il codice HTML è Disattivato
Trackbacks are Attivato
Pingbacks are Attivato
Refbacks are Disattivato



Tutti gli orari sono GMT +1. Adesso sono le 22.58.22.