1

私は2つのテーブルを持っています

  1. question_bank(ques_id、question、answer、a、b、c、d)
  2. random_question_bank(user_id、q1、q2、............、q20)

ユーザーからuser_idを入力しました。

ここで、すべてのuser_idに対してq1、q2、....... q20をques_id(ランダムに)で埋めたいと思います。

コードを手伝ってください。

$result_user = mysql_query("INSERT INTO random_question_bank(user_id) VALUES('".$_SESSION['user_id']."')");
if($result_user)
    echo('<br />user name inserted<br />');
$result = mysql_query("SELECT * FROM question_bank ORDER BY RAND() LIMIT 20");
$q = array();
$i = 1;
while($row = mysql_fetch_assoc($result))
{
    $sql = "INSERT INTO random_question_bank(q.'$i') 
         VALUES('".$row['ques_id']."')
        WHERE user_id ='".$_SESSION['user_id']."'";
    $result_ques = mysql_query($sql);
    $i++;
    if($result_ques)
         echo('<br />q'.$i.'<br />');
    $i++;
}
4

1 に答える 1

0

次のコードを試してください。

$result_user = mysql_query("INSERT INTO random_question_bank(user_id) VALUES('".$_SESSION['user_id']."')");
if($result_user)
echo('<br />user name inserted<br />');
$result = mysql_query("SELECT * FROM question_bank ORDER BY RAND() LIMIT 20");    
$i = 1;
while($row = mysql_fetch_assoc($result))
{
    $sql = "Update random_question_bank set q.'$i' 
     ='".$row['ques_id']."' WHERE user_id ='".$_SESSION['user_id']."'";
$result_ques = mysql_query($sql);
$i++;
if($result_ques)
     echo('<br />q'.$i.'<br />');
$i++;
}

私の知る限り、insertステートメントでwhere句を使用することはできません。それがあなたのために働くことを願っています。

于 2012-07-10T05:52:31.017 に答える