php mysqli未返回值

php mysqli未返回值,php,mysql,mysqli,Php,Mysql,Mysqli,下面是给我带来问题的代码: $letter = $_POST['artistButton']; $result = $mysqli->query("SELECT * FROM `Generic` WHERE `songName` LIKE '$letter%'"); $row = $result->fetch_array(); while ($row = $result->fetch_array()) { $Artist = $row['Artist'];

下面是给我带来问题的代码:

$letter = $_POST['artistButton'];
$result = $mysqli->query("SELECT * FROM `Generic` WHERE `songName` LIKE '$letter%'");
$row    = $result->fetch_array();

while ($row = $result->fetch_array()) {
    $Artist = $row['Artist'];
    $songName = $row['songName'];
    $Duration = $row['Duration'];
    $URL = $row['URL'];
    $Genre = $row['Genre'];
    echo "<input type='submit' value='$songName' name='artistButton'>";
    echo "<br />";
}
$letter=$\u POST['artistButton'];
$result=$mysqli->query(“从`Generic`WHERE`songName`LIKE'$letter%'中选择*”;
$row=$result->fetch_array();
而($row=$result->fetch_array()){
$Artist=$row['Artist'];
$songName=$row['songName'];
$Duration=$row['Duration'];
$URL=$row['URL'];
$GREEP=$row['GREEP'];
回声“;
回声“
”; }

语句是正确的我将它保存到一个变量并打印到屏幕上,然后从数据库运行它,它打印了我想要的结果,所以它肯定不是这样。由于某种原因,尽管它没有显示。我猜这与我把mysql转换成mysqli的过程搞砸了有关。谢谢-Sam

显然有些代码被删除了,但请尝试删除额外的代码:

$letter = $_POST['artistButton'];
$result = $mysqli->query("SELECT * FROM `Generic` WHERE `songName` LIKE '$letter%'");
$row    = $result->fetch_array();

while ($row = $result->fetch_array()) {
    $Artist = $row['Artist'];
    $songName = $row['songName'];
    $Duration = $row['Duration'];
    $URL = $row['URL'];
    $Genre = $row['Genre'];
    echo "<input type='submit' value='$songName' name='artistButton'>";
    echo "<br />";
}
$row = $result->fetch_array();
和使用:

$letter = $_POST['artistButton'];
$result = $mysqli->query("SELECT * FROM `Generic` WHERE `songName` LIKE '$letter%'");
$row    = $result->fetch_array();

while ($row = $result->fetch_array()) {
    $Artist = $row['Artist'];
    $songName = $row['songName'];
    $Duration = $row['Duration'];
    $URL = $row['URL'];
    $Genre = $row['Genre'];
    echo "<input type='submit' value='$songName' name='artistButton'>";
    echo "<br />";
}
while($row = $result->fetch_assoc()) {
因为你对关联索引感兴趣

$letter = $_POST['artistButton'];
$result = $mysqli->query("SELECT * FROM `Generic` WHERE `songName` LIKE '$letter%'");
$row    = $result->fetch_array();

while ($row = $result->fetch_array()) {
    $Artist = $row['Artist'];
    $songName = $row['songName'];
    $Duration = $row['Duration'];
    $URL = $row['URL'];
    $Genre = $row['Genre'];
    echo "<input type='submit' value='$songName' name='artistButton'>";
    echo "<br />";
}
重要提示:由于您使用的是
mysqli*
,因此请改用它的参数化查询。不要直接在查询上使用
$\u POST

$letter = $_POST['artistButton'];
$result = $mysqli->query("SELECT * FROM `Generic` WHERE `songName` LIKE '$letter%'");
$row    = $result->fetch_array();

while ($row = $result->fetch_array()) {
    $Artist = $row['Artist'];
    $songName = $row['songName'];
    $Duration = $row['Duration'];
    $URL = $row['URL'];
    $Genre = $row['Genre'];
    echo "<input type='submit' value='$songName' name='artistButton'>";
    echo "<br />";
}
$letter = "{$_POST[artistButton]}%";
$stmt = $mysqli->prepare('SELECT * FROM `Generic` WHERE `songName` LIKE ?');
$stmt->bind_param('s', $letter);
$stmt->execute();

$result = $stmt->get_result();

while($row = $result->fetch_assoc()) {
    $Artist = $row['Artist'];
    $songName = $row['songName'];
    $Duration = $row['Duration'];
    $URL = $row['URL'];
    $Genre = $row['Genre'];
    echo "<input type='submit' value='$songName' name='artistButton'>";
    echo "<br />";
}
$letter=“{$\u POST[artistButton]}%”;
$stmt=$mysqli->prepare('SELECT*FROM`Generic`WHERE`songName`LIKE?');
$stmt->bind_参数('s',$letter);
$stmt->execute();
$result=$stmt->get_result();
而($row=$result->fetch_assoc()){
$Artist=$row['Artist'];
$songName=$row['songName'];
$Duration=$row['Duration'];
$URL=$row['URL'];
$GREEP=$row['GREEP'];
回声“;
回声“
”; }
删除多余的
$row=$result->fetch_array()
$result
下面,并在MYSQLI中再次尝试。没有准备好的语句,您开始得很好。这被我拖得很慢,但仍然不起作用,因为您与数据库有连接?并在
fetch_array()
=
MYSQLI_ASSOC
中添加一个参数,您确定它位于前导的
%
?不是
%$letter%
,提示:使用预先准备好的语句,不管怎样,它都是mysqli