为什么我不能用PHP发布到mysql数据库?
大家好 我搜索了又搜索,似乎无法找出我的脚本到底出了什么问题。简单地说,我试图通过PHP将一行插入MySQL数据库,它显示了所有步骤,但不更新表中的记录。我的剧本是为什么我不能用PHP发布到mysql数据库?,php,mysql,Php,Mysql,大家好 我搜索了又搜索,似乎无法找出我的脚本到底出了什么问题。简单地说,我试图通过PHP将一行插入MySQL数据库,它显示了所有步骤,但不更新表中的记录。我的剧本是 <?php $link = mysql_connect('callingonchristcom.ipagemysql.com', 'jhedge', 'mypw'); if (!$link) { die('Could not connect: ' . mysql_error()); } echo 'Conne
<?php
$link = mysql_connect('callingonchristcom.ipagemysql.com', 'jhedge', 'mypw');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_select_db('user');
echo 'Step Two';
$mysqlstr="INSERT INTO users (FirstName,LastName,UserName,Password) VALUES ('John','Hedge','jhedge','mypw');";
echo 'Step Three';
mysql_query($myquerystr);
echo 'Step Four';
mysql_close($link);
?>
注意:请使用mysqli而不是mysql。
请从查询中删除额外的半列(;)
替换
$mysqlstr="INSERT INTO users (FirstName,LastName,UserName,Password) VALUES ('John','Hedge','jhedge','mypw');";
与
注意:请使用mysqli而不是mysql。
请从查询中删除额外的半列(;)
替换
$mysqlstr="INSERT INTO users (FirstName,LastName,UserName,Password) VALUES ('John','Hedge','jhedge','mypw');";
与
echo$mysqlstr;
这将给出传递给mysql\u查询的确切字符串。。将其输出到控制台,并直接在php管理员中执行该字符串,以查看是否出现任何错误。echo$mysqlstr;
这将给出传递给mysql\u查询的确切字符串。。将其输出到控制台,并直接在php管理员中执行此字符串,以查看是否出现任何错误。请尝试使用以下代码。我已经更新了你的代码
<?php
$link = mysql_connect('callingonchristcom.ipagemysql.com', 'jhedge', 'mypw');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_select_db('user',$link);
echo 'Step Two';
$mysqlstr="INSERT INTO users (FirstName,LastName,UserName,Password) VALUES ('John','Hedge','jhedge','mypw')";
echo 'Step Three';
mysql_query($mysqlstr,$link);
echo 'Step Four';
mysql_close($link);
?>
请尝试使用以下代码。我已经更新了你的代码
<?php
$link = mysql_connect('callingonchristcom.ipagemysql.com', 'jhedge', 'mypw');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_select_db('user',$link);
echo 'Step Two';
$mysqlstr="INSERT INTO users (FirstName,LastName,UserName,Password) VALUES ('John','Hedge','jhedge','mypw')";
echo 'Step Three';
mysql_query($mysqlstr,$link);
echo 'Step Four';
mysql_close($link);
?>
您是否尝试链接此…使用mysqli而不是mysql
<?php
$link = mysqli_connect('callingonchristcom.ipagemysql.com', 'jhedge', 'mypw');
if (!$link) {
die('Could not connect: ' . mysqli_error());
}
echo 'Connected successfully';
mysqli_select_db('user');
echo 'Step Two';
$mysqlstr = "INSERT INTO users (FirstName,LastName,UserName,Password) VALUES ('John','Hedge','jhedge','mypw')";
echo 'Step Three';
mysqli_query($link,$myquerystr);
echo 'Step Four';
mysqli_close($link);
?>
您是否尝试链接此…使用mysqli而不是mysql
<?php
$link = mysqli_connect('callingonchristcom.ipagemysql.com', 'jhedge', 'mypw');
if (!$link) {
die('Could not connect: ' . mysqli_error());
}
echo 'Connected successfully';
mysqli_select_db('user');
echo 'Step Two';
$mysqlstr = "INSERT INTO users (FirstName,LastName,UserName,Password) VALUES ('John','Hedge','jhedge','mypw')";
echo 'Step Three';
mysqli_query($link,$myquerystr);
echo 'Step Four';
mysqli_close($link);
?>
问题似乎在于你的变量,除非你在发帖时有打字错误。最初使用$mysqlstr
,但随后使用$myquerystr
。无论如何,使用Mysqli面向对象结构将使您受益匪浅。以这种方式重做您的代码,并让我知道您得到了什么:
$servername = "callingonchristcom.ipagemysql.com";
$username = "jhedge";
$password = "mypw";
$dbname = "user";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "INSERT INTO users (FirstName,LastName,UserName,Password) VALUES ('John','Hedge','jhedge','mypw')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
$servername=“callingochristcom.ipagemysql.com”;
$username=“jhedge”;
$password=“mypw”;
$dbname=“user”;
//创建连接
$conn=newmysqli($servername、$username、$password、$dbname);
//检查连接
如果($conn->connect\u错误){
die(“连接失败:”.$conn->connect\U错误);
}
$sql=“在用户(FirstName、LastName、UserName、Password)中插入值('John'、'Hedge'、'jhedge'、'mypw')”;
if($conn->query($sql)==TRUE){
echo“新记录创建成功”;
}否则{
echo“Error:”.$sql.“
”$conn->Error;
}
$conn->close();
问题似乎在于你的变量,除非你在发帖时有打字错误。最初使用$mysqlstr
,但随后使用$myquerystr
。无论如何,使用Mysqli面向对象结构将使您受益匪浅。以这种方式重做您的代码,并让我知道您得到了什么:
$servername = "callingonchristcom.ipagemysql.com";
$username = "jhedge";
$password = "mypw";
$dbname = "user";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "INSERT INTO users (FirstName,LastName,UserName,Password) VALUES ('John','Hedge','jhedge','mypw')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
$servername=“callingochristcom.ipagemysql.com”;
$username=“jhedge”;
$password=“mypw”;
$dbname=“user”;
//创建连接
$conn=newmysqli($servername、$username、$password、$dbname);
//检查连接
如果($conn->connect\u错误){
die(“连接失败:”.$conn->connect\U错误);
}
$sql=“在用户(FirstName、LastName、UserName、Password)中插入值('John'、'Hedge'、'jhedge'、'mypw')”;
if($conn->query($sql)==TRUE){
echo“新记录创建成功”;
}否则{
echo“Error:”.$sql.“
”$conn->Error;
}
$conn->close();
您的查询变量是$mysqlstr
,您在mysql\u查询中使用了$myquerystr
,因此不会插入您的查询变量是$mysqlstr
,您在mysql\u查询中使用了$myquerystr
,因此不会插入首先不要为数据库使用mysql
驱动程序折旧业务
使用pdo
或mysqli
驱动程序
下面是一个使用mysqli
驱动程序的简单示例
$db_name="students";
$db_username="root";
$db_password="pass";
$con=mysqli_connect("localhost",$db_username,$db_password,$db_name);
$query="INSERT INTO users (FirstName,LastName,UserName,Password) VALUES ('John','Hedge','jhedge','mypw')";
$result=mysqli_query($con,$query);
if($result->num_rows==1){
echo 'Insert success';
}else {
echo 'Error insert';
}
首先,不要在数据库操作中使用mysql
驱动程序,因为它会贬值
使用pdo
或mysqli
驱动程序
下面是一个使用mysqli
驱动程序的简单示例
$db_name="students";
$db_username="root";
$db_password="pass";
$con=mysqli_connect("localhost",$db_username,$db_password,$db_name);
$query="INSERT INTO users (FirstName,LastName,UserName,Password) VALUES ('John','Hedge','jhedge','mypw')";
$result=mysqli_query($con,$query);
if($result->num_rows==1){
echo 'Insert success';
}else {
echo 'Error insert';
}
您正在使用INSERT查询和saying,但没有更新记录?正确。当我检查用户数据库上的Users表时,它没有任何记录。您不会检查任何错误,因此您永远不会知道您的MySQL服务器是否已将自动提交设置为关闭
?您可以向我们显示您的表结构吗?您正在使用INSERT查询并说,但没有更新记录?正确。当我检查用户数据库上的Users表时,它没有任何记录。您不会检查任何错误,因此您永远不会知道您的MySQL服务器是否已将自动提交设置为关闭
?您能向我们展示您的表结构吗?谢谢您的建议。我试过了,但仍然没有更新。谢谢你的建议。我试过了,但仍然没有更新。谢谢你的建议。我在控制台中尝试了它,它在控制台中添加了记录fine.INSERT-INTO-users(FirstName,LastName,UserName,Password)值('John','Hedge','jhedge','mypw')echo mysql_error();在mysql_query()之后添加此选项,查看屏幕上是否打印出任何错误。谢谢您的建议。我在控制台中尝试了它,它在控制台中添加了记录fine.INSERT-INTO-users(FirstName,LastName,UserName,Password)值('John','Hedge','jhedge','mypw')echo mysql_error();在mysql_query()之后添加此项,以查看屏幕上是否打印出任何错误。谢谢。我尝试了,但它仍然没有用任何记录更新数据库。请尝试打印$link
连接对象。看来你的关系不太好。另外,我想知道你文件夹中的连接驱动程序是否正确。再次感谢你。它打印为资源id#2(不管是什么意思)。我的网络托管是通过ipage.com完成的,因此我不确定驱动程序放在哪里。我怎么能找到呢?我想我发现了一个错误,你在mysql_查询中传递了错误的变量名($mysqlstr,$link);就这样!非常感谢。非常感谢。我尝试了,但它仍然没有用任何记录更新数据库。请尝试打印$link
连接对象。看来你的关系不太好。另外,我想知道你文件夹中的连接驱动程序是否正确。再次感谢你。它作为资源id打印