2016-10-27 1 views
0

Ich bin in der Lage, die Ergebnisse von der Abfrage zu erhalten, indem Sie zwar Ajax, aber anstelle der Ergebnisse im div-Tag, das auf mainInstructor2.php angezeigt wird, es auf einer anderen Seite anzeigt, die in Aktion aufgelistete InstructorStudent.php. Jede mögliche Hilfe würde geschätzt :)Ajax Wird nicht im div-Tag angezeigt

Hier ist mein HTML:

<p id ="byStudent"> Search all the tutoring sessions by student</p> 
     <form id="SearchByStudent" action ="InstructorStudent.php" method="post"> 
      Student Username <input = "textbox" type="text" name ="studentSearch" id="studentSearch" value="" required /> 
      <button class ="button" type="submit" name ="seachStudentSubmit" id ="searchStudentSubmit" value="submit"> Submit </button> 
     </form> 

     <div id ="searchByStudentContainer"> 
     </div> 

Hier ist mein javascript:

<script> 

      $(SearchByStudent).submit(function(event){ 
       event.preventDefault(); 
       var form = $(this).serialize(); 
       var url = $form.attr('action'); 

       var posting = $.post(url, { studentSearch: $('input[name="studentSearch"]').val() }); 

       posting.done(function(data) { 
        var content = data; 
        $(searchByStudentContainer).html(content); 
       }); 
      }); 


    </script> 

Hier ist meine php:

<?php 

    session_start(); 

    include_once("Connection.php"); 

    $studentSearch = $_POST['studentSearch']; 

    $sql1 = "SELECT Students.StudentUsername 
      FROM Students 
      INNER JOIN CLASS_STUDENT 
      ON Students.StudentUsername = CLASS_STUDENT.StudentUsername 
      INNER JOIN Class 
      ON CLASS_STUDENT.ClassID = Class.ClassID 
      INNER JOIN Instructors 
      ON Class.InstructorID = Instructors.InstructorID 
      WHERE Students.StudentUsername = '$studentSearch'"; 


    $result1= mysqli_query($link, $sql1); 

    $resultarr = mysqli_fetch_assoc($result1); 

    $studentSea = $resultarr['StudentUsername']; 

    if(!$studentSea) { 

     echo " 
     <script> 
       alert ('Could not find student on file!'); 
       window.location ='mainInstructor2.php' 
      </script>"; 
    } 
    else { 
    $sql2 = "SELECT Students.StudentUsername, CLASS_STUDENT.Year, CLASS_STUDENT.Semester, TUTOR_STUDENT.Date, 
    TUTOR_STUDENT.TopicCovered, TUTOR_STUDENT.BeginTime, TUTOR_STUDENT.EndTime, TUTOR_STUDENT.TotalMinutes, 
    TUTOR_STUDENT.Categories, TUTOR_STUDENT.TutorUsername 
    FROM Students 
    INNER JOIN CLASS_STUDENT 
    ON Students.StudentUsername = CLASS_STUDENT.StudentUsername 
    INNER JOIN TUTOR_STUDENT 
    ON CLASS_STUDENT.StudentUsername = TUTOR_STUDENT.StudentUsername 
    WHERE Students.StudentUsername = '$studentSearch'"; 

    $result= mysqli_query($link, $sql2); 
      if ($result->num_rows > 0) 
      { 

       echo " 
        <table> 
         <tr> 
          <th>Student Username</th> 
          <th>Year</th> 
          <th>Semester</th> 
          <th>Date</th> 
          <th>Topic Covered</th> 
          <th>Begin Time</th> 
          <th>End Time</th> 
          <th>Total Minutes</th> 
          <th>Category</th> 
          <th>Tutor Username</th> 

         </tr> 
          "; 

          // output data of each row 
       while($row = $result->fetch_assoc()) 
       { 
         echo " 
          <tr> 
           <td>".$row["StudentUsername"]. "</td> 
         "; 
         echo " 
           <td>".$row["Year"]. "</td> 
         "; 
         echo " 
           <td>".$row["Semester"]. "</td> 
         "; 
         echo " 
           <td>".$row["Date"]. "</td> 
         "; 
         echo " 
           <td>".$row["TopicCovered"]. "</td> 
         "; 
         echo " 
           <td>".$row["BeginTime"]. "</td> 
         "; 
          echo " 
           <td>".$row["EndTime"]. "</td> 
         "; 
         echo " 
           <td>".$row["TotalMinutes"]. "</td> 
         "; 
          echo " 
           <td>".$row["Categories"]. "</td> 
         "; 
         echo " 
           <td>".$row["TutorUsername"]. "</td> 
         "; 

         echo "</tr>"; 
            } 
         echo "</table>"; 

       } 
      else 
       echo "This Student doesn't have any tutoring sessions."; 



     mysqli_close($link); 
    } 

?> 
+0

was ist $ form - ist es anderswo initialisiert? –

Antwort

0

Schauen Sie sich diese Linie:

<div id ="searchByStudentContainer"></div> 

$(searchByStudentContainer).html(content); 

searchByStudentContainer ist ID und Sie verwenden # nicht, während Sie darauf verweisen.

So diese Zeile ändern:

$('#searchByStudentContainer').html(content); 
+0

Danke für die Hilfe, aber ich habe diese Einstellung vorgenommen und sie wird immer noch nicht im div-Tag angezeigt. – Alexis

1

versuchen, dies ich denke, u #

posting.done(function(data) { 
 
        var content = data; 
 
        $(#searchByStudentContainer).html(content); 
 
       });

+0

Just gemacht, dass Anpassung und es immer noch nicht funktioniert :( – Alexis

0

document.getElementById verpasst ("searchByStudentContainer") innerHTML- = Inhalt. ;

können Sie versuchen, diese

anstelle dieses

$ (searchByStudentContainer) .html (Inhalt);

+0

Danke, aber das hat auch nicht für mich funktioniert. – Alexis

+0

sind Sie sicher, dass die Buchung erfolgreich –

+0

Ich denke schon, weil die Abfrageergebnisse angezeigt werden, nur auf eine andere Wenn ich auf "Senden" klicke, werden die Ergebnisse nicht auf derselben Seite wie die Schaltfläche "Senden" angezeigt, sondern auf die Seite der Aktions-URL umgeleitet. – Alexis

Verwandte Themen