我试图根据用户使用php发布的数据来获取一行。 以下是代码。 是他们的一些语法错误?
Poll name: <input type="text" name="question" /><br />
$question=$_POST['question'];
$sql = "INSERT INTO poll_question(question)
VALUES('" . $_POST['question'] . "')";
$result = mysql_query($sql);
$query=mysql_query("select * from poll_question where question = '$question'");
$numrows=mysql_num_rows($query);
由于numrows的值仍为0,因此不会获取任何行。问题出在哪儿? 我已连接到数据库,“插入”查询运行良好,只有选择查询不起作用。
答案 0 :(得分:0)
使用mysql-error()
检查PHP引擎发生的错误。我认为你没有连接数据库。
//connect the databse
$question=$_POST['question'];
$q=mysql_query("select * from poll_question where question='$question'") or die(mysql_error());
if($q) //check the $q have any value
{
$sql = "INSERT INTO poll_question(question)
VALUES('" . $_POST['question'] . "')";
$result = mysql_query($sql) or die(mysql_error());
// query for fetching records
$query=mysql_query("select * from poll_question where question = '$question'") or die(mysql_error());
$numrows=mysql_num_rows($query);
if($numrows)
{
echo "have rows!";
}
else
{
echo "does not have rows";
}
}
else
{
echo " question is already exist";
}
// form part
?>
Poll name: <input type="text" name="question" /><br />
<input type-"submit" name="submit" value="Submit">
答案 1 :(得分:0)
您必须传递数据库连接才能执行查询。例如,
// Connect to the database
$dbc = mysqli_connect('hostname', 'username', 'password', 'database');
$sql = "query text";
// pass the query to the database connection
$result = mysqli_query($dbc, $sql);
// close the database connection when you're done
mysqli_close($dbc);