[英]mysql & php select * query not working
我的数据库中有一个名为sales的表。 每行在“联邦”列中都有一个值。 因此,我想在此代码中将所有联邦收集到一个数组中,但是它不起作用,我也不知道为什么……请帮助! 谢谢!
<?php
$db = mysqli_connect("server", "usr", "pw", "db");
$FederalRes = $db->query("SELECT * FROM `sales` WHERE `state` = 'Österreich'"); //gets every row with the state = 'Österreich'
$federals = array(); // empty array to collect federals
while ($row = $FederalRes->fetch_object()) {
if (!in_array($row->federal, $federals)) { // check if federal is already in array
array_push($federals, $row->federal); // adds federal to array
}
}
sort($federals); // sorts the array alphabetically
foreach ($federals as $key => $value): ?>
<li><?php echo $value ?></li>
<?php endforeach; ?>
您尝试使用LIKE
语句而不是=
。
请尝试以下代码:
<?php
$db = mysqli_connect("server", "usr", "pw", "db");
$FederalRes = $db->query("SELECT * FROM `sales` WHERE `state` LIKE 'Österreich'"); //gets every row with the state = 'Österreich'
$federals = array(); // empty array to collect federals
while ($row = $FederalRes->fetch_object()) {
if (!in_array($row->federal, $federals)) { // check if federal is already in array
array_push($federals, $row->federal); // adds federal to array
}
}
sort($federals); // sorts the array alphabetically
foreach ($federals as $key => $value): ?>
<li><?php echo $value ?></li>
<?php endforeach; ?>
<?php
try{
$conn = new PDO('mysql:host=localhost;dbname=test;charset=utf8', 'root', '');
}
catch(Exception $e){
die('Erreur : '.$e->getMessage());
}
$answer= $conn->query("SELECT * FROM sales WHERE state LIKE 'Österreich' ORDER BY state ASC"); //sort it alphabetically here ;)
while ($data = $answer->fetch()){
echo $data['federal'] . '<br />';
}
$reponse->closeCursor();
?>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.