Php 如果数据来自数据库,如何防止重复数据?
我有一个由两个文本字段和一个组合框组成的表单。 我想防止重复输入数据从客户端。 我从DB中获取组合框数据,如:Php 如果数据来自数据库,如何防止重复数据?,php,jquery,duplicates,Php,Jquery,Duplicates,我有一个由两个文本字段和一个组合框组成的表单。 我想防止重复输入数据从客户端。 我从DB中获取组合框数据,如: <select id="line" name="faline" > <?php $sql="SELECT `Line_Name` FROM `prod_sch` WHERE `Line_Name` LIKE 'FA %' GROUP BY `Line_Name` ORDER BY `Line_Name`"; if ($sql) {
<select id="line" name="faline" >
<?php
$sql="SELECT `Line_Name` FROM `prod_sch` WHERE `Line_Name` LIKE 'FA %' GROUP BY `Line_Name` ORDER BY `Line_Name`";
if ($sql) {
$res=mysql_query($sql) or _doError(_ERROR30 . ' (<small>' . htmlspecialchars($sql) . '</small>): ' . mysql_error() );
}
while ($dat = mysql_fetch_array($res, MYSQL_NUM)) {
echo "\t\t\t\t\t\t\t\t<option value='".$dat[0]."'>".$dat[0]."</option>\n";
}
?>
</select>
首先,使用Line\u Name
s构建一个数组:
<select id="line" name="faline" >
<?php
$sql="SELECT `Line_Name` FROM `prod_sch` WHERE `Line_Name` LIKE 'FA %' GROUP BY `Line_Name` ORDER BY `Line_Name`";
if ($sql) {
$res=mysql_query($sql) or _doError(_ERROR30 . ' (<small>' . htmlspecialchars($sql) . '</small>): ' . mysql_error() );
}
$lineNames = array();
while ($dat = mysql_fetch_array($res, MYSQL_NUM)) {
$lineNames[] = $dat[0];
}
最后再次迭代:
foreach ($lineNames as $lineName) {
echo "\t\t\t\t\t\t\t\t<option value='".$lineName."'>".$lineName."</option>\n";
}
?>
</select>
foreach($lineName作为$lineName){
echo“\t\t\t\t\t\t\t\t”。$lineName.\n”;
}
?>
首先,用行名称构建一个数组
s:
<select id="line" name="faline" >
<?php
$sql="SELECT `Line_Name` FROM `prod_sch` WHERE `Line_Name` LIKE 'FA %' GROUP BY `Line_Name` ORDER BY `Line_Name`";
if ($sql) {
$res=mysql_query($sql) or _doError(_ERROR30 . ' (<small>' . htmlspecialchars($sql) . '</small>): ' . mysql_error() );
}
$lineNames = array();
while ($dat = mysql_fetch_array($res, MYSQL_NUM)) {
$lineNames[] = $dat[0];
}
最后再次迭代:
foreach ($lineNames as $lineName) {
echo "\t\t\t\t\t\t\t\t<option value='".$lineName."'>".$lineName."</option>\n";
}
?>
</select>
foreach($lineName作为$lineName){
echo“\t\t\t\t\t\t\t\t”。$lineName.\n”;
}
?>
我相信使用会达到目的。我相信使用会达到目的。你不能用SQL来为你做到这一点吗?i、 e.使用distinct关键字
$sql="SELECT distinct `Line_Name` FROM `prod_sch` WHERE `Line_Name` LIKE 'FA %' GROUP BY `Line_Name` ORDER BY `Line_Name`";
很抱歉,在我说“独特”之前,我在这里使用了“独特”。您不能使用SQL来完成这项工作吗?i、 e.使用distinct关键字
$sql="SELECT distinct `Line_Name` FROM `prod_sch` WHERE `Line_Name` LIKE 'FA %' GROUP BY `Line_Name` ORDER BY `Line_Name`";
对不起,在我说“独特”之前,这里有“独特”。您在哪里采用了这种缩进方式?我以前没见过,看起来有点。。。凌乱。你在哪里采用这种缩进方式的?我以前没见过,看起来有点。。。凌乱。我相信我的答案更有效,更不用说代码更少:)这对我来说像是一个PHP问题,而不是SQL问题。@all:请再次检查我的问题..我已经更改了它。我相信我的答案更有效,更不用说代码更少:)这对我来说像是一个PHP问题,不是SQL的。@all:请再次检查我的问题。.我已经更改了它。我认为UNIQUE是一个索引约束。它真的可以这样使用吗?我已经改变了我的问题。对于获取组合框数据没有问题。我认为UNIQUE是一个索引约束。它真的可以这样使用吗?我已经改变了我的问题..获取组合框数据没有问题。