gpt4 book ai didi

php - 从 MySQL 迁移 PHP 应用程序时出现 PDO 异常 1049

转载 作者:行者123 更新时间:2023-11-29 12:42:07 24 4
gpt4 key购买 nike

我一直在尝试将以下mysql连接功能迁移到PDO:

function validate_email_input($email)
{
$dbc = @mysql_connect('localhost', 'userName', '******');
mysql_select_db('users', $dbc);

$query = "SELECT email FROM user_list WHERE email='$email'";
if ($result = mysql_query($query, $dbc))
{
$row = mysql_fetch_array($result);
if ($row['email'] == $email)
{
return TRUE;
}
else
{
return FALSE;
}
}
else
{
echo '<p class="error">Could not retrieve he data because:<br />' . mysql_error($dbc) . '.</p>
<p>The query being run was: ' . $query . '</p>';
}
}

这工作得很好。但是当我尝试使用以下 PDO 函数来获得相同的结果时,出现错误:

function validate_email_input($email)
{
// Step 1: Establish a connection
$db = new PDO("mysql:host=localhost;dbname=users", "userName", "******");

// Step 2: Construct a query
$query = "SELECT * FROM user_list WHERE email = '$email'";

// Step 3: Send the query
$result = $db->query($query);

// Step 4: Iterate over the results
if ($result)
{
$row = $result->fetch(PDO::FETCH_ASSOC);
if ($row['email'] == $email)
{
return TRUE;
}
else
{
return FALSE;
}
}
// Step 5: Free used resources
$result->closeCursor();
$db = null;
}

是的 - 我确实使用 try-catch 尝试了上述函数,但这不会影响任何内容。我仍然收到错误: fatal error :未捕获异常“PDOException”,消息为“SQLSTATE[HY000] [1049]未知数据库“用户”

我正在使用 Bitnami RubyStack (v. 1.9.3-25) 附带的 apache2 模块,该模块使用 PHP 版本 5.4.3已检查 php.ini 文件,所有 PDO 扩展均已取消注释。请帮忙!谢谢

最佳答案

找到解决方案了!显然它希望我在创建 PDO 对象时指定端口号 (localhost:3307),而不仅仅是 localhost。有人知道如何更改 Windows 版 Bitnami RubyStack 中的默认本地主机端口吗?

关于php - 从 MySQL 迁移 PHP 应用程序时出现 PDO 异常 1049,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25961213/

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