| Autor | Zpráva | ||
|---|---|---|---|
| PetrM Profil * |
#1 · Zasláno: 5. 2. 2010, 13:28:12
Dobrý den.
Posílám přes Mootools Request přes post data stylem "Návod na vlastní šablonu". Vše funguje krásně v Opeře, FF, Safari i Chrome. Ale IE8 má problém s diakritkou, protože do PHP scriptu dojde "Nd na vlastnablonu". Nevíte kde by mohl být problém ? Děkuji. |
||
| ah01 Profil |
#2 · Zasláno: 5. 2. 2010, 23:21:10 · Upravil/a: ah01
PetrM:
„Nevíte kde by mohl být problém ?“ Pomohl by odkaz na živou ukázku. |
||
| PetrM Profil * |
#3 · Zasláno: 6. 2. 2010, 22:30:40
Bohužel ukázka je v administrační části takže nemohu.
Ale napíšu kód. HTML: <tr><td class="editable" rel="1">Návod na vlastní šablonu</td></tr> JS:
window.addEvent('domready', function() {
$$('.editable').each(function(el) {
el.addEvent('dblclick',function() {
var before = el.get('html').trim();
el.set('html','');
if(el.hasClass('textarea'))
{
var input = new Element('textarea', { 'class':'edit-box', 'text':before });
}
else
{
var input = new Element('input', { 'class':'edit-box', 'value':before });
input.addEvent('keydown', function(e) { if(e.key == 'enter') { this.fireEvent('blur'); } });
}
input.inject(el).select();
input.addEvent('blur', function() {
val = input.get('value').trim();
el.set('text',val).addClass(val != '' ? '' : 'editable-empty');
var url = 'ajax.updateTitle.php?id=' + el.get('rel') + '&content=' + el.get('text');
var request = new Request({
url:url,
method:'post'
}).send();
});
});
});
});
PHP (ajax.updateTitle.php): (...) $id = intval($_POST['id']); $title = $db->real_escape_string($_POST['content']); $query = "UPDATE articles SET title = '".$title."' WHERE id = '".$id."'"; $db->query($query); (...) |
||
| ah01 Profil |
#4 · Zasláno: 7. 2. 2010, 00:30:55
Posíláš sice POST metodou, ale data předáváš přímo v adrese, už to je trochu podezřelé. Navíc se vůbec nestaráš o escape těch dat.
Proč to vůbec píšeš rovnou do URL a ne takto? var url = 'ajax.updateTitle.php';
var data = {
'id': el.get('rel'),
'content': el.get('text')
};
var request = new Request({
url:url,
method:'post'
}).send(data); |
||
| PetrM Profil * |
#5 · Zasláno: 7. 2. 2010, 00:47:32
Ohledně escape těch dat, tak je tam intval na ID a real_escape_string na title.
|
||
|
Časová prodleva: 16 let
|
|||
0