- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
抱歉,代码太多了:)
我需要在输入文本字段名称 clientname 中输入客户端名称,然后当我单击按钮名称 loadcliinfo 时,我需要从数据库中输出客户端信息。但问题是我不知道如何获取在clientname中输入的数据? 所以我使用了$_POST['clientname']。该代码无法运行。
我在下面粘贴的代码位于同一个文件中。
<tr>
<td width="6"></td>
<td width="155">Client Name<font color="#990000">*</font></td>
<td width="218"><input type="text" name="clientname" id="clientname" required= "required" class="forinput" value="<?php echo $clientname ?>"/></td>
<td width="148"><input type="button" name="loadcliinfo" value="Load Client Info" onClick="loadclientinfo()"/></td>
</tr>
<tr>
<td width="6"></td>
<td width="155">Client Address<font color="#990000">*</font></td>
<td width="218"><p id="clientadd" class="readonly"></p></td>
<td width="148">Contact Name<font color="#990000">*</font></td>
<td width="230"><p id="clientcontactname" class="readonly"></p></td>
<td width="8"></td>
</tr>
<tr class="shade">
<td width="6"></td>
<td width="155">Email Address<font color="#990000">*</font></td>
<td width="218"><p id="clientemail" class="readonly"></p></td>
<td width="148">Contact No<font color="#990000">*</font></td>
<td width="230"><p id="clientaddcontact" class="readonly"></p></td>
<td width="8"></td>
</tr>
我的 php 代码
<?php
$name=isset($_POST['clientname'])? $_POST['clientname'] : '';
我使用此语句获取数据 isset($_POST['clientname'])? $_POST['clientname'] : '' 并将其存储在变量 $name 中,但当我输出该变量时,它为空。
$csql="Select address, email, contactperson, contactno from client where name='$name'";
$result=$db->prepare($csql);
$result->execute();
while($resu= $result->fetch(PDO::FETCH_ASSOC))
{
echo '<input type="hidden" id="add" value="'.$resu['address'].'"/>';
echo '<input type="hidden" id="email" value="'.$resu['email'].'"/>';
echo '<input type="hidden" id="contactperson" value="'.$resu['contactperson'].'"/>';
echo '<input type="hidden" id="contactno" value="'.$resu['contactno'].'"/>';
}
?>
我的loadclientinfo函数
<script>
function loadclientinfo()
{
var add=document.getElementById("add");
var email=document.getElementById("email");
var contactperson=document.getElementById("contactperson");
var contactno=document.getElementById("contactno");
document.getElementById("clientadd").innerHTML = add.value;
document.getElementById("clientemail").innerHTML = email.value;
document.getElementById("clientcontactname").innerHTML = contactperson.value;
document.getElementById("clientcontact").innerHTML = contactno.value;
}
</script>
我认为从 clientname 获取数据是问题所在。有什么方法可以在同一页面上从 clientname 获取数据吗?谢谢:D
最佳答案
$_POST 和 $_GET 从 html 表单(大部分)获取信息。您有输入字段,但没有表单。您需要具备以下内容:
<form method="post" action="myphpscript.php">
<input type="text" .... >
<input type="submit" .... >
</form>
该方法属性很重要,因为它决定将哪些内容放入 $_POST 中以及将哪些内容放入 $_GET 中。然后你的操作将是它所转到的 php 脚本。最后,在按下提交按钮之前,这些变量不会存储到本地 POST session 中(假设您的方法是“post”)。现在,如果您想在不刷新页面的情况下完成整个操作,那么您必须执行一些 AJAX当点击“提交”按钮时调用 PHP 脚本。
但这基本上就是问题所在。没有任何内容被放入本地存储中。只是有一个杂项。输入字段不执行任何操作。如果您不想使用表单,那么您必须弄清楚如何以其他方式获取数据,而无需使用 $_POST。您可以构建一个 GET url,然后使用 $_GET,但通常不建议这样做,因为用户可以清楚地看到地址栏中的变量值,例如:(your url)?clientname=foobar。
关于javascript - 从输入文本字段获取数据,然后在同一页面上的 MySQL 语句中使用它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24928167/
我是一名优秀的程序员,十分优秀!