PHP'PHP_SELF'的问题

时间:2010-03-25 18:41:05

标签: php mysql

我遇到了一些麻烦。这似乎不是什么大问题,但我创建了一个用户可以编辑MySQL数据库的页面。一旦他们点击提交,它应该在if语句中处理php并更新echo 1记录。问题是它不等待回应声明。它似乎忽略了我写if的方式并显示整个页面。任何人都可以看到我哪里出错了。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<?php require("serverInfo.php"); ?>
<?php
    $res = mysql_query("SELECT * FROM cardLists order by cardID") or die(mysql_error()); 
    echo "<select name = 'Cards'>"; 
    while($row=mysql_fetch_assoc($res)) { 
        echo "<option value=\"$row[cardID]\">$row[cardID]</option>"; 
    } 
    echo "</select>";
?>
Amount to Add: <input type="text" name="Add" />
<input type="submit" />
</form>

<?php
if(isset($_POST['submit']));
{
    require("serverInfo.php");
mysql_query("UPDATE `cardLists` SET `AmountLeft` = `AmountLeft` + ".mysql_real_escape_string($_POST['Add'])." WHERE `cardID` = '".mysql_real_escape_string($_POST['Cards'])."'");
 mysql_close($link);
 echo "1 record Updated";
}
?>
<br />
<a href="index.php"> <input type="submit" name="main" id="main" value="Return To Main" /></a>
</body>
</html>

4 个答案:

答案 0 :(得分:4)

if(isset($_POST['submit']));

1)之后不应该有分号。

2)$_POST['submit']未设置。您必须在提交按钮上设置名称并为其指定值。只需将类型设置为“提交”,就不会在PHP中返回$_POST['submit']的值。

答案 1 :(得分:2)

;声明之后,你有一个if

答案 2 :(得分:0)

我注意到你有两个提交按钮,我假设你正在使用第一个按钮。

尝试给它一个name="submit"和一个值。

答案 3 :(得分:-1)

当然没有。 PHP在服务器方面运行,而不是在浏览器中运行! 打开您的页面源。没有PHP。没什么好等的。 您需要另一个页面才能将表单发送到。

是一件大事。它是了解网络运作方式的一个方法。

相关问题