누군가 나를 올바른 방향으로 안내 할 수 있습니까? 기본적으로,이 jQuery 코드 조각을 가지고 :jQuery를 사용하여 기본 텍스트 문자열을 mySQL 기반에 저장 하시겠습니까?
$('.bggallery_images').click(function() {
var newBG = "url('" + $(this).attr('src');
var fullpath = $(this).attr('src');
var filename = fullpath.replace('img/Bakgrunner/', '');
$('#wrapper').css('background-image', newBG);
// Lagre til SQL
$.ajax({
url: "save_to_db.php",
// The url to your function to handle saving to the db
data: filename,
dataType: 'Text',
type: 'POST',
// Could also use GET if you prefer
success: function (data) {
// Just for testing purposes.
alert('Background changed to: ' + data);
}
});
});
이 내가 어떤 버튼을 클릭하여 실행되고있다. 실제로는 클릭 핸들러 내에 있습니다.
이 내용을 올바르게 이해하면이 스 니펫은 이미지를 방금 클릭했을 때 원본을 가져 와서 파일 이름만으로 끝납니다. 경고 (파일 이름)를하면 파일 이름 만 표시됩니다. 그래서 이것은 괜찮습니다.
그러나 다음은 "save_to_db.php"라는 PHP 파일에 대한 ajax 호출을 수행하고 data : filename을 보냅니다. 이게 맞습니까? 그런 다음 경고 + 데이터를 수행하는 콜백을 수행합니다.
지금까지 올바른 것 같습니까? 내 PHP 파일 원인
은 다음과 같습니다
<?php
require("dbconnect2.php");
$uploadstring = $_POST['filename'];
$sessionid = $_SESSION['id'];
echo ($sessionid);
mysql_query("UPDATE brukere SET brukerBakgrunn = '$uploadstring' WHERE brukerID=" .$_SESSION['id']);
mysql_close();
?>
나는 이미지를 클릭
이, JQuery와는 불을 니펫을 내가 경고 상자 출력으로이 PHP 파일의 결과를 얻을 수 있습니다. 나는 변수가 어떻게 든 비어 있다고 생각한다. 알림 때문에 echo ($ sessionid); 이 변수는 세션 ID가 무엇인지 테스트하기 위해 만든 변수입니다. 그리고 아무것도 반환하지 않습니다. 여기서 문제가 될 수있는 것은 무엇입니까?편집 : 나는 단지 $ uploadstring 변수를 에코하려고 시도했지만 아무 것도 반환하지 않습니다. 그것은 jQuery 스 니펫이 PHP 파일에 변수를 전달하지 않는 것과 같습니다.
OT하지만'var newBG = "url ('"+ $ (this)) .attr ('src ');'라인은'+')''를';'직전에 사용합니다. –