2013-05-17 14 views
5

Sto cercando di rintracciare perché un collegamento per rimuovere un filtro non funziona sul mio sito. E sembra essere perché i link sono stati modificati per avere% 5B0% 5D e altre varietà di lettere e numeri con% aggiunto inCosa potrebbe essere aggiunto all'url% 5B0% 5D

da ciò che ho capito questa è la funzione serializzazione che causa questo?

C'è qualcos'altro che potrebbe causare o è sicuramente la funzione serializzazione?

+0

Alcuni caratteri devono essere codificati per essere in formato url, ad esempio lo spazio o # – meda

+0

% xx dove xx è un codice esadecimale per la rappresentazione di un carattere. '[0]' sta dicendo il tuo codice. –

+0

quindi non necessariamente dalla funzione serializzazione? forse c'è uno spazio che non deve essere aggiunto? – Sackling

risposta

6

Sembra un indice di matrice per me. Quelli sono valori codificati url che vengono aggiunti lì. Ci vorrà del lavoro per capire dove. Il mio suggerimento è di scorrere il codice per vedere quali valori stanno creando quei collegamenti.

+0

è stato difficile da trovare finora. Ma cercavo soprattutto di serializzare. Ora guarderò più da vicino – Sackling

3

Forse hai fatto un URL come

$url = 'mypage.php?book=$list[0]'; 

invece di

$url = "mypage.php?book=$list[0]"; 

Forse in maniera indiretta (modello?), Altrimenti si sarebbe visto.

+0

o invece di '$ url =" mypage.php? Book = ". $ List [0];' anche – Dave

+0

o forse: '$ url =" mypage.php? Book = {$ list [0 ]} "" – Annabel

10

Si chiama Percent-encoding e viene utilizzato nella codifica di caratteri speciali nei valori dei parametri dell'URL.

[0] contiene caratteri speciali in modo che quando codificato dà %5B0%5D

dove %5B rappresenta [ e %5D rappresentano ]

look per [0] in php.

Problemi correlati