2013-11-28 2 views
0

두 개의 get 요청을 동시에 사용하여 서버에서 데이터를 다시 가져올 수 없습니다. 내 슬림 코드 :슬림을 사용하여 서버에서 데이터를 다시 가져 오지 못합니다.

$app->get('/stravaigers', 'getTowns'); 

$app->get('/stravaigers', 'searchAdmin'); 

과 관련 코드

function getTowns() { 
    $sql = "select distinct town from members where role='Member' order by town asc"; 
    try { 
     $db = getConnection(); 
     $stmt = $db->query($sql); 
     $town = $stmt->fetchAll(PDO::FETCH_OBJ); 
     $db = null; 
     echo json_encode($town); 
    } catch(PDOException $e) { 
     echo '{"error":{"text":'. $e->getMessage() .'}}'; 
    } 
} 


function searchAdmin() { 

    $querytype=$_GET['querytype']; 
    $querystring=trim($_GET['querystring']); 
    //$querystring=trim($querystring); 

    switch ($querytype) 
    { 
     case 1: 
      $sql = "select * from members where role='member' and SUBSTRinG(lname, 1, 1) = '$querystring'"; 
      break; 
     case 2: 
      $sql = "select * from members where role='member'"; 
      break; 
     case 3: 
      $sql = "select * from members where role='member' and status = '$querystring'"; 
      break; 
     case 4: 
      $sql = "select * from members where role='member' and town = '$querystring'"; 
      break; 
    } 
    try { 
     $db = getConnection(); 
     $stmt = $db->prepare($sql); 
     $stmt->execute(); 
     $myjson = $stmt->fetchAll(PDO::FETCH_OBJ); 
     $db = null; 
     echo json_encode($myjson);  
    } catch(PDOException $e) { 
     echo '{"error":{"text":'. $e->getMessage() .'}}'; 
    } 
} 

나는 그 문제에 슬림 전이나 PHP는 이전에 사용 적이 없다. 자바 스크립트의 함수는 다음과 같습니다 :

그리고 다른 GET 요청을 호출해야하는 함수;

function showAll(qstring,qtype) { 
    var num=0; 
    var recend=0; 
    var totrecs=1; 
    $("#vsdiv").show(); 
    $.ajax({ 
     type: "GET", 
     url: rootURL, dataType:'json',data:{querystring:qstring,querytype:qtype}, 
     success: function(myjson){ 
      if(myjson.length==0){ 
       alert("No records found."); 
       var me= $('#hr1').html()+" - No Records Found."; 
       $("#hr1").removeAttr("href"); 
      } else { 
       num=myjson.length-1; 
       if(myjson.length>=10){ 
        recend=10; 
       } else { 
        recend=myjson.length; 
       } 
       var me= $('#hr1').html()+" - Showing 1 - "+recend+" of "+myjson.length+" Records in Table."; 
       $('#hr1').html(me); 
       $("#hits").html("Viewing #1 of "+num+" records"); 
       $("#resultstable").append('<tr class="yellow">'+ 
         '<th>#REC</th><th>JOINED</th><th>USER NAME</th><th>CONTACT</th><th>ADDRESS</th><th>PHONE</th><th>EMAIL</th><th>STATUS</th><th>SELECT</th>'+ 
       '</tr>'); 
       var j=0; 
       for(var i=0;i<10;i++){ 
        $("#resultstable").append('<tr class="trow'+j+'">'+ 
          '<td class="ids" id="z'+i+'">'+totrecs+'</td>'+ 
          '<td>'+myjson[i].jdate+'</td>'+ 
          '<td class="users" id="username'+i+'">'+myjson[i].username+'</td>'+ 
          '<td id="contact'+i+'">'+myjson[i].fname+' '+myjson[i].lname+'</td>'+ 
          '<td id="myaddress'+i+'">'+myjson[i].address1+' '+myjson[i].town+'</td>'+ 
          '<td id="phone'+i+'">'+myjson[i].phone+'</td>'+ 
          '<td id="email'+i+'">'+myjson[i].email+'</td>'+ 
          '<td id="status'+i+'">'+myjson[i].status+'</td>'+ 
          '<td><input type="checkbox" name="whome" id="showMe'+i+'" class="boxes" onclick="getMe('+i+')" /></td>'+ 
        '</tr>'); 
        totrecs++; 
        j++; 
       } 
       if(myjson.length>10){ 
        $("#n10").attr("disabled",false); 
        $("#l10").attr("disabled",false); 
       } 
      } 
     } 
    }); 
} 

이제이 방법을 html로 호출합니다.

<script> 
     showAll(urlParams.querystring,urlParams.querytype); 
     </script> 

내가 데이터를 다시는 항상 내가 검색 관리 기능에있는 다른 쿼리 작업을 얻을 필요로 마을을 반환하는 서버에서받을 때마다. 나는 많은 일을 시도했지만 때마다 마을을 되 찾을 때마다;

왜 서버 끝에서 데이터를 다시 가져 오는 지 알 수 없습니다. 약간의 도움을 주시면 감사하겠습니다 :)

감사

+0

검색 관리자는 마을을 제공합니까, 아니면 전혀 제공하지 않습니까? – davidfurber

+0

아니요 getTowns()는 마을을 얻는 데 사용됩니다. 검색 관리자가 내게 아무것도주지 않습니다. – sponturious

답변

0

슬림 그들이 제공하고있는 순서대로 경로를 일치합니다. 게시 한 두 경로 모두 동일한 HTTP 메소드를 사용하고 동일한 끝점을 가리 키므로 결과는 getTowns입니다. 경로 중 하나의 이름을 변경해야합니다.