Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > it.comp.www.php > #21329 > unrolled thread
| Started by | Enrico Maria Chellini <bitit@bitit.it> |
|---|---|
| First post | 2016-12-29 16:46 +0100 |
| Last post | 2016-12-29 19:46 +0100 |
| Articles | 8 — 3 participants |
Back to article view | Back to it.comp.www.php
passaggio di un array in un link Enrico Maria Chellini <bitit@bitit.it> - 2016-12-29 16:46 +0100
Re: passaggio di un array in un link Alessandro Pellizzari <shuriken@amiran.it> - 2016-12-29 16:16 +0000
Re: passaggio di un array in un link Enrico Maria Chellini <bitit@bitit.it> - 2016-12-29 19:56 +0100
Re: passaggio di un array in un link Alessandro Pellizzari <shuriken@amiran.it> - 2016-12-30 08:23 +0000
Re: passaggio di un array in un link Enrico Maria Chellini <bitit@bitit.it> - 2016-12-30 09:55 +0100
Re: passaggio di un array in un link Enrico Maria Chellini <bitit@bitit.it> - 2016-12-30 10:13 +0100
Re: passaggio di un array in un link Leonardo Serni <lserni@gmail.com> - 2016-12-29 19:30 +0100
Re: passaggio di un array in un link Enrico Maria Chellini <bitit@bitit.it> - 2016-12-29 19:46 +0100
| From | Enrico Maria Chellini <bitit@bitit.it> |
|---|---|
| Date | 2016-12-29 16:46 +0100 |
| Subject | passaggio di un array in un link |
| Message-ID | <o43b44$p4q$1@gioia.aioe.org> |
ho un $arry contente dei valori risultati da una query questi valori vanno passati in un link.php?array=$array ma il risultato che ho è Array to string conversion in device.php on line 100 come faccio a far passare i valori? altrimenti devo dovo passare solo l'id e rifare la query. due volte Enrico
[toc] | [next] | [standalone]
| From | Alessandro Pellizzari <shuriken@amiran.it> |
|---|---|
| Date | 2016-12-29 16:16 +0000 |
| Message-ID | <eckr76F3krU1@mid.individual.net> |
| In reply to | #21329 |
Il Thu, 29 Dec 2016 16:46:13 +0100, Enrico Maria Chellini ha scritto: > ho un $arry contente dei valori risultati da una query > > questi valori vanno passati in un link.php?array=$array > > ma il risultato che ho è Array to string conversion in device.php on > line 100 > > come faccio a far passare i valori? Intanto devi decidere come li vuoi nell'URL e vedere come li hai nell'array, poi devi trovare il modo per encodarli. Fai un esempio di cosa hai nell'array e di cosa vorresti vedere nell'URL. Bye.
[toc] | [prev] | [next] | [standalone]
| From | Enrico Maria Chellini <bitit@bitit.it> |
|---|---|
| Date | 2016-12-29 19:56 +0100 |
| Message-ID | <o43m8t$1cth$1@gioia.aioe.org> |
| In reply to | #21330 |
Alessandro Pellizzari wrote:
> Il Thu, 29 Dec 2016 16:46:13 +0100, Enrico Maria Chellini ha scritto:
>
>> ho un $arry contente dei valori risultati da una query
>>
>> questi valori vanno passati in un link.php?array=$array
>>
>> ma il risultato che ho è Array to string conversion in device.php on
>> line 100
>>
>> come faccio a far passare i valori?
>
> Intanto devi decidere come li vuoi nell'URL e vedere come li hai
> nell'array, poi devi trovare il modo per encodarli.
>
> Fai un esempio di cosa hai nell'array e di cosa vorresti vedere nell'URL.
>
> Bye.
$device="SELECT * FROM ((sysSetDevice INNER JOIN sysambient ON
sysSetDevice.idsysAmbient=sysambient.idsysAmbient) INNER JOIN system ON
sysambient.idSystem=system.idSystem) INNER JOIN sysdevice ON
sysambient.idDeviceType=sysdevice.idDeviceType WHERE
sysSetDevice.idsysAmbient='$ida' ";
foreach($rvdb->query($device) as $rdevice)
{
$idd=$rdevice['idsysAmbient'];
$nameLogTab=$rdevice['log_tab'];
$deviceSetName_local=$rdevice['deviceSetName_local'];
$logFieldName=$rdevice['logFieldName'];
$logFieldType=$rdevice['logFieldType'];
$set=$rdevice['set'];
$logTab=$rdevice['log_tab'];
//array
$fieldArry [$logFieldName] =$logFieldType;
//risultato array:
Array ( [RESIDUAL_OXYGEN] => 2 [AIR_PRESSURE] => 2 [VACUOM] => 2
[NITROGEN_PRESSURE] => 2 [WORK_TIME] => 2 [RESIDUAL_OXYGEN_AVERAGE] => 3
[AIR_TEMPERATURE] => 3 [CABINET_TEMPERATURE] => 3 [AL21] => 0 [AL22] => 0
[AL2] => 0 [AL3] => 0 [AL1] => 0 [AL8] => 0 [AL4] => 0 [AL20] => 0
[AL20_STOP] => 0 [AL20_ALLERT] => 0 [AL7] => 0 [AL11] => 0 [AL25] => 0
[AL26] => 0 [STATE_0] => 0 [STATE_8] => 0 [ADSORPTION] => 3 [FLOW] => 3
[AVERAGE_FLOW] => 3 [TIMESTAMP] => 2 )
// link di trasmissione:
getDeviceLog.php?ida=".$idd."&tab=".$nameLogTab."&fieldArry=".$fieldArry;
//di la mi prendo l'arry per selezionare nella query i campi che miservono.
$cat="SELECT * FROM $tab ORDER BY idLog DESC ";
foreach($rvdb->query($cat) as $rcat){
foreach ($fieldArry as $field => $type)
echo $field . ' = ' . $type . '<br />$'.$field=$rcat[$field];
troppa fantasia? :D
[toc] | [prev] | [next] | [standalone]
| From | Alessandro Pellizzari <shuriken@amiran.it> |
|---|---|
| Date | 2016-12-30 08:23 +0000 |
| Message-ID | <ecmjr4Fdiv8U1@mid.individual.net> |
| In reply to | #21334 |
Il Thu, 29 Dec 2016 19:56:30 +0100, Enrico Maria Chellini ha scritto: > //risultato array: > > Array ( [RESIDUAL_OXYGEN] => 2 [AIR_PRESSURE] => 2 [VACUOM] => 2 > [NITROGEN_PRESSURE] => 2 [WORK_TIME] => 2 [RESIDUAL_OXYGEN_AVERAGE] => 3 > [AIR_TEMPERATURE] => 3 [CABINET_TEMPERATURE] => 3 [AL21] => 0 [AL22] => > 0 [AL2] => 0 [AL3] => 0 [AL1] => 0 [AL8] => 0 [AL4] => 0 [AL20] => 0 > [AL20_STOP] => 0 [AL20_ALLERT] => 0 [AL7] => 0 [AL11] => 0 [AL25] => 0 > [AL26] => 0 [STATE_0] => 0 [STATE_8] => 0 [ADSORPTION] => 3 [FLOW] => 3 > [AVERAGE_FLOW] => 3 [TIMESTAMP] => 2 ) > ... > foreach ($fieldArry as $field => $type) > echo $field . ' = ' . $type . '<br />$'.$field=$rcat[$field]; Tenendo conto dei limiti di alcuni browser/proxy/webserver (512 caratteri il più stretto che mi è capitato): $link = 'getDeviceLog.php?ida='.$idd.'&tab='.$nameLogTab.'&'. http_build_query(['fieldArry' => $fieldArry]); Dovrebbe funzionare, e alla seconda pagina ti trovi $_GET['fieldArry'] che contiene il tuo array di partenza. Ma forse è meglio se trovi un metodo migliore per organizzare tutta l'applicazione. Bye.
[toc] | [prev] | [next] | [standalone]
| From | Enrico Maria Chellini <bitit@bitit.it> |
|---|---|
| Date | 2016-12-30 09:55 +0100 |
| Message-ID | <o457ek$1fmc$2@gioia.aioe.org> |
| In reply to | #21335 |
> > Tenendo conto dei limiti di alcuni browser/proxy/webserver (512 caratteri > il più stretto che mi è capitato): direi che questo è un fattore da tener conto. > $link = 'getDeviceLog.php?ida='.$idd.'&tab='.$nameLogTab.'&'. > http_build_query(['fieldArry' => $fieldArry]); > Dovrebbe funzionare, e alla seconda pagina ti trovi $_GET['fieldArry'] > che contiene il tuo array di partenza. ci provo > Ma forse è meglio se trovi un metodo migliore per organizzare tutta > l'applicazione. si, sono in fase di progettazione e credo che tenuto prente quanto sopra mi hai detto, è il caso di pensare a un altra strada. in pratica ho una tabella "log" che non so, volta, volta come è formata, in cui ci son dei dati che vanno letti in vari modi, con nominazioni a terminale, scritte su un altra tabella "conf". Comunque grazie Enrico
[toc] | [prev] | [next] | [standalone]
| From | Enrico Maria Chellini <bitit@bitit.it> |
|---|---|
| Date | 2016-12-30 10:13 +0100 |
| Message-ID | <o458ev$1his$1@gioia.aioe.org> |
| In reply to | #21336 |
> >> $link = 'getDeviceLog.php?ida='.$idd.'&tab='.$nameLogTab.'&'. >> http_build_query(['fieldArry' => $fieldArry]); >> Dovrebbe funzionare, e alla seconda pagina ti trovi $_GET['fieldArry'] >> che contiene il tuo array di partenza. > > ci provo Perfetto, funziona. > >> Ma forse è meglio se trovi un metodo migliore per organizzare tutta >> l'applicazione. > ci studio. Enrico
[toc] | [prev] | [next] | [standalone]
| From | Leonardo Serni <lserni@gmail.com> |
|---|---|
| Date | 2016-12-29 19:30 +0100 |
| Message-ID | <7fla6cl95ug6i81aju5526j1e7bgq754m7@L.Serni> |
| In reply to | #21329 |
On Thu, 29 Dec 2016 16:46:13 +0100, Enrico Maria Chellini <bitit@bitit.it> wrote:
>ho un $arry contente dei valori risultati da una query
>questi valori vanno passati in un link.php?array=$array
>ma il risultato che ho è
>Array to string conversion in device.php on line 100
array[chiave1]=valore1&array[chiave2]=valore2 ...
Se le chiavi sono numeriche crescenti contigue zero-based (0 1 2 ...), le
puoi omettere.
Leonardo
--
A terrible beauty is born.
- W. B. Yeats, Easter 1916
[toc] | [prev] | [next] | [standalone]
| From | Enrico Maria Chellini <bitit@bitit.it> |
|---|---|
| Date | 2016-12-29 19:46 +0100 |
| Message-ID | <o43lmv$1bl9$4@gioia.aioe.org> |
| In reply to | #21331 |
Leonardo Serni wrote: > On Thu, 29 Dec 2016 16:46:13 +0100, Enrico Maria Chellini <bitit@bitit.it> > wrote: > >>ho un $arry contente dei valori risultati da una query > >>questi valori vanno passati in un link.php?array=$array > >>ma il risultato che ho è >>Array to string conversion in device.php on line 100 > > array[chiave1]=valore1&array[chiave2]=valore2 ... > > Se le chiavi sono numeriche crescenti contigue zero-based (0 1 2 ...), le > puoi omettere. > > Leonardo troppo lungo e complicato , per altro il numero di componeti dell'arry varia. soluzione che vorrei evitare. preferisco mandare l'id e raddoppiare la query Enrico
[toc] | [prev] | [standalone]
Back to top | Article view | it.comp.www.php
csiph-web