#ajax #image #jquery #jcrop
#ajax #изображение #jquery #jcrop
Вопрос:
просто представьте свой профиль на facebook. при смене вашего аватара вы выбираете новое изображение, обрезаете его и затем сохраняете. после этого новый аватар отображается в вашем профиле.
на моем веб-сайте я хочу предоставить тот же сервис, который уже работает.
но: я не могу отобразить новый и (!) обрезанный аватар сразу после его создания (с помощью php). я могу отобразить только новое, но не обрезанное. после обновления моего сайта все работает нормально.
$("div#button2").click(функция() {
//Thumbnail is created externally with php
//the name of the new cropped avatar is the same like the uncropped one
//i just change the picture, but the url is the same!
$.post("upload_thumbnail.php", {
bild: bild,
format: format,
x: x,
y: y,
w: w,
h: h
});
//delete the old avatar
$.post("upload_loeschen.php", {
bild: bildalt
});
//save the url of the new cropped avatar in the database
$.post("upload_update.php", {
bild: bild,
laden_nr: "1"
});
//close my imageeditor
$("div#bildeditor").hide();
jcrop_api.destroy();
$("#cropbox").attr("src", "");
$("#preview").attr("src", "");
//If there is a new avatar, display it!!! -> and here only the uncropped is displayed
if(bild != "") {
$("img#logo").attr("src", bild);
bild = "";
}
});
Я просто не знаю, как сайт может отображать не обрезанный аватар, потому что его там больше нет. оно было заменено на обрезанное.
Большое вам спасибо!
Бенджамин
Ответ №1:
проблема в том, что ваш аватар был кэширован, поэтому попробуйте добавить случайный параметр с именем изображения
при загрузке var i=1;
При смене аватара i ;
и установите img src ="imgpath?random=" i
Комментарии:
1. извините, я понял, что вы имеете в виду, но я не понимаю этого полностью. куда я должен добавить случайный параметр? в файле php? Спасибо