我正在学习如何从php访问mysql数据库,我看到了一个带有mysql命令的基本代码(下面),但我意识到那些语法很旧,最好使用mysqli或PDO。我对此感到厌恶,我认为PDO就是这样,所以我很感激有关如何将其迁移到PDO的任何帮助:
1)连接到mysql数据库
include 'DB.php';
$con = mysql_connect($host,$user,$pass);
$dbs = mysql_select_db($databaseName, $con);
2)查询数据库
$result = mysql_query("SELECT * FROM $tableName"); //query
$array = mysql_fetch_row($result); //fetch result
3)回声结果为json
echo json_encode($array);
答案 0 :(得分:1)
一步一步
第一
$dsn = "mysql:host=localhost;dbname=test;charset=utf8";
$opt = array(
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
);
$pdo = new PDO($dsn,'root','', $opt);
第二
$id = 1;
$stm = $pdo->prepare("SELECT name FROM table WHERE id=?");
$stm->execute(array($id));
$name = $stm->fetchColumn();
将结果作为数组提取后,您可以将其编码为json
这来自stackoverflow PDO
标记维基,您应该有一个look here
答案 1 :(得分:-1)
我发现这几乎与经典的mysql命令完全相同,现在在PDO中:
<code>
include 'DB.php';
$pdo = new PDO("mysql:host=$host;dbname=$databaseName;charset=utf8", $user, $pass);
$stm = $pdo->query("SELECT * from $tableName");
$array = $stm->fetch();
echo json_encode($array);
</code>