Autor | Zpráva | ||
---|---|---|---|
ServIT Profil |
#1 · Zasláno: 16. 3. 2023, 12:19:01
Zdravím,
V javascriptu mám funkci ( která se používá i v jiných částech .. a to i JS kódu a proto bych do ní raději nezasahoval ... moc :) ) ) /je součástí objektu, ne třídy ... no ale to není důležité .. XHRPost : function( url, data ){ //console.log( typeof data, data ); $.ajax({ type: "POST", url: url, data: data, Takže data bych rád měl taky jako objekt ... přímo při volání z JS to funguje, jenže pokud volám tuto funkci přes PHP, tak ten zakometovaný log mi píše, že data jsou řetězec. Volám takto : $params = array("action"=>"doit"); $action=sprinf( "projFunc.XHRPost('%s', '%s' )", $url, htmlspecialchars( json_encode( $params ) ) ); Dělám něco špatně, nebo to takto nejde ? Ještě mám v rukávu do JS funkce dopsat if typeof == text, tak json.parse ... ale než se do toho dám, chtěl bych poradit od odborníků, jestli z PHP můžu takto předánat pole .. Díky Milan |
||
Kajman Profil |
#2 · Zasláno: 16. 3. 2023, 12:40:19
Takto voláte XHRPost s druhým parametrem jako strign '{cosi...}' místo s objektem {cosi...}. Třeba bude stačit odstranit jednoduché uvozovky u druhého parametru.
Také si trochu myslím, že na toto místo htmlspecialchars nepatří a případně by se mělo ošetřovat celé $action, dle kontextu, kam se vkládá. |
||
ServIT Profil |
#3 · Zasláno: 16. 3. 2023, 14:14:40
Kajman: htmlspecialchars jsem tu vložit musel, protože jinak mi javascript hlásil, že s tím má problém ...
A ano, ty uvozovny opravdu byly tím problémem ... no to by mě nenapadlo, Moc děkuji za radu. Milan |
||
Časová prodleva: 6 dní
|
0