Xampp - mysql 不 return 所有记录
Xampp - mysql doesn't return all records
我正在做一个大学项目,我必须创建一个使用 mysql 数据库的网站。
我已经开始使用 XAMPP,但我发现当我从网页发送查询时,并非所有记录都显示。
网页应该显示图书馆的所有图书,我已经加载了 39 条记录,但服务器只回答 32。
这是我发送的查询:
SELECT titolo, autore FROM libro WHERE 1 ORDER BY libro ASC
我在网页上遇到了这个问题,但是如果我从命令行执行相同的查询,服务器 returns 所有记录。
这里是请求服务器的php脚本:
$mysqli = new mysqli("127.0.0.1","","","biblioteca");
if($mysqli->connect_errno)
{
echo "Connessione fallita (". $mysqli->connect_errno.")".$mysqli->connect_error;
}
//query per recupero di tutti il libri disponibili
$result = $mysqli->query("SELECT titolo, autore, genere, disponibilita, codLibro FROM libro WHERE 1 ORDER BY titolo ASC") or die ("Query fallita".$mysqli->error);
//visualizzazione di tutti gli elementi dell'arrray
$count = 1;
print "<br>";
foreach($result as $value){
foreach($value as $attrib){
//recupero singoli attributi della tabella 'libro' e li stampo
$row = $result->fetch_row();
print $count.". ";
print " ".$row[0]. " - ".$row[1]." - ".$row[2]." - ";
//se è disponibile inserisco immagine
if($row[3]==1)
{
print "<a href=\"prenota.php?cod=".$row[4]."&user=". $_GET['user']. "\"><img name=\"prenota\" title=\"Effettua la prenotazione\" src=\"/img/ok.png\" width=\"25\" height=\"25\"/></a>";
print "<br>";
}else{
print "<img src=\"/img/no.jpeg\" height=\"25\" width=\"25\"/>";
print "<br>";
}
print "<br>";
$count = $count +1;
}
}
你的foreach循环不正确,单循环就够了,应该是:
while ($row = $result->fetch_row()) {
//recupero singoli attributi della tabella 'libro' e li stampo
print $count.". ";
print " ".$row[0]. " - ".$row[1]." - ".$row[2]." - ";
...
}
此外,为了提高可读性和可管理性,使用 fetch_array()
然后使用列名作为索引 $row['titolo']
。
看看
$mysqli = new mysqli("127.0.0.1","","","biblioteca");
if($mysqli->connect_errno)
{
echo "Connessione fallita (". $mysqli->connect_errno.")".$mysqli->connect_error;
}
//query per recupero di tutti il libri disponibili
$result = $mysqli->query("SELECT titolo, autore, genere, disponibilita, codLibro FROM libro ORDER BY titolo ASC") or die ("Query fallita".$mysqli->error);
//visualizzazione di tutti gli elementi dell'arrray
$count = 1;
print "<br>";
while($row = $result->fetch_assoc()){
echo $row['username'] . '<br />';
//recupero singoli attributi della tabella 'libro' e li stampo
print $count.". ";
print " ".$row["titolo"]. " - ".$row["autore"]." - ".$row["genere"]." - ";
if($row["disponibilita"]==1){
print "<a href=\"prenota.php?cod=".$row["doLibro"]."&user=". $_GET['user']. "\"><img name=\"prenota\" title=\"Effettua la prenotazione\" src=\"/img/ok.png\" width=\"25\" height=\"25\"/></a>";
print "<br>";
}else{
print "<img src=\"/img/no.jpeg\" height=\"25\" width=\"25\"/>";
print "<br>";
}
print "<br>";
$count++;
}
我正在做一个大学项目,我必须创建一个使用 mysql 数据库的网站。
我已经开始使用 XAMPP,但我发现当我从网页发送查询时,并非所有记录都显示。
网页应该显示图书馆的所有图书,我已经加载了 39 条记录,但服务器只回答 32。
这是我发送的查询:
SELECT titolo, autore FROM libro WHERE 1 ORDER BY libro ASC
我在网页上遇到了这个问题,但是如果我从命令行执行相同的查询,服务器 returns 所有记录。
这里是请求服务器的php脚本:
$mysqli = new mysqli("127.0.0.1","","","biblioteca");
if($mysqli->connect_errno)
{
echo "Connessione fallita (". $mysqli->connect_errno.")".$mysqli->connect_error;
}
//query per recupero di tutti il libri disponibili
$result = $mysqli->query("SELECT titolo, autore, genere, disponibilita, codLibro FROM libro WHERE 1 ORDER BY titolo ASC") or die ("Query fallita".$mysqli->error);
//visualizzazione di tutti gli elementi dell'arrray
$count = 1;
print "<br>";
foreach($result as $value){
foreach($value as $attrib){
//recupero singoli attributi della tabella 'libro' e li stampo
$row = $result->fetch_row();
print $count.". ";
print " ".$row[0]. " - ".$row[1]." - ".$row[2]." - ";
//se è disponibile inserisco immagine
if($row[3]==1)
{
print "<a href=\"prenota.php?cod=".$row[4]."&user=". $_GET['user']. "\"><img name=\"prenota\" title=\"Effettua la prenotazione\" src=\"/img/ok.png\" width=\"25\" height=\"25\"/></a>";
print "<br>";
}else{
print "<img src=\"/img/no.jpeg\" height=\"25\" width=\"25\"/>";
print "<br>";
}
print "<br>";
$count = $count +1;
}
}
你的foreach循环不正确,单循环就够了,应该是:
while ($row = $result->fetch_row()) {
//recupero singoli attributi della tabella 'libro' e li stampo
print $count.". ";
print " ".$row[0]. " - ".$row[1]." - ".$row[2]." - ";
...
}
此外,为了提高可读性和可管理性,使用 fetch_array()
然后使用列名作为索引 $row['titolo']
。
看看
$mysqli = new mysqli("127.0.0.1","","","biblioteca");
if($mysqli->connect_errno)
{
echo "Connessione fallita (". $mysqli->connect_errno.")".$mysqli->connect_error;
}
//query per recupero di tutti il libri disponibili
$result = $mysqli->query("SELECT titolo, autore, genere, disponibilita, codLibro FROM libro ORDER BY titolo ASC") or die ("Query fallita".$mysqli->error);
//visualizzazione di tutti gli elementi dell'arrray
$count = 1;
print "<br>";
while($row = $result->fetch_assoc()){
echo $row['username'] . '<br />';
//recupero singoli attributi della tabella 'libro' e li stampo
print $count.". ";
print " ".$row["titolo"]. " - ".$row["autore"]." - ".$row["genere"]." - ";
if($row["disponibilita"]==1){
print "<a href=\"prenota.php?cod=".$row["doLibro"]."&user=". $_GET['user']. "\"><img name=\"prenota\" title=\"Effettua la prenotazione\" src=\"/img/ok.png\" width=\"25\" height=\"25\"/></a>";
print "<br>";
}else{
print "<img src=\"/img/no.jpeg\" height=\"25\" width=\"25\"/>";
print "<br>";
}
print "<br>";
$count++;
}