gpt4 book ai didi

php - 在 APACHE2 中创建数据库返回内部服务器错误

转载 作者:行者123 更新时间:2023-11-29 11:45:50 26 4
gpt4 key购买 nike

我正在尝试使用我的 pi 作为网络服务器。当我尝试在数据库中创建表时,它返回内部服务器错误。谁能帮我诊断一下是什么原因造成的?

    <?php
$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'anthony';
$dbname = "messages";
$conn = mysql_connect($dbhost, $dbuser, $dbpass, $dbname);
if(! $conn )
{
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully<br />';
$sql = "CREATE TABLE IF NOT EXISTS message_tbl (
message_id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
message_name VARCHAR(50) NOT NULL,
message_subject VARCHAR(40) NOT NULL,
message_txt VARCHAR(500) NOT NULL,
message_amount INT(10) NOT NULL,
message_die VARCHAR(10) NOT NULL,
message_modifier INT(10) NOT NULL,
message_roll INT(10) NOT NULL
)";
mysql_select_db( 'TUTORIALS' );
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
die('Could not create table: ' . mysql_error());
}
echo "Table created successfully\n";
mysql_close($conn);
?>

我通常至少希望它返回“无法创建表:”。我已经在我的 pi 上安装了 apache2、php 和 mysql,以及一个名为 messages 的数据库。

最佳答案

MySQL 的默认端口是 3306,而不是 3036。但是您确实应该废弃那些过时的代码并使用 PDO 重新开始。像这样的东西可能会起作用。我在使用该应用程序的设备上,所以可能不是我最好的作品,但至少应该让你指明正确的方向。

<?php
try {
$conn = new PDO("mysql:host=localhost;dbname=TUTORIALS", "root", "anthony");
echo 'Connected successfully<br />';
$sql = "CREATE TABLE IF NOT EXISTS message_tbl (
message_id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
message_name VARCHAR(50) NOT NULL,
message_subject VARCHAR(40) NOT NULL,
message_txt VARCHAR(500) NOT NULL,
message_amount INT(10) NOT NULL,
message_die VARCHAR(10) NOT NULL,
message_modifier INT(10) NOT NULL,
message_roll INT(10) NOT NULL
)";
$conn->query($sql);
echo "Table created successfully\n";
} catch (PDOException $e) {
die($e->getMessage());
}
?>

关于php - 在 APACHE2 中创建数据库返回内部服务器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34972435/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com