I';我在mysql表中插入一个PHP$_GET变量时遇到问题


I'm having problems insert a PHP $_GET variable into my mysql table

这是一个使用$_GET方法将类别传递给表单的链接

echo '<li><font class = "categories_list"><a href="postform.php?ct=' . $value[4] . '"</a>' . $value[0] . '</font></li>';

在表单中,我尝试检索$_GET变量,它正确地返回

if(isset($_GET['ct'])) 
{
echo $_GET['ct'];
$catname = $_GET['ct'];
}

一旦我尝试插入到Mysql表中,它就不会插入。。

"INSERT INTO almt1(idnum, catname)
    VALUES ('$idnum', '$catname')";

当我插入时,它会作为一个空值

像这样编写查询

"INSERT INTO almt1(idnum, catname)
VALUES ($idnum, $catname)";

或者,

"INSERT INTO almt1(idnum, catname)
VALUES ('".$idnum."', '".$catname."')";

不要忘记安全性。如果您使用的是MySQL,请在GET参数上使用mysql_real_escape_string()

例如:

$catname = mysql_real_escape_string($_GET['catname']);