-1

我有一个 html 表单中的下拉菜单,它调用下面包含的 php 文件,它正在进入 while 循环并从回声判断它似乎正在正确执行,但它没有返回信息。

首先,我只需要列出的书籍专栏,一旦我能做到这一点,我就可以增加复杂性。我的最终目标是列出书籍、作者、流派和电子邮件。

该表的格式为:id-book-author-genre-email

这是我的PHP代码:

 include('definitions.php');

 $con=mysqli_connect(DB_HOST,DB_USER,DB_PASS,DB_NAME);
 // Check connection
 if (mysqli_connect_errno())
   {
   echo "Failed to connect to MySQL: " . mysqli_connect_error();
   }
 $namequery="SELECT book,author,genre,email FROM book WHERE book = ?";
 $namestmt = mysqli_prepare($con, $namequery);

 mysqli_stmt_bind_param($namestmt, "s", $_POST['select1']);
 var_dump($_POST);

 mysqli_stmt_execute($namestmt);

 /* bind variables to prepared statement */
     mysqli_stmt_bind_result($namestmt, $name, $author, $genre, $email);

 while(mysqli_stmt_fetch($namestmt))
   {
   printf("%s %s %s %s\n", $name, $author, $genre, $email);
   echo "<br>";
   echo "got as far as the while loop";
   }

   /* close statement */
     mysqli_stmt_close($namestmt);


 /* close connection */
 mysqli_close($con);

?>

这将返回: array(1) { ["select1"]=> &string(4) "book" } (,) 书籍作者流派电子邮件到达了 while 循环 (,) 书籍作者流派电子邮件到达了 while循环(,)书籍作者流派电子邮件一直到while循环

有什么建议我哪里出错了吗?

4

1 回答 1

0

您不将结果绑定到任何变量。看看http://php.net/manual/en/mysqli-stmt.fetch.php

于 2013-03-13T12:05:10.283 回答