首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >脚本未正确发送登录信息

问脚本未正确发送登录信息
EN

Stack Overflow用户
提问于 2013-05-31 16:14:22
回答 1查看 52关注 0票数 1

我刚开始编写我自己的脚本大约一个小时前,我遇到了一个错误,我不确定如何修复,它似乎一切都正确解析,除了用户名,由于某些原因,当我执行我的PHP table create脚本时,它没有解析来自config.php的用户名,而是执行没有用户名的脚本。

我把代码放在phpcodecheker.com/上,它没有给我任何东西,甚至没有任何警告,它真的让我很困惑,代码对我来说看起来很好,但我在这方面相当新手,所以我可能遗漏了一些很大的东西,任何帮助都会非常感谢。

为什么这段代码在尝试连接时不能将用户名解析为createtable.php?

有问题的代码片段;堆栈格式化代码块的方式让我非常困惑,所以我将使用pastebin

config.php

createtable.php

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-31 16:20:58

这是因为您在config.php中混合了mysqli和mysql api,最终根本没有连接。

代码语言:javascript
复制
mysqli_connect($db_hostname, $db_username, $db_password)

mysql_select_db($db_database) 

要使用mysqli扩展到数据库的正确连接(由于mysql_*函数已被弃用,使用mysqli显然更好),请执行以下操作:

代码语言:javascript
复制
$mysqli = new mysqli('localhost', 'fake_user', 'my_password', 'my_db');

if ($mysqli->connect_errno) {
    die('Connect Error: ' . $mysqli->connect_errno);
}

你可以查看documentation here

我想补充的是,您可以在任何其他脚本中使用来自config.php的连接。

代码语言:javascript
复制
require('config.php');

因此,您的creatables.php将如下所示

代码语言:javascript
复制
require("config.php");

$sql="CREATE TABLE quoter (
    id int NOT NULL AUTO_INCREMENT,
    quote text NOT NULL,
    quoteby CHAR(50) NOT NULL,
    PIMARY KEY (id)
    )";

if (mysqli_query($mysqli,$sql))
{
    echo "Table 'quoter' was created sucessfully";
}
else
{
    echo "Error creating table 'quoter': ".mysqli_error($mysqli);
}

和你的config.php

代码语言:javascript
复制
$mysqli = new mysqli('localhost', 'fake_user', 'my_password', 'my_db');

if ($mysqli->connect_errno) {
    die('Connect Error: ' . $mysqli->connect_errno);
}

我希望您注意到,$mysqli是处理连接的参数,因此在数据库中执行操作时需要传递此参数,例如

代码语言:javascript
复制
mysqli_query($mysqli,$sql);
           //^here it is
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16852769

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档