Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- I want to database fields in an array to link with each other and then display the information
- Answer Table:
- QuestionId AnswerId AnswerContent AnswerCorrect
- 1 1 Leeds 1 (true)
- 2 2 Manchester 0 (false)
- 3 3 Birmingham 0 (false)
- StudentAnswer Table:
- StudentAnswer QuestionId
- 2 1
- 3 1
- 1 1
- <table border='1'>
- <tr>
- <th>Session ID</th>
- <th>Question Number</th>
- <th>AnswerContent</th>
- <th>StudentAnswer</th>
- <th>Student ID</th>
- </tr>
- <?php
- while ($row = mysql_fetch_array($result)) {
- echo "
- <tr>
- <td>{$row['SessionId']}</td>
- <td>{$row['QuestionNo']}</td>
- <td>{$row['AnswerContent']}</td>
- <td>{$row['StudentAnswer']} </td>
- <td>{$row['StudentId']}</td>
- </tr>";
- }
- ?>
- </table>
- SELECT * FROM Question q
- INNER JOIN StudentAnswer sa ON q.QuestionId = sa.QuestionId
- JOIN Answer a ON sa.QuestionId = a.QuestionId
- WHERE
- (CorrectAnswer = '1')
- ORDER BY $orderfield ASC";
- Session ID Question Number AnswerContent StudentAnswer Student ID
- ABB 1 Leeds 1 u0867587
- ABB 1 Leeds 3 u1231231
- Session ID Question Number AnswerContent StudentAnswer Student ID
- ABB 1 Leeds Leeds u0867587
- ABB 1 Leeds Birmingham u1231231
- <form action="exam_QA.php" method="post" name="sessionform"> <!-- This will post the form to its own page"-->
- <p>Session ID: <input type="text" name="sessionid" value="<?php echo $sessionid; ?>" /></p> <!-- Enter Session Id here-->
- <p>Question Number: <input type="text" name="questionno" value="<?php echo $questionno; ?>" /></p> <!-- Enter Question Number here-->
- <p>Student Username: <input type="text" name="studentid" value="<?php echo $studentid; ?>" /></p> <!-- Enter User Id here-->
- <p>Order Results By:
- <select name="orderfield">
- <option value="ordersessionid"<?php if ($orderfield == 'q.SessionId') echo ' selected="selected"' ?>>Session ID</option>
- <option value="orderquestionno"<?php if ($orderfield == 'q.QuestionNo') echo ' selected="selected"' ?>>Question Number</option>
- <option value="orderstudentid"<?php if ($orderfield == 'sa.StudentId') echo ' selected="selected"' ?>>Student Username</option>
- <option value="orderwhole"<?php if ($orderfield == 'q.SessionId AND q.QuestionNo') echo ' selected="selected"' ?>>Session ID and Question Number</option>
- </select>
- </p>
- <p><input type="submit" value="Submit" name="submit" /></p>
- </form>
- <?php
- if (isset($_POST['submit'])) {
- $query = "
- SELECT *, a2.AnswerContent as StudentAnswerContent
- FROM Question q
- INNER JOIN StudentAnswer sa ON q.QuestionId = sa.QuestionId
- LEFT JOIN Answer a ON (sa.QuestionId = a.QuestionId AND a2.CorrectAnswer = 1)
- LEFT JOIN Answer a2 ON (sa.QuestionId = a2.QuestionId AND a2.AnswerId = sa.StudentAnswer)
- WHERE
- ('".mysql_real_escape_string($sessionid)."' = '' OR q.SessionId = '".mysql_real_escape_string($sessionid)."')
- AND
- ('".mysql_real_escape_string($questionno)."' = '' OR q.QuestionNo = '".mysql_real_escape_string($questionno)."')
- AND
- ('".mysql_real_escape_string($studentid)."' = '' OR sa.StudentId = '".mysql_real_escape_string($studentid)."')
- ORDER BY $orderfield ASC";
- SELECT
- q.* ,
- sa.*,
- a.*,
- a2.AnswerContent as StudentAnswerContent
- FROM
- Question q
- INNER JOIN
- StudentAnswer sa ON q.QuestionId = sa.QuestionId
- LEFT JOIN
- Answer a ON (sa.QuestionId = a.QuestionId AND a2.CorrectAnswer = 1)
- LEFT JOIN
- Answer a2 ON (sa.QuestionId = a2.QuestionId AND a2.AnswerId = sa.StudentAnswer)
- ORDER BY $orderfield ASC";
- $row['StudentAnswerContent']
- SELECT
- SessionId,
- q.QuestionNumber,
- a.AnswerContent,
- a2.AnswerContent as StudentAnswerContent,
- StudentId
- FROM Question q
- INNER JOIN StudentAnswer sa ON q.QuestionId = sa.QuestionId
- JOIN Answer a ON sa.QuestionId = a.QuestionId
- JOIN Answer a2 ON sa.StudentAnswer = a2.AnswerId
- WHERE
- (CorrectAnswer = '1')
- ORDER BY $orderfield ASC";
Add Comment
Please, Sign In to add comment