我是非常新的SQL,我有一个名为“accounts”的表。我想回复HTML表格上的所有帐户信息,我试过这个但它不起作用? (php代码周围有适当的标签)
<?php
$query="SELECT * FROM acccounts";
$results = mysql_query($query);
while ($row = mysql_fetch_array($results)) {
echo '<tr>';
foreach($row as $field) {
echo '<td>' . htmlspecialchars($field) . '</td>';
}
echo '</tr>';
}
?>
答案 0 :(得分:2)
我认为问题非常明显;您未连接到数据库,或者您的系统不允许使用mysql_
API。
或者,您尝试使用mysqli_
或其他API(未知)进行连接。如果是这样的话;那些不同的MySQL API不会混合。
在我自己的机器上使用mysqli_
API产生结果:
使用您自己的凭据替换以下内容:
<?php
ini_set("display_startup_errors", 1);
ini_set("display_errors", 1);
$connect = mysqli_connect("your_host", "user", "pass", "db");
if (!$connect) {
echo "Error: Unable to connect to MySQL." . PHP_EOL;
echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
exit;
}
$query="SELECT * FROM acccounts";
$results = mysqli_query($connect, $query);
if($results){
while ($row = mysqli_fetch_array($results)) {
echo '<tr>';
foreach($row as $field) {
echo '<td>' . htmlspecialchars($field) . '</td>';
}
echo '</tr>';
}
}
else{
echo "Your query failed: " . mysqli_error($connect);
}
通过PHP检查查询错误。
参考文献:
注意:即使没有<table></table>
标记,在成功查询时仍会产生结果。
http://localhost
而不是file:///
,如果是这种情况。其他参考:
答案 1 :(得分:0)
很少有东西,首先,您需要使用sql实例名称,uid和passwd字符串连接到数据库,
其次
您的查询应为mysqli_query($connection, $query)
即
$servername = 'yourinstance\sqlexpress';
$conndetails = ["Database" => "databasename", "UID" => 'loginid', "PWD" =>'passwd'];
$sqlconn = mysqli_connect($servername, $conndetails);
$query = "Select blah blah";
$query2 = mysqli_query($sqlconn, $query);
仔细检查语法,因为我经常将其从标记向后移动,但如果没有此设置,则无法连接到数据库, PHP必须先验证/登录才能进行查询(否则任何人都可以查询您的数据库)
除此之外,你需要确保sql正在侦听正确的端口(通常是1433),这是通过sql管理器(而不是sql explorer)完成的。
结果仍然是数组格式,因此您需要调用特定的字段名称。 在这种情况下。
echo '<td>' . $field['id'] . '</td>';
应该有用,(这是我使用的格式)
while ($row = mysqli_fetch_array($query)) {
foreach ($row as $field) {
echo '<td>' .$field['id']. '</td>';
}
}