使用 PHP 从 SQL Server 中选择数据
Posted
技术标签:
【中文标题】使用 PHP 从 SQL Server 中选择数据【英文标题】:Selecting data from SQL Server Using PHP 【发布时间】:2019-01-19 14:12:38 【问题描述】:我正在尝试使用 php 从我的 PC 上的本地数据库中选择数据,但是当我运行 127.0.0.1/test.php 文件时出现此错误。
错误:
Fatal error: Uncaught Error: Call to undefined function mysql_connect() in
C:\xampp\htdocs\test.php:11 Stack trace: #0 main thrown in
C:\xampp\htdocs\test.php on line 11
这是我的 PHP 脚本:
<?php
$servername = "Windows local servername";
$username = "Windows username";
$password = "windows password";
$dbname = "dbname";
// Create connection
$conn = mysql_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn)
die('error connecting to database');
else
mysql_select_db(dbname, $conn);
$sql = "SELECT UserId, UserEmail, UserPassword FROM User";
$result = $conn->query($sql);
if ($result->num_rows > 0)
// output data of each row
while($row = $result->fetch_assoc())
echo "id: " . $row["UserId"]. " - UserEmail: " . $row["UserEmail"]. " " . $row["UserPassword"]. "<br>";
else
echo "0 results";
$conn->close();
?>
我在网上四处查看,但我无法弄清楚这里有什么问题。我可以运行一个 hello world php 脚本并且它可以工作,所以我假设它与数据库的连接问题,但我在这里错过了什么?谢谢
额外:
我有:
【问题讨论】:
【参考方案1】:尝试运行
phpinfo()
然后寻找mysql
扩展,在ubuntu 中你可以通过输入来安装它们
sudo apt-get install php-pdo-mysql
无论如何,您尝试使用的指令在 HP 5.5.0 中已被弃用,并在 PHP 7.0.0 中被删除,所以可能这就是它丢失的原因...取决于您的 PHP 版本,您可以尝试使用 @987654325 @ 扩展名改为:
$mysqli = mysqli_connect("example.com", "user", "password", "database");
$res = mysqli_query($mysqli, "SELECT 'Please, do not use ' AS _msg FROM DUAL");
$row = mysqli_fetch_assoc($res);
echo $row['_msg'];
例如,您可以在http://php.net/manual/en/mysqli.quickstart.dual-interface.php 获得有关使用 PHP7 执行此操作的实际方式的更多信息
【讨论】:
我使用的是 php 7.2.8【参考方案2】:来自the docs
此扩展在 PHP 5.5.0 中被弃用,并在 PHP 中被删除 7.0.0。相反,应该使用 MySQLi 或 PDO_MySQL 扩展。
您可能希望使用Microsoft's drivers for PHP for SQL Server 而不是 PDO 中的 ODBC 驱动程序。
【讨论】:
【参考方案3】:代替 $conn = mysql_connect($servername, $username, $password, $dbname); 采用 $connectioninfo=array("Database"=>"dbname", "UID"=>"userid", "PWD"=>"password", );
$con = sqlsrv_connect($server,$connectioninfo);
【讨论】:
以上是关于使用 PHP 从 SQL Server 中选择数据的主要内容,如果未能解决你的问题,请参考以下文章
从 sql server 获取选定的值到 php 中的下拉列表
在 iOS、PHP 和 JSON 中使用来自 SQL Server 的空值