УчастникПользователь №: 333 Сообщений: 56
| Привет всем! Большая беда тут у меня... Копаюсь полдня уже, а ничего не выходит. Не сохраняет она в базу данных!
Помогите чем можете, где ошибка?
Вот куски кода:
JS:
Код | 1
| var ajax = new sack();
function WhenLoading(obj) {
var e = document.getElementById("rep"+obj);
e.innerHTML = "<center><img src=\"images/misc/loading.gif\"></center>";
}
function LoadPost(ld, obj) {
var form = document.getElementById("form"+obj);
ajax.setVar("go", form.go.value);
ajax.setVar("op", form.op.value);
ajax.setVar("id", form.id.value);
ajax.setVar("text", form.text.value);
ajax.requestFile = "ajax.php";
ajax.method = form.method.value;
ajax.element = "rep"+obj;
if (ld == '1') {
ajax.onLoading = WhenLoading(obj);
} else {
ajax.onLoading = "";
}
ajax.runAJAX();
}
function LoadGet(ld, obj, go, op, id, typ, mod, text) {
ajax.setVar("go", go);
ajax.setVar("op", op);
ajax.setVar("id", id);
ajax.setVar("typ", typ);
ajax.setVar("mod", mod);
ajax.setVar("text", text);
ajax.requestFile = "ajax.php";
ajax.method = "GET";
ajax.element = "rep"+obj;
if (ld == '1') {
ajax.onLoading = WhenLoading(obj);
} else {
ajax.onLoading = "";
}
ajax.runAJAX();
} |
PHP:
PHP - Код | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| <?php function editpost() { global $db;
$lid = (isset($_POST['id'])) ? ((isset($_POST['id'])) ? intval($_POST['id']) : "") : ((isset($_GET['id'])) ? intval($_GET['id']) : ""); $obj = "for".$lid.""; $go = 3; $op = "editpost";
$result = $db->sql_query("SELECT lid, shortdescription from asershop_products where lid=$lid"); list($lid, $text) = $db->sql_fetchrow($result);
$text = mb_convert_encoding($text, "utf-8", "windows-1251");
$code = "<form id=\"form".$obj."\" method=\"post\" action=\"ajax.php\">" ."<input type=\"hidden\" name=\"method\" value=\"POST\">" ."<input type=\"hidden\" id=\"go\" name=\"go\" value=\"".$go."\">" ."<input type=\"hidden\" id=\"op\" name=\"op\" value=\"editpost\">" ."<input type=\"hidden\" id=\"id\" name=\"id\" value=\"".$lid."\">" ."<textarea id=\"text\" name=\"text\" cols=\"65\" rows=\"20\">".$text."</textarea>" ."<div style=\"clear: both;\"><input type=\"submit\" value=\"".mb_convert_encoding(Применить, "utf-8", "windows-1251")."\" OnClick=\"LoadPost('1', '".$obj."'); return false;\" OnDblClick=\"LoadPost('1', '".$obj."'); return false;\" title=\"".mb_convert_encoding(Применить, "utf-8", "windows-1251")."\" class=\"ebutton\"></form>" ."<input type=\"submit\" value=\"".mb_convert_encoding(Отмена, "utf-8", "windows-1251")."\" OnClick=\"LoadGet('1', '".$obj."', '".$go."', 'showpost', '".$lid."', '".$typ."', '".$mod."', ''); return false;\" OnDblClick=\"LoadGet('1', '".$obj."', '".$go."', 'showpost', '".$lid."', '".$typ."', '".$mod."', ''); return false;\" title=\"".mb_convert_encoding(Отмена, "utf-8", "windows-1251")."\" class=\"bbutton\"></div>"; echo $code;
$db->sql_query("UPDATE asershop_products SET shortdescription='$text' WHERE lid='$lid'"); } ?> |
Вот то что в конце - $db->sql_query("UPDATE.... - если эту строку не убрать, то даже если просто кликнуть по кнопке "редактировать", и обновить страницу, вместо читаемого текста появятся крякозябры (То есть в базе всё таки значение поля shortdescription будет перезаписано). Причем в поле можно писать любые символы, латиницу, цифры, без разницы, всё равно будут крякозыбры, которые запишутся в базу, и с каждым сохранением их будет становится больше, независимо от того, что я ввел например английские слова, то есть скрипт как то своей жизнью будет жить чтоли).
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Отредактированно makarovgosha 21.07.2010 г. в 20:26:47 |
|