view의 내용은 아래와 같거든요~!
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ajax_기초테스트</title>
<!--<script type="text/javascript" src="../../js/ajax.js"></script>-->
<script>
var xmlHttp;
function modal(str){
// 1. 브라우저에 따른 XMLHttpRequest생성하기.
xmlHttp = createXMLHTTPObject();
// 2. 요청에 대한 응답처리 이벤트 리스너 등록.
xmlHttp.onreadystatechange=on_ReadyStateChange;
// 3.서버로 보낼 데이터 생성.
// 3.데이터 생성.
var data = "data1="+str+"&data2=samp2le";
// 4. POST 방식으로 데이터 보내기, 응답은 비동기로 클라이언트<->서버간의 연결 요청준비.
xmlHttp.open("POST", "http://localhost/ajax/index.php/ajax_controller/ajax", true);
xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
// 5. 실제 데이터 전송.
xmlHttp.send(data);
// T. 동기/비동기 실행 테스트를 위한 부분.
alert("전송 시작!");
}
// 1. 브라우저에 따른 XMLHttpRequest생성하기.
function createXMLHTTPObject(){
var xhr = null;
if (window.XMLHttpRequest) {
// IE7버전 이상, Chrome, Safari, Firefox, opera등 거의 대부분의 브라우저에서는
// XMLHttpRequest객체를 제공합니다.
xhr = new XMLHttpRequest();
}
else {
// IE6,IE5 버전에서는 아래와 같이 XMLHttpRequest객체를 생성해야 합니다.
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
return xhr;
}
// 6.응답처리.
function on_ReadyStateChange(){
// 4=데이터 전송 완료.(0=초기화전,1=로딩중,2=로딩됨,3=대화상태)
if(xmlHttp.readyState==4){
//200은 에러 없음.(404=페이지가 존재하지 않음)
if(xmlHttp.status==200){
// 서버에서 받은 값.
alert("서버에서 받은 원본 데이터 : "+xmlHttp.responseText);
//8. 데이터 파싱처리.
parseData(xmlHttp.responseText);
}
else{
alert("처리 중 에러가 발생했습니다.");
}
}
}
//7. CSV포맷 데이터 처리.
function parseData(strText){
alert('div'+strText);
/*
var aryData = strText.split("|");
var objResult = {};
for(var i=0;i<aryData.length;i++){
var keyValue = aryData[i].split("=");
objResult[keyValue[0]]=keyValue[1];
}
alert("파싱한 데이터 : "+objResult);
// chrome, safari에서는 console.log로 테스트 하세요.
// console.log("파싱한 데이터 : ",objResult);
*/
}
</script>
</head>
<body>
<? $str = "kisu2"; ?>
<input type="button" name="button" value="버튼" onclick="modal('<?=$str?>')" />
</body>
</html>
저 빨간 부분이 ajax 부분입니다.
이를 db에 응용하여 ..
<?
class Ajax_model extends CI_Model
{
function getAll(){
$q = $this->db->get('member_info');
$query = $q->result();
$station = array();
foreach($query as $r):
$station = $r->userid;
endforeach;
echo ($station);
}
}
?>
요렇게 하면, $r->userid 가 ajax 코드에 의해서 뽑히는데,
문제는 $r->userid가 하나가 아닐경우에 ,
마지막껏만출력이 된다는 단점이 있네요.
ajax로 모든 배열을 다 받을 수 있는 방법이 없을까요~?
불의회상//
급하게 json_encode 찾아서 , 해결했습니다
감사합니다 ㅎ