$ _POST不工作?困惑?

时间:2013-01-08 01:42:02

标签: php pdo

根据会员的意见,我放弃了mysql_功能并查看了PDO。

我认为id是一个简单的页面开始播放,但我想我现在很简单......

我在这里遗漏了什么吗?现在已经很晚了,但我无法解决为什么这不起作用。

PHP:

<?php

session_start();

include"dbconnect.php";

$query = "SELECT * FROM user WHERE username=?";
$statement = $db->prepare($query);

if ($_POST['submit']){

    if ($_POST['name'] === ""){
        echo "Please enter a name";
    }else{

$user=$_POST['name'];


$statement->execute(array($user));
$fuser = $statement->fetchObject();

}
}

?>

HTML:

<body>
<form method="post" action="">  
<table width="400" border="1" cellspacing="0" cellpadding="0">
  <tr>
    <td>enter username here</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td><input name="name" id="name" type="text" maxlength="20" /></td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td><input name="submit" id="submit" type="button" value="submit" /></td>
    <td><? echo "$fuser->online" ?></td>
    <td>&nbsp;</td>
  </tr>
</table>
</form>
</body>

我正确连接到数据库,因为如果删除此部分:

if ($_POST['submit']){

    if ($_POST['name'] === ""){
        echo "Please enter a name";
    }else{

$user=$_POST['name'];

并将$user=$_POST替换为$user="Mike";

它会显示Mikes的详细信息。

有人可以帮忙吗?

编辑:在此处重新阅读&gt; _&lt;

后立即发现问题

我的提交按钮为type = button,应该是= submit ...

2 个答案:

答案 0 :(得分:1)

if(isset($_POST['somename'])
{
//dosomething
}

您必须使用返回issettrue的{​​{1}}。

答案 1 :(得分:0)

查看HTML,试试这个:

<tr>
    <td><input name="submit" id="submit" type="submit" value="submit" /></td>
    <td><? echo "$fuser->online" ?></td>
    <td>&nbsp;</td>
</tr>

然后,当您单击按钮时,表单将实际提交。

//编辑 正如mandouh所说,我也建议将=== ""更改为isset()