양식을 보내주십시오. 제발 저를 도울 수 있는지 궁금합니다.Ajax를 사용하여 MySQL에
가끔은 양식을 설정하고 AJAX를 사용하여 mySQL 데이터베이스에 사용자 입력을 제출하는 방법을 보여주는 자습서/기사를 검색했습니다.
데이터베이스에 데이터를 보내는 방법이 표시되지 않지만 this 기사에서 나에게 좋은 시작점을 알려주 었으며 온라인 메시지와 관련하여 '모양과 느낌'을주었습니다. 내 양식에 통합하십시오.
예제 스크립트를 적용하기 시작했지만 데이터베이스에 데이터를 제출하는 데 어려움이 있습니다. 나는이 부분 변경 한 형태에서
:
$.ajax({
url: contactForm.attr('action') + "?ajax=true",
type: contactForm.attr('method'),
data: contactForm.serialize(),
success: submitFinished
});
}
$.ajax({
url: contactForm.attr('savecontact.php') + "?ajax=true",
type: contactForm.attr('post'),
data: contactForm.serialize(),
success: submitFinished
});
}
하고 PHP 스크립트는, 지금 읽는이를 변경했습니다 :
<?php
// Read the form values
$success = false;
$senderName = isset($_POST['senderName']);
$senderEmail = isset($_POST['senderEmail']);
$message = isset($_POST['message']);
if ($senderName && $senderEmail && $message) {
$query = "INSERT INTO `contact` (senderName, senderEmail, message) VALUES ('$senderName', '$senderEmail', '$message')";
mysql_query($query) or die(mysql_error());
}
// Return an appropriate response to the browser
if (isset($_GET["ajax"])) {
echo $success ? "success" : "error";
} else {
?>
<html>
<head>
<title>Thanks!</title>
</head>
<body>
<?php if ($success) echo "<p>Thanks for sending your message! We'll get back to you shortly.</p>" ?>
<?php if (!$success) echo "<p>There was a problem sending your message. Please try again.</p>" ?>
<p>Click your browser's Back button to return to the page.</p>
</body>
</html>
<?php
}
?>
내가 가지고있는 문제는 양식을 보낼 때 sending
메시지가 화면에 나타나 계속해서 멈추는 것입니다. 이 메시지와 데이터 중 일부는 내 데이터베이스로 전송되므로 필자는 그 이유를 확실히 알지 못합니다.
내 경험 부족으로 인해 내가 원하는 결과를 얻는 더 쉬운 방법이있을 수 있고 나는 이것을 너무 단순하게보고있을 수 있음을 인정합니다. 그러나 나는 누군가가 아마도 이걸 좀 봐 주 었는지 의아해했습니다. 내가 어디로 잘못 가고 있는지 알려줘.
많은 감사와 안부
양식에'savecontact.php'와 같은 속성이 없습니다. 자바 스크립트 코드를 롤백해야합니다. –
안녕하세요 @ 트루트, 고마워요. 나는 아래 게시물에 강조 표시된대로 변경했습니다. 친절한 답변 – IRHM
더 많은 PHP를 게시해야합니다. 즉, 변수 $ senderName, $ senderEmail 및 $ message는 어디에 설정해야합니까? – bcmcfc