Сообщество IT-специалистов
Ответы на любые вопросы об IT
Профессиональное развитие в IT
<img id="image" src="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRpahvUmiV9W45fItIkYhj0qLq2Mj2mj76zDu4hLyfDZRhaYqmOIw" /> <form id="update_image" method="post" action=""> <input name="url_image" type="text" placeholder="url обновляемой картинки" /> <button id="update_button" type="button">Обновить</button> </form> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <!-- подключаем библиотеку jquery --> <script type="text/javascript" src="update_image.js"></script> <!-- подключаем скрипт с функциями update_image.js -->
$("#update_button").click( //при нажатии на кнопку выполняем ajax запрос function (){ updateAjax('update_image', 'update_image.php'); //update_image - id формы //update_image.php - обработчик return false; } ); function updateAjax(ajax_form, url) { $.ajax({ url: url, //url страницы (update_image.php) type: "POST", //метод отправки dataType: "html", //формат данных data: $("#"+ajax_form).serialize(), // Сериaлизуем объект success: function(response) { //Данные отправлены успешно result = $.parseJSON(response); if(!result.data) { //если нет ответа выдаем ошибку alert('Не удалось обновить картинку'); } else { alert(result.data[0]); $('#image').attr('src', result.data[1]); //обновляем url картинки на странице } }, error: function(response) { // Данные не отправлены alert('Не удалось отправить данные'); } }); }
function clean($value = "") { //функция очистки от нежелательного кода (но она не гарантирует полную безопасность) $value = trim($value); $value = stripslashes($value); $value = strip_tags($value); $value = htmlspecialchars($value); return $value; } $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; $url = clean($_POST['url_image']); //url полученный из формы // Создаем подключение к бд $conn = mysqli_connect($servername, $username, $password, $dbname); // Проверяем установлено ли подключение к бд if (!$conn) { $resData['data'][0] = "Ошибка подключения: " . mysqli_connect_error(); } else { $sql = "UPDATE name_db SET url='".$url."' WHERE id=2"; //подготавливаем запрос к бд //id=2 - id картинки которую нужно обновить в бд if (mysqli_query($conn, $sql)) { //выполняем запрос $resData['data'][0] .= "\nЗапись успешно обновлена"; } else { $resData['data'][0] .= "\nОшибка обновления записи: " . mysqli_error($conn); } } mysqli_close($conn); //закрываем подключение $resData['data'][1] = $url; $result = array( 'data' => $resData['data'] ); echo json_encode($result);
это скрипт с функциями update_image.js
скрипт обработчика update_image.php
P.S. в данном примере используется MySQLi соединение