AJAX를 사용하여 MySQL 데이터베이스에 데이터를 저장 했으므로 작동 중입니다. 하지만 AJAX를 사용하여 데이터를 검색하는 데 문제가 있습니다.어떻게 PHP에서 아약스를 사용하여 MySQL에서 데이터를 얻을 수 있습니까?
데이터를 (자사의 게시 코멘트 페이지) 저장에 대한 나의 코딩 :
function sendMail(form_id) {
// Do a client-side check; if it passes, then move on;
// otherwise, report an error to the user
//if (!validatePage(form_id)) return;
if(!checkMail(document.getElementById('txtEmail').value))
{
document.getElementById('txtEmail').focus();
return false;
}
window.scrollTo(0,0);
divId = "results";
var str = "";
var elem = document.getElementById(form_id).elements;
for (var i = 0; i < elem.length; i++) {
if (
(elem[i].type == "hidden") ||
(elem[i].type == "text") ||
(elem[i].type == "textarea")
) {
// Text field
str += elem[i].id + "=" + escape(encodeURI(trimField(elem[i].id))) + "&";
}
else if (elem[i].type == "checkbox") {
// Check box
if (elem[i].checked) {
str += elem[i].id + "=on&";
}
else {
str += elem[i].id + "=off&";
}
}
else if (elem[i].type == "select-one") {
// Drop-down menu (SELECT)
var sel = elem[i];
str += sel.id + "=" + sel.options[sel.selectedIndex].value + "&";
}
}
str = str.substring(0, str.length-1);
str = str.replace(/%250A/g,"\n") // Make sure that line breaks get transmitted properly
if (form_id == "contact_form") {
form_page = "sendMail.php";
}
AjaxRequest(form_page, str, "post");
}
// Make the AJAX request
function AjaxRequest(url, parameters, type) {
http_request = false;
if (window.XMLHttpRequest) {
// Mozilla, Safari,...
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {
// set type accordingly to anticipated content type
//http_request.overrideMimeType('text/xml');
http_request.overrideMimeType('text/html');
}
}
else if (window.ActiveXObject) {
// IE
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e) {
}
}
}
if (!http_request) {
alert("Cannot create XMLHTTP instance");
return false;
}
if (type == "post") {
// POST
http_request.open('POST', url, true);
http_request.onreadystatechange = AjaxRequestCb;
http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
http_request.setRequestHeader("Content-length", parameters.length);
http_request.setRequestHeader("Connection", "close");
http_request.send(parameters);
}
else if (type == "get") {
// GET
http_request.open('GET', url + parameters, true);
http_request.onreadystatechange = AjaxRequestCb;
http_request.send(null);
}
// if...else
}
// AJAX Callback
function AjaxRequestCb() {
if (
http_request.readyState == 1 ||
http_request.readyState == 2 ||
http_request.readyState == 3
) {
}
else if (http_request.readyState == 4) {
if (http_request.status == 200) {
result = http_request.responseText;
document.getElementById(divId).innerHTML = result;
// If CAPTCHA failed, then repopulate it
if (result.indexOf("CAPTCHA") > -1) {
Recaptcha.reload();
}
else {
// Clear form after email has been sent
document.forms["contact_form"].reset(); // Not robust, I know (will modify later)
Recaptcha.reload(); // Display a new CAPTCHA
}
}
else {
alert("Callback failed. There was a problem with the request.");
}
}
}
// Remove any unneccessary whitespace
function trimField(field) {
re = /(^\s*)([^\b]*\S)(\s*$)/;
if (re.test(document.getElementById(field).value)) {
document.getElementById(field).value = document.getElementById(field).value.replace (re, "$2");
return document.getElementById(field).value;
}
else {
document.getElementById(field).value = "";
return "";
}
}
// The phone field shows how the user should input a phone number;
// on the first focus, the value will be cleared so the user can
// enter a phone number
function clearField(field_id) {
if (first_time) {
document.getElementById(field_id).value = "";
first_time = false;
}
}
이
지금까지 무엇을 얻었습니까? – Yacoby
어떤 코드라도 감사 할 것입니다. – Tim
관련 질문에 대해서는 "관련"에서 오른쪽을보십시오. –