(RISOLTO) Errore php su modulo ricerca

Started by sonofabio, 03 October 2011, 17:41:26

Previous topic - Next topic
A financial contribution is greatly appreciated as a support, to help us to keep live the project.
If you like this project you can donate some piece of BitCoin to this address: bc1qy5tgq6tvrckac2a57unxvqcnxamrvhduve9sj9

sonofabio

Ciao a tutti. Ho installato questo bellissimo e utilissimo componente per la gestione dei libri, su di un sito che stò realizzando. Perfetta l'installazione, perfetta la configurazione e la personalizzazione delle schede. Ma.... sono incappato in degli errori. Praticamente facendo ricerca dal campo ricerca appunto, mi rilascia i seguneti errori, penso errori php:
Warning: array_merge() [function.array-merge]: Argument #2 is not an array in /home/xxx/xxx/public/xxx/components/com_abook/views/search/view.html.php on line 82

Warning: Invalid argument supplied for foreach() in /home/xxx/xxx/public/xxxx/libraries/joomla/html/html/select.php on line 68

Warning: array_merge() [function.array-merge]: Argument #2 is not an array in /home/xxx/xxx/public/xxx/components/com_abook/views/search/view.html.php on line 86

Warning: Invalid argument supplied for foreach() in /home/xxx/xxx/public/xxx/libraries/joomla/html/html/select.php on line 68

Sicuramente sarà qualche settaggio che ho sbagliato o che ho scordato.
Se qualcuno mi può aiutare gli sarei molto grato.

A financial contribution is greatly appreciated as a support, to help us to keep live the project.
If you like this project you can donate some piece of BitCoin to this address: bc1qy5tgq6tvrckac2a57unxvqcnxamrvhduve9sj9

sonofabio

Aggiorno la cosa.
L'errore viene fuori solo se disabilito i campi "Mostra Bilblioteca" e "Mostra luogo" dal campo "Search parameters" delle preferenze.
Abilitando le due cose funziona tutto regolare.
Però appunto mi servirebbe disabilitare quei due campi. E' possibile senza incappare in errori???
???

federica

Ciao,
grazie per aver segnalato questo errore, credo sia relativo alla versione di php che stai usando perchè a me non si verifica alcun errore. Comunque effettivamente  manca un controllo sulle variabili dei parametri che disabilitano "Mostra Bilblioteca" e "Mostra luogo".
Per correggere l'errore dovrebbe bastare fare queste modifiche:
apri il file
/home/xxx/xxx/public/xxx/components/com_abook/views/search/view.html.php
spostati vicino alla riga 82 e sostituisci questo:
$toplocation[]    = JHTML::_('select.option', NULL , JText::_('SELECT A LOCATION'), 'id', 'location');
$locationslist=array_merge($toplocation, $locationslist);
$lists['location'] = JHTML::_('select.genericlist', $locationslist, 'location', 'class="inputbox" size="1"','id', 'location', isset($searchkey['location'])?$searchkey['location']:"");

con questo
if ($params->get('show_search_loc', 1)) {
                        $toplocation[]    = JHTML::_('select.option', NULL , JText::_('SELECT A LOCATION'), 'id', location');
                        $locationslist=array_merge($toplocation, $locationslist);
                        $lists['location'] = JHTML::_('select.genericlist', $locationslist, 'location', 'class="inputbox" size="1"','id', 'location', isset($searchkey['location'])?$searchkey['location']:"");
}

poi spostati vicino alla riga 86 e sostituisci questo:
$toplibraries[]    = JHTML::_('select.option', NULL, JText::_('SELECT A LIBRARY'), 'id', 'name');
$librarieslist=array_merge($toplibraries, $librarieslist);
$lists['library'] = JHTML::_('select.genericlist', $librarieslist, 'library', 'class="inputbox" size="1"','id', 'name', isset($searchkey['library'])?$searchkey['library']:"");

con questo:
if ($params->get('show_search_lib', 1)) {
                        $toplibraries[]    = JHTML::_('select.option', NULL, JText::_('SELECT A LIBRARY'), 'id', 'name');
                        $librarieslist=array_merge($toplibraries, $librarieslist);
                        $lists['library'] = JHTML::_('select.genericlist', $librarieslist, 'library', 'class="inputbox" size="1"','id', 'name', isset($searchkey['library'])?$searchkey['library']:"");
                }

Attenzione, dopo aver fatto la prima modifica il numero di riga per la seconda modifca cambierà perchè avrai aggiunto due righe.

Fammi sapere se con questa modifica funziona, farò uscire una nuova versione di abook con la correzione. Mi dovresti anche dire quale versione di php stai usando.
Al mondo ci sono 10 tipi di persone, quelli che hanno capito il codice binario e quelli che non l'hanno capito.
Informatizzati [url="https://informatizzati.org"]https://informatizzati.org[/url]
Stacca la spina [url="https://disconnessi.org"]https://disconnessi.org[/url]

sonofabio

Ciao Federica,
intanto ti indico che la versione del PHP è la 5.2.17

Ho fatto la modifica che mi hai indicato, ma mi da il seguente errore:
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /home/xxx/xxx/public/xxx/components/com_abook/views/search/view.html.php on line 84

Cosa mi consigli?

A financial contribution is greatly appreciated as a support, to help us to keep live the project.
If you like this project you can donate some piece of BitCoin to this address: bc1qy5tgq6tvrckac2a57unxvqcnxamrvhduve9sj9

federica

Secondo me c'è solo qualche errore di copia e incolla.
Metto il file in allegato, devi solo rinominarlo come view.html.php e sostituirlo con questo file /home/xxx/xxx/public/xxx/components/com_abook/views/search/view.html.php
Al mondo ci sono 10 tipi di persone, quelli che hanno capito il codice binario e quelli che non l'hanno capito.
Informatizzati [url="https://informatizzati.org"]https://informatizzati.org[/url]
Stacca la spina [url="https://disconnessi.org"]https://disconnessi.org[/url]

sonofabio

Ho messo il file che mi hai allegato, con questo funziona.
Per curiosità sono andato a controllare dove avevo sbagliato a incollare il codice che mi avevi postato, ma ho visto, comparando i due files, che ci sono diverse cose modificate, non solo quelle righe.
Comenque ora và alla grande.

Grazie
ciao ciao

federica

Ciao,
il file che ti ho dato contiene la modifica anche per tutti gli altri campi di ricerca opzionali (categoria, anno, autore, ecc...). Visto che la tua segnalazione per i campi "luogo" e "biblioteca" valeva anche per gli altri, ho fatto che darti il file definitivo. Le correzioni che ti avevo mandato erano solo per i campi "luogo" e "biblioteca".
Comunque credo tu abbia solo dimenticato qualche parentesi, niente di grave.

Ti ringrazio ancora per la segnalazione, se il componente ti piace, scrivi una recensione su joomla.org, mi farebbe molto piacere.
Al mondo ci sono 10 tipi di persone, quelli che hanno capito il codice binario e quelli che non l'hanno capito.
Informatizzati [url="https://informatizzati.org"]https://informatizzati.org[/url]
Stacca la spina [url="https://disconnessi.org"]https://disconnessi.org[/url]