对不起大部分代码:)
我需要在输入文本域名称clientname中输入客户端名称,然后当我单击按钮名称loadcliinfo时,我需要从我的数据库输出客户端信息。但问题是我不知道如何获取客户名中输入的数据? 所以我使用 $ _ 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 [&#39; clientname&#39;])? $ _POST [&#39;客户名称&#39;]:&#39;&#39; 并将其存储在变量$ 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
答案 0 :(得分:0)
$ _ POST和$ _GET从html表单中获取信息(大部分时间)。您有输入字段,但没有表单。您需要具备以下内容:
<form method="post" action="myphpscript.php">
<input type="text" .... >
<input type="submit" .... >
</form>
该方法属性非常重要,因为它确定了放入$ _POST的内容以及放入$ _GET的内容。然后你的行动将是它去的PHP脚本。最后,这些变量不会存储到本地POST会话中(假设您的方法是“post”),直到命中提交按钮。现在,如果你想在不刷新页面的情况下完成这一切,那么当你点击“提交”按钮时,你将需要做一些AJAX工作来调用PHP脚本。
但这基本上就是问题所在。什么都没有进入本地存储。只是有一个misc。输入字段不做任何事情。如果您不想使用表单,那么您将不得不弄清楚如何以其他方式获取数据,而不需要$ _POST。你应该建立一个GET url,然后使用$ _GET,但这通常不推荐,因为用户可以在地址栏中清楚地看到变量值,如:(你的url)?clientname = foobar。