0
我更喜歡在php中使用它,而不是在mysqli中,因爲時間。sql插入語句語法
如何在MySQL中使用php插入部分列?
例如,我在sql中的列表是:courseid,code,title,cr,先決條件,std_id,狀態,等級。我使用表格來獲取php中的數據,但狀態和等級都沒有數據,因爲我希望用戶能夠通過它們查看每個學生從課程列表中完成的課程。 我希望用戶將他們插入與特定數據固定的其他列。 我在這段代碼中面臨的問題是插入數據來到新記錄中,我想只插入兩列,這兩列是狀態和和當然名字的等級。
如何插入在短短的地位和品位
enter code here
<?php
error_reporting(0);
include('config.php');
$sql="select * from studyplan";
$result=mysql_query($sql);
while ($row = mysql_fetch_array($result)){
$id=$row['courseid'];
$code=$row['code'];
$Title=$row['title'];
$cr=$row['cr'];
$pre=$row['prerequisite'];
$std=$row['std_id'];
$status=$row['status'];
$grade=$row['grade'];
echo "<tr class='edit_tr' id='$id'>
<td class='edit_td'>
<span class='text' id='one_$id' >$id </span>
</td>
<td class='edit_td'>
<span class='text' id='one_$id' >$code </span>
</td>
<td class='edit_td'>
<span class='text' id='two_$id' >$Title</span>
</td>
<td class='edit_td'>
<span class='text' id='three_$id' >$cr</span>
</td>
<td class='edit_td'>
<span class='text' id='three_$id' >$pre</span>
</td>
<td class='edit_td'>
<span class='text' id='three_$id' >$std</span>
</td>
<td class='edit_td'>
<span class='text' id='three_$id' >$status</span>
<select name='status' id='status'>
<option value=''>Completed</option>
<option value='B'>Not complate</option>
</select>
</td>
<td class='edit_td'>
<span class='text' id='three_$id' >$grade</span>
<select name='grade' id='grade'>
<option value=''>A</option>
<option value='B'>B</option>
<option value='C'>C</option>
<option value='D'>D</option>
<option value='F'>F</option>
</select>
</td>
</tr>";
}
echo '<input type="hidden" name="courseid" value="' . $id . '" />';
?>
<p align="center"><a href="year.html">Go Back</a> </p>
<p><input type="submit" value="Add Link"></p>
</tr>
</table>
</form>
</div>
</body>
</html>
<?php
if ($_SERVER['REQUEST_METHOD'] == "POST") {
$status=$_POST['status'];
$grade=$_POST['grade'];
Insert語句
$SQL = " INSERT INTO studyplan ";
$SQL = $SQL . " (status, grade) VALUES ";
$SQL = $SQL . " ('$status', '$grade') ";
$result = mysql_db_query($db,"$SQL",$cid);
if (!$result) {
echo("ERROR: " . mysql_error() . "\n$SQL\n"); }
echo ("New Link Added\n");
}
mysql_close($cid);
?>
我希望它像小圖片
如果可以,你應該[停止使用'mysql_ *'函數](http://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php)。 [這些擴展](http://php.net/manual/en/migration70.removed-exts-sapis.php)已在PHP 7中刪除。瞭解[prepared](http://en.wikipedia。org/wiki/Prepared_statement)語句[PDO](http://php.net/manual/en/pdo.prepared-statements.php)和[MySQLi](http://php.net/manual/en/mysqli .quickstart.prepared-statements.php)並考慮使用PDO,[它確實不難](http://jayblanchard.net/demystifying_php_pdo.html)。 –
你應該真的移動到PDO或mysqli並準備語句以避免sql注入。這也將解決你目前的問題,這是你可能sql注入自己,並從來沒有找到匹配,因爲'$ id'後面的空間 – jeroen
[您的腳本存在SQL注入攻擊的風險。](http://stackoverflow.com/問題/ 60174 /如何-可以-I-防止-SQL注入式的PHP) –