【发布时间】:2020-05-20 07:32:03
【问题描述】:
我正在尝试创建一个 PHP 表单,我在其中要求输入客户 ID。如果 ID 存在,那么我允许用户填写有关客户的更多详细信息,例如他的电话号码、地址等。如果 ID 不存在,我会发出警报说不存在这样的客户 ID。
我尝试了以下代码,但没有任何成果。
<style>
#hidden {
display: none;
}
</style>
<form method="POST" action="<?php echo $_SERVER['PHP_SELF'];?>">
<input type="text" name="cust_id">
<input type="submit" value="Add details" name="check_cust">
<div id="hidden">
<input type="tel" name="phone">
</div>
</form>
<?php
if(isset($_POST['check_cust']))
{
$id = $_POST['cust_id']
if(idExistsInDatabase($id))
{
const obj = document.getElementById('hidden');
obj.style.display = 'block';
}
}
当我执行上面的代码时,我得到以下错误:-
Uncaught TypeError: Cannot read property 'style' of null
我是网络开发的新手,希望能提供任何帮助。提前致谢
编辑:没关系。我是用 AJAX 做的。
【问题讨论】:
-
不能这样随意混用 PHP 和 JS 代码。 PHP 运行在服务器上,JS 运行在浏览器上。基本思想是检查表单提供了哪些
$_POST数据,然后相应地显示HTML(通过回显与否)。您也可以删除表单的action;如果您省略它,表单会将数据“发送给它自己”。 -
@ChrisG,我现在知道我不能混合 PHP 和 JS 代码。那么,我该如何解决这个问题呢?
-
这是示例代码:pastebin.com/Q4jmhSC3(请注意,您可能应该使用session,这样您就不必在隐藏输入中继续传递以前的数据;无论如何,这主要是关于条件输出)
标签: javascript php html mysql