将 HTML 网页连接到 SQL Server

Posted

技术标签:

【中文标题】将 HTML 网页连接到 SQL Server【英文标题】:Connecting an HTML webpage to a SQL Server 【发布时间】:2019-06-19 19:53:31 【问题描述】:

我正在尝试在网页上显示我的 Azure SQL 数据库中的表。我一直在环顾四周,似乎无法弄清楚为什么这不起作用

这是我连接到数据库的地方:

<!DOCTYPE html>
<html>

<head>
  <link rel="stylesheet" type="text/css" href="Style.css">
</head>
<?php
$host="myname.database.windows.net";
$username="theUser";
$password="password";
$database="databaseName";
$tbl_name="tableName";

$mysql = mysql_connect($host, $username, $password)or die("cannot connect"); 
mysql_select_db($database);
$sql='SELECT * FROM $tbl_name';
$result=mysql_query($sql); 

?>

这是我创建格式化表格的地方:

<table id="MySqlTable" align="center" style="width:70%">
    <thead>
      <tr>
        <th>LiftId</th>
        <th>ItemNumber</th>
        <th>ItemRegion</th>
      </tr>
    </thead>
    <tbody>

这是我试图用从数据库中提取的信息填充行的地方:

<? php
while($row = mysql_fetch_array($result))  
?>
  <tr>
    <td>
      <? php echo $row['LiftId']?>
    </td>
    <td>
      <? php echo $row['ItemNumber']?>
    </td>
    <td>
      <? php echo $row['ItemRegion']?>
    </td>
  </tr>
  <? php  

mysql_free_result($result);
mysql_close($mysql);
?>
    </tbody>
    </table>
    </body>

    </html>

这是我从这段代码中得到的最终产品。为什么信息没有显示在行中? https://i.stack.imgur.com/U5d3s.png

【问题讨论】:

尝试将$sql='SELECT * FROM $tbl_name';更改为$sql="SELECT * FROM $tbl_name";$sql='SELECT * FROM ' . $tbl_name; 这并没有改变任何东西。不过谢谢! 【参考方案1】:

在阅读您的问题时,它表示将 HTML 页面连接到 SQL 数据库。当我读到它时,它让我相信您的 HTML 页面具有 .html 扩展名。建立 MySQL 连接所需的 PHP 代码需要一个 .php 扩展名才能运行。

【讨论】:

我以为把 php 和 ?> 围绕 php 部分将使其工作。我如何将两者分开,因为它们非常交织在一起 是的,在以 .php 作为扩展名的文件中。 被称为分隔符,它们告诉服务器端的服务器在其中执行 php 代码。否则,服务器会将您的 php 代码解释为 HTML,认为您想在 .html 文件上显示代码。顺便说一句,不要在第一个 之后包含空格? php。它应该是 我刚刚阅读了您评论的第二部分。我认为没有必要将两者分开。 HTML 将在 .php 文件中运行。我建议将您的文件名更改为具有扩展名 .php 并查看它会将您带到哪里。 php 文件如何知道在某些部分运行 html? php 分隔符之外的任何内容(而不是其他类型的分隔符)都是 .php 文件中的 HTML。在名为 file.php 的新文件中尝试此示例 html here 返回 html。 【参考方案2】:

你会想要打开一些调试并考虑使用 mysqli,因为 mysql 已被弃用。 https://docs.microsoft.com/en-us/azure/mysql/connect-php这是一个很好的教程

用于调试添加

ini_set('display_errors',1);
error_reporting(E_ALL);

//and
if (!$mysql) 
    die('Could not connect: ' . mysql_error());

<!DOCTYPE html>
<html>

<head>
  <link rel="stylesheet" type="text/css" href="Style.css">
</head>
<?php
ini_set('display_errors',1);
error_reporting(E_ALL);
$host="myname.database.windows.net";
$username="theUser";
$password="password";
$database="databaseName";
$tbl_name="tableName";

$mysql = mysql_connect($host, $username, $password)or die("cannot connect"); 
if (!$mysql) 
    die('Could not connect: ' . mysql_error());

mysql_select_db($database);
$sql='SELECT * FROM $tbl_name';
$result=mysql_query($sql); 

?>

【讨论】:

我已经尝试过调试器。当我运行代码时,它们似乎没有显示任何内容,这让我认为它应该可以工作?我在 $mysql、$sql 和 $result 上运行它们

以上是关于将 HTML 网页连接到 SQL Server的主要内容,如果未能解决你的问题,请参考以下文章

c# winform程序怎么连接到本地sqlserver 数据库啊

PHP网页怎么连接到MYSQL数据库

sql server数据库连接的问题 急急急!!!

PHP网站怎么连接到数据库?

如何将 Cowboy (Erlang) websocket 连接到 webflow.io 生成的网页

通过 node-red 将 Python 连接到网页