2013-04-03 4 views
-2

Последний шаг в PHP/MySQL проекта, что я работаю долго и тяжело сводится к тому, что позволяет учителю видеть результаты каждого теста берут студентов. Когда дело дошло до того, что студенты увидели свои собственные результаты - это было просто, конечно, они использовали свой SessionID и значение столбца теста, который они выбрали.POST несколько значений из одного варианта

Теперь, когда учитель входит, я могу продолжать использовать тот же метод для QuizID, который мы хотим отступить ... но UserID остается для меня загадкой. В этом коде:

$sql = "SELECT Complete.UserName, Complete.UserID, Complete.QuizID, Quiz.QuizName 
     FROM Complete 
     INNER JOIN Quiz 
     ON Complete.QuizID=Quiz.QuizID"; 
       $result = mysql_query($sql); 
       while($row = mysql_fetch_array($result)) 
       { 
        echo "<option value=\"".$row['QuizID']."\">".$row['QuizName']." - ".$row['UserName']."</option>\n "; 
       } 
       if (!mysql_query($sql,$con)){ 
       die('Error: ' . mysql_error());} 

Есть ли способ сделать так, чтобы в него был передан не только QuizID, но и UserID? Я экспериментировал с несколькими идеями, которые я видел здесь и в других местах, но без такой удачи.

+3

[** Пожалуйста, не используйте 'mysql_ *' функции в новом коде **] (http://bit.ly/phpmsql). Они больше не поддерживаются [и официально устарели] (https://wiki.php.net/rfc/mysql_deprecation). См. [** красное поле **] (http://j.mp/Te9zIL)? Узнайте о [* подготовленных операторах *] (http://j.mp/T9hLWi) и используйте [PDO] (http://php.net/pdo) или [MySQLi] (http://php.net/ mysqli) - [эта статья] (http://j.mp/QEx8IB) поможет вам решить, какой из них. Если вы выберете PDO, [здесь хороший учебник] (http://www.brightmeup.info/article.php?a_id=2). –

+0

Спасибо, уведомление! Да, в будущем я перехожу к MySQLi, но я только узнал об этом на полпути и не имел на это времени, чтобы все переработать, чтобы переключиться на SQLi. Так что имейте это в виду! – Mathematical

+1

просто добавьте 'i' в' mysql' чувак. Сколько усилий требуется? – itachi

ответ

1

на основе ваших комментариев, если это ваше значение на пост

echo "<option value=\"".$row['QuizID'].",".$row['UserID']."]"\">".$row['QuizName']." - ".$row['UserName']."</option>\n "; 

, то вы можете использовать взрываются, чтобы извлечь quizid и идентификатор

$tempval = explode(',',$_POST['QuizID']); // is assume your html field id/name is QuizID 
$quizId = $tempval[0]; 
$userId = $tempval[1]; 

где положение вашего запроса в PHP может быть:

$sql = "SELECT * FROM Results WHERE QuizID ='".$quizId."' AND UserID ='".$userId."'"; 
+0

Это было бы его! Большое спасибо. Теперь время, чтобы очистить и сделать переход на SQLi до окончательного развертывания в пятницу. Еще раз спасибо. – Mathematical

Смежные вопросы