这是我在php中的代码:
<?php echo "hello world";
$con = mysql_connect("localhost","root","root123");
echo "Connected";
mysql_close($con);
echo "hell"; ?>
它的打印你好世界,连接,终端地狱但它只在我在浏览器中运行时打印hello world。谁能告诉我为什么会这样呢?
感谢。
答案 0 :(得分:0)
请勿使用mysql_*
,请改用mysqli_*
。
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "collectively-codeigniter";
echo "hello world";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
echo "Not Connected";
} else {
echo "Connected";
}
// Close connection
$conn->close();
echo "hell";
?>
答案 1 :(得分:0)
可能是服务器端出现错误,服务器没有显示有关错误的信息。你看error.log
。
答案 2 :(得分:0)
我没有看到语法错误,因为你在连接线工作之前说过echo()
函数,我想问题可能是连接:
将mysql_connect
替换为mysqli_connect
,将mysql_close
替换为mysqli_close
,因为mysql_*
现已已弃用。
在连接线后添加以下代码:
if (!$con) {
die("Connection failed: " . mysqli_connect_error());
}
这将检查连接是否成功,如果失败则会打印错误说明。
可能导致问题的其他因素包括:
MySQL
个模块MySQL
服务未运行(检查Windows服务:运行 - &gt; services.msc)请告诉我这是否对您有所帮助:)。
答案 3 :(得分:0)
在输出有机会发生之前,您显然遇到了错误服务器端。可能是当你尝试连接到mysql服务器时,一切都在南方。这导致您将PHP配置为不显示的错误(非常适合生产,在开发时不太好),因此您看到&#34;没有&#34;。
首先通过php配置文件或设置
在PHP中启用错误报告ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
位于脚本的顶部。这应该可以让您更清楚地了解您的实际问题。猜测是由于mysql服务器上的权限,使用的端口,凭据或者那种性质的东西,你无法连接到mysql服务器。
另外,如上所述,根据您运行的PHP版本,mysql_*
命令已弃用,您应该使用mysqli_*
函数,PDO
或类似的东西。