Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/261.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从“编辑”按钮更新表条目_Php_Html_Sql Server - Fatal编程技术网

Php 从“编辑”按钮更新表条目

Php 从“编辑”按钮更新表条目,php,html,sql-server,Php,Html,Sql Server,有人能告诉我我的问题在哪里吗?这个页面是通过我嵌入在所有条目表中的编辑按钮链接的。但是,它正在将当前数据输入到字段中,并且在我输入新值时不进行更新?谢谢你的帮助 php: > 我建议您进行3项更改: 1.0为表单输入提供从数据库收集的变量的不同名称(例如,代替$firstname Give,但使用$firstname\表单) 2.0您的表单的方法为GET,但您正在使用POST进行更新 3.0您的表单操作页面是edit.php,但您通过GET收集项目id这一事实意味着您的编辑按钮必须链接到某个ed

有人能告诉我我的问题在哪里吗?这个页面是通过我嵌入在所有条目表中的编辑按钮链接的。但是,它正在将当前数据输入到字段中,并且在我输入新值时不进行更新?谢谢你的帮助

php:

>
我建议您进行3项更改:
1.0为表单输入提供从数据库收集的变量的不同名称(例如,代替$firstname Give,但使用$firstname\表单)

2.0您的表单的方法为GET,但您正在使用POST进行更新

3.0您的表单操作页面是edit.php,但您通过GET收集项目id这一事实意味着您的编辑按钮必须链接到某个edit.php?id=$item\u id,因此操作页面应该是edit.php?id=$id


转交您的意见:是的。正是我想象的。因此,对于表单操作,将edit.php替换为edit.php?id=
您的意思是,如果此页面上存在id,则将其显示为paramater。

我没有要求更改您的链接按钮。这是正确的。为了证明它是正确的,请在编辑页面上像这样回显id

如果(isset($\u GET['id'])){

$id=$_GET['id']

echo$id;
退出()

}

然后,在确认id已传递到编辑页面后,可以注释或删除回显行和退出行

现在,在你的表格上,我是说动作应该是这样的

不确定这是否是您的问题,但您有
$\u POST['update']
,但您的表单是
method=“get”
谢谢您的帮助!非常感谢,非常感谢我将进行这些更改,请注意“这是我使用的表单链接,您觉得这样可以吗?您意识到他在html中有一个隐藏的输入,对吗?我现在得到一个未定义的变量:id错误,我已将按钮格式化为echo”
<?php
    include_once("config.php");

    date_default_timezone_set('Europe/London');

    //getting id from url
    $id = $_GET['id'];

    //selecting data associated with this particular id
    $EditQuery = "SELECT * FROM ACW WHERE UserID=$id";

    $results = sqlsrv_query ($conn, $EditQuery);

    while($row = sqlsrv_fetch_array($results, SQLSRV_FETCH_ASSOC))
    {
        $firstname = $row['FirstName'];
        $lastname = $row['LastName'];
        $location = $row['location'];
    }

    if(isset($_POST['update']))
    {   
    $id = $_POST['UserID']; 
    $firstname = $_POST['FirstName'];
    $lastname = $_POST['LastName'];
    $location = $_POST['location'];

    // checking empty fields
    if(empty($firstname) || empty($lastname) || empty($location)) {

        if(empty($firstname)) {
            echo "<font color='red'>First Name field is empty.</font><br/>";
        }

        if(empty($lastname)) {
            echo "<font color='red'>Last Name field is empty.</font><br/>";
        }

        if(empty($location)) {
            echo "<font color='red'>Location field is empty.</font><br/>";
        }

        //link to the previous page
        echo "<br/><a href='javascript:self.history.back();'>Go Back</a>";

    } 

    if (preg_match("/^[0-9-]+$/",$firstname || $lastname || $location)) {
        echo "<font color='red'>Numbers are not valid in these fields</font><br/>";
    }
    } else {    
        //updating the table
        $UpdateQuery ="UPDATE ACW SET FirstName='$firstname', LastName='$lastname', location='$location' WHERE UserID='$id'";

        echo $UpdateQuery;
        //echo "<font color='green'>Data has been updated.</font><br/>";

        $results = sqlsrv_query ($conn, $UpdateQuery);
    }
?>
<form name="form1" method="get" action="edit.php">
        <table border="0">
            <tr> 
                <td>First Name</td>
                <td><input type="text" name="firstname" value="<?php echo $firstname;?>"></td>
            </tr>
            <tr> 
                <td>Last Name</td>
                <td><input type="text" name="lastname" value="<?php echo $lastname;?>"></td>
            </tr>
            <tr> 
                <td>Location</td>
                <td><input type="text" name="location" value="<?php echo $location;?>"></td>
            </tr>
            <tr>
                <td><input type="hidden" name="id" value=<?php echo $_GET['id'];?>></td>
                <td><input type="submit" name="update" value="Update"></td>
            </tr>
        </table>
</form>