Ich möchte eine Liste der Benutzer dynamisch anzeigen, aber es funktioniert nicht. Ich testete die Abfrage selbst und es funktioniert gut, aber es zeigt immer noch nichts. Dies ist das SkriptAjax mit Symfony3
<script>
function showUser() {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("user-list-div").innerHTML = xmlhttp.responseText;
}
};
xmlhttp.open("GET","{{ path('ajax_update')}}",true);
xmlhttp.send();
}
</script>
Dies ist die Controller-Aktion:
public function searchUsersAction(Request $request)
{
/*$em = $this->getDoctrine()->getManager();
$request = $this->get('request');*/
$projectName = $request->get('projectName');
echo($projectName);
//$projectId=$this->getDoctrine()->getRepository('SocialProMeetingBundle:meetingUser')->findName($projectName);
//echo(count($projectId));
//foreach($projectId as $pId) {
//$projectId->getPId();
$pus = $this->getDoctrine()->getRepository('SocialProMeetingBundle:meetingUser')->findProjectUsers($projectName);
//}
$response = "<select class=\"select2_multiple form-control\" multiple=\"multiple\">";
foreach($pus as $user){
$response . "<option>" . $user . "</option>";
}
$response = $response."</select> ";
return new Response($response);
//return($pus);
//call repository function
}
und dies ist die Abfrage
public function findProjectUsers($projectName){
$query=$this->getEntityManager()
->createQuery(
"SELECT u.firstName FROM SocialProDefaultBundle:User u, SocialProProjectBundle:Project p, SocialProProjectBundle:ProjectUser pu WHERE u.id = pu.user AND p.id=pu.project AND p.name='$projectName'");
return $query->getResult();
}
Überprüfen Sie bitte Ihre Apache/Nginx/PHP Logs auf Fehler. –
Ich weiß nicht wovon du sprichst. Ich arbeite mit phpMyAdmin auf dem Wamp-Server. Ich habe die Abfrage getestet und das korrekte Ergebnis zurückgegeben @michail_w –