我的代码以获取地区一个国家:如何使用MySQL
<?php
$con = mysqli_connect('localhost','dbuser','password','dbname');
if (!$con) {
die('Could not connect: ' . mysqli_error($con));
}
$state = str_replace('-',' ',$_GET['state']);
$bank = str_replace('-',' ',$_GET['bank']);
$sql="SELECT * FROM table WHERE state='$state' AND bankName='$bank'";
$result = mysqli_query($con,$sql);
$rowcount=mysqli_num_rows($result);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
$bank = $row['bankName'];
$district = $row['district'];
$state = $row['state'];
}
}
?>
上面的代码工作正常使用get价值和呼应银行名称和国家的名称。 我一直在尝试运行另一个mysql查询来获取特定银行所选状态的所有分区列表,例如,有一家名为ABC的银行在一个叫做德里的州中有多个分支,其中德里分为8个区。所以我想拿ABC银行的德里所有8区名单。 要做到这一点,我用下面的代码:
<?php
$sql="SELECT distinct bankName, state, district FROM table where bankName='$bank' group by state and district";
$result = mysqli_query($con,$sql);
$rowcount=mysqli_num_rows($result);
?>
<section class="left">
<h1>District-wise list of <?php echo $bank; ?> Branches in <?php echo $state; ?></h1>
<p>Branches of <?php echo $bank; ?> are available at <?php echo $rowcount; ?> <?php echo $districts; ?> districts of <?php echo $state; ?> in India</p>
<?php
echo "<ul class=\"states\">\n";
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo "<li><a href='/bank/".str_replace($remove, "-", $row['bankName'])."/state/".str_replace($remove, "-", $row['state'])."/district/".str_replace($remove, "-", $row['district'])."'>" . $row["district"]. "</a></li>\n";
}
echo "</ul>";
} else {
echo "<p>No results Found</p>";
}
mysqli_close($con);
?>
</section>
这将返回没有找到结果。请帮助我这个查询。
感谢
维卡斯
您应该添加错误发出SQL语句的时候,看看是否有什么差错处理你的代码,你的代码只是假设一切总是罚款mysql的一部分。 – Shadow
如果您运行SQL查询在phpMyAdmin(或类似),它会给你任何结果吗?任何错误? – Anders
嗨,试过了,但它是返回所有州的所有地区,而不是德里是通过获取值单选:( –