Ho bisogno che il form CERCA, compia la ricerca anche all'interno delle pagine personalizzate non attinenti al forum, ma con lo stesso database però con tabelle personalizzate!
phpBB Italia chiude!
phpBB Italia ringrazia tutti gli utenti che hanno dato fiducia al nostro progetto per ben 9 anni, e che, grazie al grande lavoro fatto da tutto lo Staff (rigorosamente a titolo gratuito), hanno portato il portale a diventare il principale punto di riferimento italiano alla piattaforma phpBB.
Purtroppo, causa motivi personali, non ho più modo di gestirlo e portarlo avanti. Il forum viene ora posto in uno stato di sola lettura, nonché un archivio storico per permettere a chiunque di fruire di tutte le discussioni trattate.
Il nuovo portale di assistenza per l'Italia di phpBB diventa phpBB-Store.it, cui ringrazio per aver deciso di portare avanti questo grande progetto.
Grazie ancora,
Carlo - Amministratore di phpBB Italia
phpBB Italia ringrazia tutti gli utenti che hanno dato fiducia al nostro progetto per ben 9 anni, e che, grazie al grande lavoro fatto da tutto lo Staff (rigorosamente a titolo gratuito), hanno portato il portale a diventare il principale punto di riferimento italiano alla piattaforma phpBB.
Purtroppo, causa motivi personali, non ho più modo di gestirlo e portarlo avanti. Il forum viene ora posto in uno stato di sola lettura, nonché un archivio storico per permettere a chiunque di fruire di tutte le discussioni trattate.
Il nuovo portale di assistenza per l'Italia di phpBB diventa phpBB-Store.it, cui ringrazio per aver deciso di portare avanti questo grande progetto.
Grazie ancora,
Carlo - Amministratore di phpBB Italia
Cerca nella pagine personalizzate
-
digreo
- Utente

- Messaggi: 265
- Iscritto il: 02/10/2012, 12:23
- Sesso: Maschio
- Versione: 3.0.12
- Server: UNIX/Linux
- PHP: 5.3.16
- Database: Mysql
- Contatta:
Cerca nella pagine personalizzate
Questa è difficile:
Ho bisogno che il form CERCA, compia la ricerca anche all'interno delle pagine personalizzate non attinenti al forum, ma con lo stesso database però con tabelle personalizzate!

Ho bisogno che il form CERCA, compia la ricerca anche all'interno delle pagine personalizzate non attinenti al forum, ma con lo stesso database però con tabelle personalizzate!
-
digreo
- Utente

- Messaggi: 265
- Iscritto il: 02/10/2012, 12:23
- Sesso: Maschio
- Versione: 3.0.12
- Server: UNIX/Linux
- PHP: 5.3.16
- Database: Mysql
- Contatta:
Re: Cerca nella pagine personalizzate
Non sono riuscito a trovare niente su phpbb.com; niente che ampli le ricerche in tabelle personalizzate delle custom page!
- Barrnet
- Leader Moderatori

- Messaggi: 3124
- Iscritto il: 04/07/2010, 23:31
- Sesso: Maschio
- Versione: 3.0.10
- Server: UNIX/Linux
- PHP: 5.3.10
- Database: MySQL 5.1.61-community-log
- Contatta:
Re: Cerca nella pagine personalizzate
Come sono composte questa tabelle?
Prima di installare una mod pensa...

Regolamento ~ Guida al ripristino integrale FTP ~ Guida al backup
Videogame Zone! ~ Phpbb-Store

Regolamento ~ Guida al ripristino integrale FTP ~ Guida al backup
Videogame Zone! ~ Phpbb-Store
-
digreo
- Utente

- Messaggi: 265
- Iscritto il: 02/10/2012, 12:23
- Sesso: Maschio
- Versione: 3.0.12
- Server: UNIX/Linux
- PHP: 5.3.16
- Database: Mysql
- Contatta:
Re: Cerca nella pagine personalizzate
Nel particolare è una sola tabella, con lo stesso prefisso delle tabelle del forum e quindi aggiunta al file includes/constant.php con il nominativo di PRO_TABLE.
PRO_TABLE è così strutturata:
pro_id = Int AUTO INCREMENT primario
prog_prod, realizzazione, commissione = Int 0/1/2
titolo, descrizione, approfondimenti = Stringa
prog_ing, prog_arc, prog_des, prod_art, prod_des, prod_sag = Int 0/1
La query potrebbe dare questi risultati (indicativamente)::
if ($row['prog_prod'] == 1) $row['prog_prod']= "progetti/project.php"
if ($row['prog_ing'] == 1 || $row['prog_arc'] == 1 || $row['prog_des'] == 1 etc. etc.) $pro= $row[il risultato della query == 1]
Un link per visualizzare un dato potrebbe essere il seguente:
O più semplicemente::

PRO_TABLE è così strutturata:
pro_id = Int AUTO INCREMENT primario
prog_prod, realizzazione, commissione = Int 0/1/2
titolo, descrizione, approfondimenti = Stringa
prog_ing, prog_arc, prog_des, prod_art, prod_des, prod_sag = Int 0/1
La query potrebbe dare questi risultati (indicativamente)::
if ($row['prog_prod'] == 1) $row['prog_prod']= "progetti/project.php"
if ($row['prog_ing'] == 1 || $row['prog_arc'] == 1 || $row['prog_des'] == 1 etc. etc.) $pro= $row[il risultato della query == 1]
Un link per visualizzare un dato potrebbe essere il seguente:
Codice: Seleziona tutto
append_sid("{$phpbb_root_path}".$row['prog_prod']", "real=" .$row['realizzazione']. "&comm=" .$row['commissione']. "&pro=" .$pro. "")
Questo link visualizzarebbe tutti i pro_id che hanno quelle variabili.Codice: Seleziona tutto
append_sid("{$phpbb_root_path}".$row['prog_prod']", "pro_id=" .$row['pro_id']")-
digreo
- Utente

- Messaggi: 265
- Iscritto il: 02/10/2012, 12:23
- Sesso: Maschio
- Versione: 3.0.12
- Server: UNIX/Linux
- PHP: 5.3.16
- Database: Mysql
- Contatta:
Re: Cerca nella pagine personalizzate
Io so (sufficentemente) come fare una query! ..Il problema è inserirla nel search.php; come e dove.
...Nel frattempo studio il file.
...Nel frattempo studio il file.
-
digreo
- Utente

- Messaggi: 265
- Iscritto il: 02/10/2012, 12:23
- Sesso: Maschio
- Versione: 3.0.12
- Server: UNIX/Linux
- PHP: 5.3.16
- Database: Mysql
- Contatta:
Re: Cerca nella pagine personalizzate
E' veramente difficile capire dove inserire la query all'interno del search.php
Sicuramente penso qui, ma l'if è lunghissimo e ci sono troppe ramificazioni! E' impossibile per me capirlo
Sicuramente penso qui, ma l'if è lunghissimo e ci sono troppe ramificazioni! E' impossibile per me capirlo
Codice: Seleziona tutto
if ($keywords || $author || $author_id || $search_id || $submit) {-
digreo
- Utente

- Messaggi: 265
- Iscritto il: 02/10/2012, 12:23
- Sesso: Maschio
- Versione: 3.0.12
- Server: UNIX/Linux
- PHP: 5.3.16
- Database: Mysql
- Contatta:
Re: Cerca nella pagine personalizzate
UP for this!
Dove inserire la query, di una tabella personalizzata, all'interno del search.php?
-
digreo
- Utente

- Messaggi: 265
- Iscritto il: 02/10/2012, 12:23
- Sesso: Maschio
- Versione: 3.0.12
- Server: UNIX/Linux
- PHP: 5.3.16
- Database: Mysql
- Contatta:
Re: Cerca nella pagine personalizzate
UPping!!digreo ha scritto:Dove inserire la query, di una tabella personalizzata, all'interno del search.php?
-
digreo
- Utente

- Messaggi: 265
- Iscritto il: 02/10/2012, 12:23
- Sesso: Maschio
- Versione: 3.0.12
- Server: UNIX/Linux
- PHP: 5.3.16
- Database: Mysql
- Contatta:
Re: Cerca nella pagine personalizzate
Possibile che a nessuno è mai capitato di dover estendere la ricerca anche per le pagine personalizzate?
UP
UP
-
digreo
- Utente

- Messaggi: 265
- Iscritto il: 02/10/2012, 12:23
- Sesso: Maschio
- Versione: 3.0.12
- Server: UNIX/Linux
- PHP: 5.3.16
- Database: Mysql
- Contatta:
Re: Cerca nella pagine personalizzate
Sono riuscito, almeno in parte, a completare quello che volevo; ma nascono diversi problemi sulle parole cercate:
Il sistema phpbb si appoggia a tabelle WORDLIST e WORDMATCH che francamente non capisco.. cioè se le parole sono nella tabella WORDLIST allora si produce una ricerca altrimenti ritorna errore!
Sapreste parlarmi di queste due tabelle? Perchè alcuni termini vengono cercati e altri no?
Io vi spiego cosa ho capito:
board\includes\search\fulltext_native.php si appoggia appunto a quelle due tabelle per cercare le parole
board\includes\search\fulltext_mysql.php compie alcune funzioni per capire cosa si sta cercando (forum, autore, etc.), quindi non è importante ai fini della mia ricerca
board\search.php è dove ho inserito la mia query abbastanza facilmente, subito prima del controllo errore
if (!sizeof($id_ary) && !$search_id) //..aggiungendo && !sizeof($resultpro)
{
trigger_error('NO_SEARCH_RESULTS');
}
al posto di $keywords si può inserire un controllo più accurato.. (forse, io comunque l'ho trovato in fulltext_mysql.php) e sarebbe: $db->sql_escape(htmlspecialchars_decode($search->search_query))
Poi, prima del page_footer(); ho inserito il mio while per il template:
Il sistema phpbb si appoggia a tabelle WORDLIST e WORDMATCH che francamente non capisco.. cioè se le parole sono nella tabella WORDLIST allora si produce una ricerca altrimenti ritorna errore!
Sapreste parlarmi di queste due tabelle? Perchè alcuni termini vengono cercati e altri no?
Io vi spiego cosa ho capito:
board\includes\search\fulltext_native.php si appoggia appunto a quelle due tabelle per cercare le parole
board\includes\search\fulltext_mysql.php compie alcune funzioni per capire cosa si sta cercando (forum, autore, etc.), quindi non è importante ai fini della mia ricerca
board\search.php è dove ho inserito la mia query abbastanza facilmente, subito prima del controllo errore
if (!sizeof($id_ary) && !$search_id) //..aggiungendo && !sizeof($resultpro)
{
trigger_error('NO_SEARCH_RESULTS');
}
Codice: Seleziona tutto
$sqlpro = 'SELECT id_pr, titol, descr, approfond FROM ' . PROGETTI_TABLE . " WHERE MATCH (titol, descr, approfond) AGAINST ('" . $keywords . "' IN BOOLEAN MODE)";
$resultpro = $db->sql_query($sqlpro);Poi, prima del page_footer(); ho inserito il mio while per il template:
Codice: Seleziona tutto
while ($rowpro = $db->sql_fetchrow($resultpro))
{
$template->assign_block_vars('progetti',array(
'PRO_TIT' => $rowpro['titol'],
'PRO_DESC' => $rowpro['descr'],
'PRO_APPR' => $rowpro['approfond']
));
}Chi c’è in linea
Visitano il forum: Nessuno e 24 ospiti