2012-02-15 202 views
1

我想記錄一個用戶輸入值,同時從另一個表中複製單個數據。可能嗎?多條插入語句

這裏是我的代碼:

$sql="INSERT INTO grades (studentnumber,subjectcode) 
VALUES 
('$_POST[studentnumber]','$_POST[subjectcode]')"; 

$sql="INSERT INTO grades (course) SELECT course FROM students WHERE studentnumber= '$_POST[studentnumber]'"; 

if (!mysql_query($sql,$con)) 
    { 
    die('Error: ' . mysql_error()); 
    } 
echo "<script type='text/javascript'>alert('Record Successfully Added'); location.href = '../instructor/cvsu-sis_students.php';</script>"; 

在此先感謝和抱歉,我的基本問題。

+3

[SQL注入](HTTP ://en.wikipedia.org/wiki/Sql_injection)。瞭解它! – deceze 2012-02-15 09:36:16

回答

0

您可以在一個查詢做到這一點,如果這就是你問什麼,還記得逃脫字符串,以避免SQL注入:

$P_studentnumber=mysql_real_escape_string($_POST['studentnumber']); 
$P_subjectcode=mysql_real_escape_string($_POST['subjectcode']); 

$sql="INSERT INTO grades (studentnumber,subjectcode,course) SELECT '$P_studentnumber','$P_subjectcode',course FROM students WHERE studentnumber='$P_studentnumber'"; 

if (!mysql_query($sql,$con)) 
{ 
    die('Error: ' . mysql_error()); 
} 
echo "<script type='text/javascript'>alert('Record Successfully Added'); location.href = '../instructor/cvsu-sis_students.php';</script>"; 
0

這是可能的。您可以使用UNION運算符在一個查詢中發送多個過程。

閱讀:W3schools

+0

注意,w3schools的教程經常包含不好的做法。他們的PHP部分特別恐怖且充滿安全漏洞。你應該忘記它們存在並找到更好的資源。 – Charles 2012-02-15 19:05:05