Php没有';t效应mysql数据库
我在通过php访问mySQL数据库时遇到问题。我用Php没有';t效应mysql数据库,php,mysql,Php,Mysql,我在通过php访问mySQL数据库时遇到问题。我用 $sql=“updateusers SET adagio=1,其中username='nanobots'” 问题是,updateusers SET adagio=1,其中username='nanobots'在我通过phpMyAdmin将其输入数据库时工作正常,但当我试图通过php代码更改数据库时,它不起作用。这是我的数据库权限的问题吗?如果是,我将如何着手改变它 以下是完整的代码: <?php $server = 'mysql.h
$sql=“updateusers SET adagio=1,其中username='nanobots'”代码>
问题是,updateusers SET adagio=1,其中username='nanobots'
在我通过phpMyAdmin将其输入数据库时工作正常,但当我试图通过php代码更改数据库时,它不起作用。这是我的数据库权限的问题吗?如果是,我将如何着手改变它
以下是完整的代码:
<?php
$server = 'mysql.hostinger.co.uk';
$user = 'u551200555_nano';
$pass = '12345';
$db = 'u551200555_logsy';
$connection = mysql_connect($server, $user, $pass)
or die ("Could not connect to server ... \n" . mysql_error ());
mysql_select_db($db)
or die ("Could not connect to database ... \n" . mysql_error ());
$sql ="UPDATE users SET adagio = 1 WHERE username='nanobots'";
?>
您的代码没有在数据库上执行SQL语句。它只是将变量设置为字符串值。(变量$sql
的名称没有什么特别之处。它可以是$foo
或其他任何东西。)
新的开发应该使用mysqli或PDO接口,而不是不推荐使用的mysql接口
$result = mysql_query($sql);
请注意,如果您升级到php>5.5,您使用的原始mysql驱动程序将被降级,无法工作。您可能需要使用mysqli或PDO
// mysqli
$mysqli = new mysqli("example.com", "user", "password", "database");
...
$result = $mysqli->query($sql);
// PDO
$pdo = new PDO('mysql:host=example.com;dbname=database', 'user', 'password');
....
$statement = $pdo->query($sql);
你不应该使用。您应该(至少)将代码重写为:
define
部分应该放在一个额外的文件中,最好不要放在webroot中。代替查询语句,您应该考虑使用.< /P>
旁注:
您必须运行每个查询,您基本上只是将字符串分配给变量。您所做的只是分配操作,您只需将字符串分配给变量$sql。如果你想让它执行,你必须把它放在php查询函数中。例如mysqli_查询($sql);或mysql_查询($sql) 更多信息:或者非常感谢!我一直在从一些旧的指南中学习php MySQL交互,但我想我现在必须寻找新的;)我不知道您的代码是否不完整,但我看不出您将查询发送到数据库的实际位置。例如:mysql\u查询($sql)代码>和,顺便说一句,mysql函数在PHP中会贬值。
define ('HOST','mysql.hostinger.co.uk');
define ('USER','u551200555_nano');
define ('PASS','12345');
define ('DB','u551200555_logsy');
$con = new mysqli(HOST,USER,PASS,DB);
if ($con->errno) { exit('No connection'.$con->error);}
mysqli_query($con,"UPDATE users SET adagio = 1 WHERE username='nanobots'");
$pdo = new PDO('mysql:host=example.com;dbname=database', 'user', 'password');
....
$statement = $pdo->query($sql);