【发布时间】:2014-12-18 11:59:29
【问题描述】:
如果搜索框值与 MYSQL 中的行和属性 Client_Name 匹配,我有以下代码应该从 mysql 数据库中提取数据。
请参阅http://www.recruitingblt.comli.com/add-new-sales-record.html。
找到匹配项后,表单会恢复(尝试 James Dean)并且不会自动填充我想要的字段(现在我只是要求 Client_Address、Client_Phone 和 Attn_Email1 进行测试)。这些是mysql表bltrecruiting中的列名。
我在想也许 Client_Name 需要是唯一的,假设我有 Microsoft 公司,并且有不止一行,尽管所有 Microsoft 记录都相同,但查询是否无法通过地址、电话等进行提取?查找值是否需要唯一?
<?php
$regnum = $_GET['regnum'];
//////////regnum is named box at top of form page (Client Name Box)
//////Connection which seems to work fine
$db_host = 'mysql6.000webhost.com';
$db_username = '********';
$db_password = '********';
$db_name = 'a8748341_bltrec';
mysql_connect( $db_host, $db_username, $db_password) or die(mysql_error());
mysql_select_db($db_name);
////// Check for the Client Name which is a field Client_Name in the database - Should Client_Name be unique?
$result = mysql_query("SELECT * FROM bltrecruiting WHERE Client_Name='$regnum'") or
die(mysql_error());
$row = mysql_fetch_array( $result );
if (empty($row[Client_Name]))
{
echo "No previous record of Client: $regnum <br>";
echo "Please try again <br>" ?>
<div id=regcon>
<FORM NAME = "reg" action=database.php>
<div style=width:150px; float:left; display:inline-block; font-family: Verdana;
font-size: 12px; padding-left:13px;> Client Name: </div>
<input type="text" id="textbox" name="regnum" size="20"/>
<input name="Submit" type="submit" value="Get Form"/>
</form>
</div>
}
else
{
///////// Get the fields from the database
$address = $row['Client_Address'];
$phonenumber = $row['Client_Phone'];
$name= $row['Attn_Name1'];
//add your additional fields here
echo '<script type="text/javascript"src="http://form.jotform.com/jsform/43438603456356?"Client_Name='.$regnum.'&Client_Address='.$address.'&Client_Phone='.$phonenumber.'&Attn_Name1='.$name.'"></script>';
}
?>
</body>
</html>
【问题讨论】:
-
运行 error.php 页面时,我得到了这个;注意:未定义的索引:第 9 行 /home/a8748341/public_html/database.php 中的 regnum。这是第 9 行; $regnum = $_GET['regnum']; regnum 是搜索字段的名称......有人帮忙吗?
-
理想情况下,您确实需要一个唯一的公司名称,但如果您想测试您的脚本,请将“limit 1”添加到您的 mysql 查询中 - 这将只返回 1 行。
-
你的目标是只返回 1 个结果吗?
-
嗨@PHPology 是的,只有一个,因为将来可能有很多具有该客户端名称的条目,我只想要一个结果来预填充其余字段,因为一个结果将是所有条目都相同。所以我在$'regnum'之后添加'limit 1'?提前谢谢你
-
@PHPology 我刚刚阅读了关于 LIMIT 1 的手册,这是有道理的,所以我在 $'regnum' 之后将其添加到查询中,但仍然没有,但我认为这是在正确的轨道上,我会继续努力。这是我当前的查询(“SELECT * FROM bltrecruiting WHERE Client_Name='$regnum' LIMIT 1”)
标签: javascript php mysql forms