好的,我有一个数据库,其中包含一个值为潜在客户的值,另一个为客户......
我只想检索客户信息...
如何编写函数???
更新
这是我试写的脚本:
<?php
try {
$sql = "SELECT * FROM clients" // WHERE history" or die(mysql_error());
foreach ($dbh->query($sql) as $row) {
$row['history'] = $value;
if ($value == 'clients'){
echo "1212";
} else {
echo "Failed";
return;
}
}
$dbh = null;
} catch (PDOException $e) {
echo "Failed: " . $e->getMessage();
$dbh->rollback();
}
?>
答案 0 :(得分:1)
没有理由在这里进行回滚,特别是因为你还没有启动一个事务,这只是一个SELECT,所以没有什么可以回滚......我也不确定你为什么要归零$胸径。可以在其他查询中或整个应用程序中重复使用$ dbh ......
此外,您的select语句应反映您实际需要的数据。如果你需要的只是历史,那么SELECT history FROM clients [...]是最好的。
<?php
try {
$sql = "SELECT * FROM clients WHERE history = 'clients'";
$query = $dbh->prepare($sql);
$query->execute();
while($row = $query->fetch())
{
if($row['history'] == 'clients'){
echo '1212';
}
}
} catch (PDOException $e) {
echo "Failed: " . $e->getMessage();
}
?>
答案 1 :(得分:0)
根据您的示例脚本,这会做同样的事情,但它会将条件运算符放在数据库层的查询中,而不是放在应用程序层的脚本中:
<?php
try {
$sql = "SELECT * FROM clients WHERE history = 'clients'" // WHERE history" or die(mysql_error());
foreach ($dbh->query($sql) as $row) {
echo "1212";
}
$dbh = null;
} catch (PDOException $e) {
echo "Failed: " . $e->getMessage();
$dbh->rollback();
}
?>
当然,它显然不会像你的样本那样反映非客户行,但从我能理解你的问题来看,这就是你真正希望发生的事情。