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

Cerca nella pagine personalizzate

Cerchi una MOD? Chiedi in questo forum.
Questa sezione è supportata dagli utenti del forum, pertanto lo Staff potrebbe non eseguire tali richieste.
digreo
Utente
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

Messaggio da digreo » 01/02/2013, 22:07

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!

:?

digreo
Utente
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

Messaggio da digreo » 12/02/2013, 18:07

Non sono riuscito a trovare niente su phpbb.com; niente che ampli le ricerche in tabelle personalizzate delle custom page!

Avatar utente
Barrnet
Leader Moderatori
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

Messaggio da Barrnet » 13/02/2013, 3:13

Come sono composte questa tabelle?

digreo
Utente
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

Messaggio da digreo » 14/02/2013, 17:29

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:

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.
O più semplicemente::

Codice: Seleziona tutto

append_sid("{$phpbb_root_path}".$row['prog_prod']", "pro_id=" .$row['pro_id']")
:geek:

digreo
Utente
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

Messaggio da digreo » 15/02/2013, 11:28

Io so (sufficentemente) come fare una query! ..Il problema è inserirla nel search.php; come e dove.
...Nel frattempo studio il file.

digreo
Utente
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

Messaggio da digreo » 17/02/2013, 14:51

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

Codice: Seleziona tutto

if ($keywords || $author || $author_id || $search_id || $submit) {

digreo
Utente
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

Messaggio da digreo » 21/03/2013, 17:48

UP for this!
Dove inserire la query, di una tabella personalizzata, all'interno del search.php?

digreo
Utente
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

Messaggio da digreo » 06/04/2013, 20:50

digreo ha scritto:Dove inserire la query, di una tabella personalizzata, all'interno del search.php?
UPping!!

digreo
Utente
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

Messaggio da digreo » 23/04/2013, 16:52

Possibile che a nessuno è mai capitato di dover estendere la ricerca anche per le pagine personalizzate?
UP

digreo
Utente
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

Messaggio da digreo » 23/04/2013, 21:41

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');
}

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);
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:

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']
		));
}

Rispondi

Torna a “Richiesta MOD”

Chi c’è in linea

Visitano il forum: Nessuno e 26 ospiti