我构建了一个本地数据库,并使用连接脚本通过以下代码连接到localhost下的数据库:
mysql_connect('localhost', 'root', '');现在我需要将生产服务器的工作转移到我的实际服务器上。
我的第一个问题是,我应该将"localhost“更改为什么,以及对根的理解?我需要在我的服务器上准备一个私有部分,但目前一切都在public_html中。所以这就是我用来代替localhost的东西吗?
但是,在搜索时,我发现mysql_connect已被弃用。那么替代方案是什么呢?
这是用于连接到数据库marmit_1的完整脚本
<?php
mysql_connect('localhost', 'root', '');
mysql_select_db('marmit_1');发布于 2014-03-22 00:48:21
在本例中,localhost是脚本尝试连接到MySQL服务器的主机名。localhost通常连接到环回适配器,换句话说,它连接到运行代码的同一台计算机。
如果MySQL服务器与Apache/PHP运行在同一台物理机器上,那么您可以使用localhost作为主机名连接到MySQL服务器,前提是MySQL服务器配置为在本地主机上运行(缺省设置)。
只有在MySQL服务器位于远程主机上或手动配置为不绑定到127.0.0.1的默认环回适配器时,才能更改localhost。
发布于 2014-03-22 00:36:07
下面是MySQLi连接的简单示例。
<?php
$con=mysqli_connect("localhost","root","password","database_name");
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM test");
echo "<table border='1'>
<tr>
<th>First name</th>
<th>Last name</th>
<th>Caption</th>
</tr>";
while($row = mysqli_fetch_array($result)) {
echo "<tr>";
echo "<td>" . $row['firstname'] . "</td>";
echo "<td>" . $row['lastname'] . "</td>";
echo "<td>" . $row['caption'] . "</td>";
echo "</tr>";
}
echo "</table>";
mysqli_close($con);
?>参考文献:
发布于 2014-03-22 00:50:00
这是super simple PDO-based solution:
<?php
include 'bestpdo.php';
$result = DB::query("SELECT * FROM test")->fetchAll();
?>
<table border='1'>
<tr>
<th>First name</th>
<th>Last name</th>
<th>Caption</th>
</tr>
<?php foreach($result as $row) {
<tr>
<td><?=$row['firstname']?></td>
<td><?=$row['lastname']?></td>
<td><?=$row['caption']?></td>
</tr>
<?php endforeach ?>
</table>请注意,使用PDO包装器,无论运行什么查询,您的代码都将保持与过去基于ext的旧mysql一样简单。
而对于原始的mysqli,这将是痛苦和痛苦--这些广告都不愿意告诉你。
https://stackoverflow.com/questions/22564226
复制相似问题