php 使用未定义的常量 id - 假定为“id”

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/20233512/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-25 02:59:40  来源:igfitidea点击:

Use of undefined constant id - assumed 'id'

phphtml-table

提问by kputri

I have code but get this error:

我有代码但收到此错误:

Use of undefined constant id - assumed 'id'

使用未定义的常量 id - 假定为“id”

elseif(isset($_GET['aksi']) && $_GET['aksi']=='edit'){
    $id=$_GET['id'];
    echo"<br>
        <form method=POST action='?aksi=update_data'>
            <table>
                <tr><td>Id</td><td><input type=text name='id' value='".$db->bacaData(id,$id)."'></td></tr>
                <tr><td>Nama</td><td><input type=text name='nama' value='".$db->bacaData(nama,$id)."'></td></tr>
                <tr><td>Email</td><td><input type=text name='email' value='".$db->bacaData(email,$id)."'></td></tr>
                <tr><td>Pesan</td><td><input type=text name='pesan' value='".$db->bacaData(pesan,$id)."'></td></tr>
                <tr><td></td><td><input type=submit value='simpan'></td></tr>
            </table>
        <input type='hidden' name='id' value='".$db->bacaData(id,$id)."'>
        </form>
    ";

}

error undefined constant id code below:

错误未定义的常量 ID 代码如下:

<tr><td>Id</td><td><input type=text name='id' value='".$db->bacaData(id,$id)."'></td></tr>

Can you help me solve this problem?

你能帮我解决这个问题吗?

回答by Dipesh Parmar

Replace

代替

<input type='hidden' name='id' value='".$db->bacaData(id,$id)."'>

with

<input type='hidden' name='id' value='".$db->bacaData('id',$id)."'>
                              ------------------------^^^^---

you are using idand php will count it as constant so wrap it inside single quote.

您正在使用id并且 php 会将其视为常量,因此将其包装在单引号中。

Even you have same error for other declaration too wrap first argument inside of ''.

即使您对其他声明也有同样的错误,也将第一个参数包装在''.

Correct Code

正确的代码

elseif(isset($_GET['aksi']) && $_GET['aksi']=='edit')
{
    $id=$_GET['id'];
    echo"<br>
        <form method=POST action='?aksi=update_data'>
            <table>
                <tr><td>Id</td><td><input type=text name='id' value='".$db->bacaData('id',$id)."'></td></tr>
                <tr><td>Nama</td><td><input type=text name='nama' value='".$db->bacaData('nama',$id)."'></td></tr>
                <tr><td>Email</td><td><input type=text name='email' value='".$db->bacaData('email',$id)."'></td></tr>
                <tr><td>Pesan</td><td><input type=text name='pesan' value='".$db->bacaData('pesan',$id)."'></td></tr>
                <tr><td></td><td><input type=submit value='simpan'></td></tr>
            </table>
        <input type='hidden' name='id' value='".$db->bacaData('id',$id)."'>
        </form>
    ";
}