2014-03-18 2 views
0

선택 변경 이벤트를 통해 시작된 저장 프로 시저에 문제가 있습니다. 내 문제는 내가 선택한 항목의 값을 가져올 수 있지만 저장 프로 시저에 인수로 전달하고 바인딩 할 때 프로 시저가 시작되지 않습니다. 나는 그것을 정적으로 시작하려고 노력했고 그것은 작동합니다. 이미 dataType 및 Mime Type 및 기타 내용을 변경하려고했지만 막혔습니다. 다음은 코드입니다 :PHP/AJAX 저장 프로 시저 문제

$groupe = new Groupe(); 

if (isset($_POST['value'])){ 

    $param = $_POST['name']; 

    $storedProcedure = 'Call listeTitresParGroupe(:groupes)'; 

    $query = $groupe->prepare($storedProcedure); 
    $query->bindParam(':groupes', $param, PDO::PARAM_STR); 


    $query->execute(); 

    echo $_POST['name'].' -> '.$param.' '.$storedProcedure; 
    echo '<table class="table table-hover col-lg-12">'; 

    while ($resultat = $query->fetch()){ 

     echo'<tr><td class="col-md-12">'.$resultat[0].'</td></tr>'; 

    } 
    echo '</table>'; 
} 

아약스 코드 : 누군가가 작동하지 않는 이유 아이디어가있는 경우

var selectedText = {value: $('#groupe option:selected').text(), name:$('#groupe option:selected').text()}; 

    $.ajax({ 

     url: './storedProcedures.php', 
     type: 'POST', 
     dataType: 'text', 
     mimeType : 'text/html; charset=UTF-8', 
     data: selectedText 

    }) 
    .done(function(data){$('#titres').html(data);}) 
    .fail(function() { 

     console.log("Erreur"); 
     alert('AJAX query has failed'); 

    }) 
    .always(function() { 

     console.log("Terminé"); 

    }); 

, 나는

+0

아약스에는 저장 프로 시저가 없습니다. –

답변

-1

그냥 그것을 시도하는 것은 매우 감사하게 될 거라고 다른 방법으로 바인드를 제거해보십시오.

$query->bindParam(':groupes', $param, PDO::PARAM_STR); 

그리고 param을

$query->execute(array(':groupes'=>$param)); 

코드 줄이 적어서 시도 할 가치가 있습니다.

+0

와 함께 일하는 한 영역을 선택하십시오. 가치가 없습니다. –

+0

MinnesotaSlim 답장을 보내 주셔서 감사합니다. 솔루션을 사용해 보았지만 여전히 작동하지 않습니다. 아무도 아이디어가 있습니까? 정말 문제는 매개 변수의 실패 바인딩 때문입니다 ... –