$PHP_在页面加载后立即自动执行

$PHP_在页面加载后立即自动执行,php,mysql,html,Php,Mysql,Html,我创建了一个HTML页面,将数据输入MySQL数据库。我在同一个HTML页面中嵌入了PHP代码。这是密码 <html> <head> </head> <body> <?php /* Database connection operations */ require_once("db_handler.php"); $conn = iniCon(); $db = selectDB($conn); ?> <b id="loc_

我创建了一个HTML页面,将数据输入MySQL数据库。我在同一个HTML页面中嵌入了PHP代码。这是密码

<html>
<head>
</head>
<body>

<?php

/* Database connection operations */
require_once("db_handler.php");

$conn = iniCon();
$db = selectDB($conn);

?>

<b id="loc_caption_1">Enter a new location</b>
<div id="loca">
    <form name="locForm" action="<?php echo $PHP_SELF; ?>" method="post" >
        <table width="300" border="0">
          <tr>
            <td>Location ID</td>
            <td><input type="text" name="lid" readonly="readonly" value="<?php echo $new_id; ?>" style="text-align:right" /></td>
          </tr>
          <tr>
            <td>Code</td>
            <td><input type="text" name="code" style="text-align:right" /></td>
          </tr>
          <tr>
            <td>Location</td>
            <td><input type="text" name="loc" style="text-align:right" /></td>
          </tr>
        </table>
</div>
<br/>
<div id="buttons">
    <input type="reset" value="Clear" /> <input type="submit" value="Save" />
</div>
    </form>

<?php

/* Saving new record */
$id = $_POST["lid"];
$code = $_POST["code"];
$location = $_POST["loc"];

$query = "INSERT INTO locations(LID, Code, Location) VALUES('$id', '$code', '$location')";

if (!mysql_query($query, $conn))
{
    die("Error " . mysql_error());
}
else
{
    echo "<br/><br/>";
    echo "1 record added successfully!";
    echo "<meta http-equiv=\"refresh\" content=\"3;URL=locations.php\">";
}

mysql_close($conn);

?>

</body>
</html>

输入新位置

您需要检查是否提交了任何数据,然后才能开始工作:

if (!empty($_POST)) {
    ...
}

您需要检查是否提交了任何数据,然后才能开始工作:

if (!empty($_POST)) {
    ...
}

保存数据的代码应该在
if(!empty($\u POST))
块中。

保存数据的代码应该在
if(!empty($\u POST))
块中。

您只需检查是否提交即可

<?php
if(isset($_POST['submit']))  // Check if form submitted or not
{
  --- //Code for insert to database.
}
?>

您只需检查是否提交即可

<?php
if(isset($_POST['submit']))  // Check if form submitted or not
{
  --- //Code for insert to database.
}
?>

首先为post按钮命名,如

<input type="submit" value="Save" name="GoBtn" />

首先给post按钮命名,如下所示

<input type="submit" value="Save" name="GoBtn" />

将php代码放在IF中

if(isset($_POST["submit"])){ // if form is submitted
 // do insert things
}

将php代码放在IF中

if(isset($_POST["submit"])){ // if form is submitted
 // do insert things
}

php页面被解释为一个流:它意味着首先显示表单,然后执行 php代码部分,插入空值(我猜)

在脚本部分,您必须使用以下内容测试您是否处于表单显示上下文或表单提交上下文中:

if ($_POST) {
   // form submit context
}

php页面被解释为一个流:它意味着首先显示表单,然后执行 php代码部分,插入空值(我猜)

在脚本部分,您必须使用以下内容测试您是否处于表单显示上下文或表单提交上下文中:

if ($_POST) {
   // form submit context
}

将提交按钮标记更改为:

<input type="submit" name="submitForm" value="Save" />

将提交按钮标记更改为:

<input type="submit" name="submitForm" value="Save" />
  • 在插入数据库之前,必须检查$\u POST中是否有可用的变量

    如果(!empty($_POST[“lid”]){
    /*保存新记录*/ $id=mysqli\u real\u escape\u字符串($\u POST[“lid”]); $code=mysqli\u real\u escape\u字符串($\u POST[“code”]); $location=mysqli\u real\u escape\u字符串($\u POST[“loc”])

    $query=“插入位置(LID、代码、位置)值('$id'、'$Code'、'$Location')”

    if(!mysql_query($query,$conn)) { die(“Error.mysql_Error()); } 其他的 { 回声“

    ”; echo“成功添加1条记录!”; 回声“; }

    mysql_close($conn); }

  • 使用mysqli_*函数,mysql_*函数现在已经贬值

  • 在插入数据库之前,请使用mysqli_real_escape_string()防止sql注入
  • 您应该将此数据库插入区域移动到页面顶部,并使用“header('location:locations.php');”进行重定向
  • 在插入数据库之前,必须检查$\u POST中是否有可用的变量

    如果(!empty($_POST[“lid”]){
    /*保存新记录*/ $id=mysqli\u real\u escape\u字符串($\u POST[“lid”]); $code=mysqli\u real\u escape\u字符串($\u POST[“code”]); $location=mysqli\u real\u escape\u字符串($\u POST[“loc”])

    $query=“插入位置(LID、代码、位置)值('$id'、'$Code'、'$Location')”

    if(!mysql_query($query,$conn)) { die(“Error.mysql_Error()); } 其他的 { 回声“

    ”; echo“成功添加1条记录!”; 回声“; }

    mysql_close($conn); }

  • 使用mysqli_*函数,mysql_*函数现在已经贬值

  • 在插入数据库之前,请使用mysqli_real_escape_string()防止sql注入
  • 您应该将此数据库插入区域移动到页面顶部,并使用“header('location:locations.php');”进行重定向

  • 根据发布数据的存在情况执行PHP代码块。 对于细化,您甚至可以从语义上测试发布的值

    if ( (array_key_exists('lid', $_POST) 
    AND  (array_key_exists('code', $_POST) 
    AND  (array_key_exists('loc', $_POST) ) {
       then execute PHP code block
    }
    

    根据发布数据的存在情况执行PHP代码块。 对于细化,您甚至可以从语义上测试发布的值

    if ( (array_key_exists('lid', $_POST) 
    AND  (array_key_exists('code', $_POST) 
    AND  (array_key_exists('loc', $_POST) ) {
       then execute PHP code block
    }
    

    if($\u-SERVER['REQUEST\u-METHOD']=='POST'){…}
    if($\u-SERVER['REQUEST\u-METHOD']=='POST'){…}
    现在在这里粘贴了很多检测表单处理上下文的方法:)现在在这里粘贴了很多检测表单处理上下文的方法:)是的,我知道还有很多事情要做,而且我还在学习PDO。这不是一个大项目,它只是一个小型前端,我正在为一个MySQL数据库表开发。但谢谢你的建议。:)是的,我知道还有很多事情要做,但我仍在学习PDO。这不是一个大项目,它只是一个小型前端,我正在为一个MySQL数据库表开发。但谢谢你的建议。:)