2016-05-19 17 views
-3

Ich habe 3 Tabellen in meiner Datenbank (standards, courses,). Ich möchte Fname und gender von Tabelle im ausgewählten 'Standard' und 'Kurs' aus Drop-down - angezeigt - aber die Schaltfläche "Senden" scheint nicht zu funktionieren. Der Code ist wie folgt. Ich bin sicher, dass es in die Datenbank als Dropdown Menü für ‚Kurse‘ verbunden ist und ‚Standards‘ Arbeit:Daten können nicht aus der Datenbank angezeigt werden

<html> 
    <head> 
    <title>Courses</title> 
    <link rel="stylesheet" type="text/css" href="css/style.css"> 
    </head> 
    <body> 
    <div id="container"> 
     <div id="wrapper"> 
      <h1> Students</h1> 
       <div id="data"> 
      <form action="index.php" method="POST"> 
     <select name="standards"> 
      <option>Standard</option> 
      <?php 
      include 'includes/dbconnect.php'; 
      $query1 = "SELECT * FROM standards"; 
      $result1 = mysql_query($query1); 
      while($rows1 = mysql_fetch_array($result1)){ 
       $standardID = $rows1['id']; 
       $rowsData1 = $rows1['standardName']; 

      ?> 
      <option value="<?php echo $standardID; ?>"> 
     <?php 
      echo $rowsData1; ?></option> 
     <?php 
     } 
    ?> 
    </select> 
    </div> 
    <div id="data2"> 
    <select name="courses"> 
    <option>Courses</option> 
     <?php 
     $query2 = "SELECT * FROM courses"; 
     $result2 = mysql_query($query2); 
     while($rows2 = mysql_fetch_array($result2)){ 
       $coursesID = $rows2['id']; 
       $rowsData2 = $rows2['courseName']; 
      ?> 
      <option value="<?php echo $courseID;?>"> 
     <?php echo $rowsData2; ?></option> <?php }?> 
    </select> 
    </div> 

    <div id="submit"> 
    <input type="submit" name="submit" id="submit" value="submit"/> 

 <table border="1" id="table1"> 
     <tr> 
      <th>Student Name</th> 
      <th>Gender</th> 
     </tr> 

     <?php 
     if(isset($_POST['submit'])){ 
     $standardName = $_POST['standards']; 
     $courseName = $_POST['courses']; 
     $query3 = "SELECT students.Fname, students.gender 
      FROM students 
      WHERE students.standardID = '$standardName' 
      AND students.courseID = '$courseName'"; 
     $result3 = mysql_query($query3); 
     while($rows3 = mysql_fetch_array($result3)){ 
       //$dataID = $rows3['id']; 
       $studentName = $rows3['FName']; 
       $gender = $rows3['gender']; 
     ?>  
     <tr> 
      <td><?php echo $studentName; ?></td> 
      <td><?php echo $gender; ?></td> 
      <tr> 
      <?php 
      } 
      } 
      ?> 
      </table> 

      </div> 
     </div> 
     </body> 
     </html> 
+0

1) Sie sollten Ihre Frage als "php" und "mysql" beschriften - 2) Haben Sie diese SQL-Anfragen mit einem Tool wie PHPmyAdmin getestet? - 3) Sie müssen Ihr dbconnect nur einmal pro PHP-Skript aufrufen, wenn Sie die Verbindung zur Datenbank zwischenzeitlich nicht schließen – raphv

+0

Danke raphv- ja ich habe auf phpmyadmin abgefragt und es hat funktioniert ... – Ketchup

+4

** Gefahr **: Sie verwenden [eine ** veraltete ** Datenbank-API] (http://stackoverflow.com/q/12859942/19068), die [entfernt] wurde (http://php.net/manual/en/mysql.php)) von PHP. Sie sollten einen [modernen Ersatz] (http://php.net/manual/en/mysqlinfo.api.choosing.php) auswählen. Sie sind anfällig für [SQL injection attacks] (http://bobby-tables.com/) **, dass eine moderne API es einfacher machen würde [zu verteidigen] (http://stackoverflow.com/questions/60174/ Best-Way-zu-verhindern-sql-injection-in-php) von selbst. – Quentin

Antwort

0

in einem Formular-Tag mit Post als Verfahren die Eingabeelemente Beschriften. Eingabeelemente mit dem Typ submit werden für die Einreichung von Formularen verwendet.

+0

Danke Rajesh meinst du

Ketchup

+0

Ich habe diese und hinzugefügt aber immer noch nicht funktioniert, aber ich schätze Ihre Hilfe – Ketchup

+0

Ketchup, ist das Formular eingereicht? Wird die Seite neu geladen, nachdem Sie auf Senden geklickt haben? –

0

Sie machen nur etwas mit den übermittelten Formulardaten, wenn diese Daten ein Feld submit enthalten.

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

Sie haben jedoch:

<input type="submit" name="submit" id="submit"/> 

Ihre Submit-Button keinen Wert haben, so wird nichts für sie in den Formulardaten enthalten sein.

+0

danke Quentin Ich habe den Wert = "submit" hinzugefügt ... was glaubst du sonst fehlt/falsch, damit es funktioniert – Ketchup

Verwandte Themen