我认为以下代码是正确的,并且连接也没问题,但它无法创建db。以下与创建db相关的代码有什么问题吗?
$con = mysql_connect("localhost","root","mypass");
if($con) {
echo "Connection Accomplished";
}
else {
echo "Fail to connect" . mysqli_error($con);
}
$sql1 = "CREATED DATABASE jokedb";
$create = mysqli_query($con, $sql1);
if ($create) {
echo "DB is Created";
}
else {
echo "Fail to connect DB";
}
答案 0 :(得分:1)
存在语法错误。 Keyword
为Create
而不是Created
$sql1 = "CREATE DATABASE jokedb";
答案 1 :(得分:1)
我看到两个问题:
mysql_connect
,然后使用mysqli_
方法。您不能同时使用两者 - 使用mysqli_connect
。CREATE
(添加了D
)。答案 2 :(得分:0)
在这种情况下,错误可能与关键字“create”有关,您还需要验证数据库用户是否具有执行create database语句的权限。我认为以下代码更符合逻辑
$con = mysql_connect("localhost","root","mypass");
if($con) {
$sql1 = "CREATE DATABASE jokedb";
$create = mysql_query($con, $sql1);
if ($create) {
echo "DB is Created";
}
else {
echo "Database creation fail";
}
}
else {
echo "Fail to connect" . mysql_error($con);
}
答案 3 :(得分:0)
$sql1 = "CREATED DATABASE jokedb";
应该是
$sql1 = "CREATE DATABASE jokedb";
我认为不允许使用mysql和mysqli编写代码。 此外,当您使用字符串时,请使用单引号而不是双引号“。 当你在字符串中使用变量时,你应该使用双引号。 喜欢这个
$world = 'world';
$test = "Hello $world";
您也可以使用单引号,但是您应该像这样编写代码
$world = 'world';
$test = 'Hello '.$world;
我的最后一个提示。 你应该检查你的if语句。
if($con === TRUE) {
...
字符串链接:http://php.net/manual/en/language.types.string.php
if语句的链接:PHP IF statement for Boolean values: $var === true vs $var