我正在进行一个简单的查询,但它不起作用,我不知道为什么.我最近开始熟悉PDO与数据库的连接.
这是代码:
连接是:
define("HOST","localhost");
define("USER","root");
define("PASS","password");
define("BASE","portugalforcedb");
try{
$conexao = 'mysql:host='.HOST.';dbname='.BASE;
$connect = new PDO($conexao, USER, PASS);
$connect->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}catch(PDOException $erro){
echo $erro->getMessage();
}
Run Code Online (Sandbox Code Playgroud)然后我创建一个像这样工作的查询:
try{
$query = $connect->query("SELECT N.id,N.titulo,N.texto,N.autor,N.data,J.imagem_noticia FROM noticias N JOIN jogo J ON N.jogo_id = J.id WHERE N.publicada =1 ORDER BY N.data DESC LIMIT 4");
}catch(PDOException $erro){
echo $erro->getMessage();
}
while($dados = $query->fetch(PDO::FETCH_ASSOC))
{
Run Code Online (Sandbox Code Playgroud)但后来我在另一个页面中创建另一个查询,这样不起作用:
$id = $_GET['id'];
try{
$query = $connect->prepare("SELECT N.id,N.titulo,N.texto,N.autor,N.data,J.imagem_noticia FROM noticias N JOIN jogo J ON N.jogo_id = J.id WHERE N.publicada =1 AND id=numero");
$query->bindParam('numero',$id,PDO::PARAM_INT);
$query->execute();
}catch(PDOException $erro){
echo $erro->getMessage();
}
$dados = $query->fetch(PDO::FETCH_ASSOC);
Run Code Online (Sandbox Code Playgroud)
我试过了:
$id = $_GET['id'];
try{
$query = $connect->query("SELECT N.id,N.titulo,N.texto,N.autor,N.data,J.imagem_noticia FROM noticias N JOIN jogo J ON N.jogo_id = J.id WHERE N.publicada =1 AND id=numero");
}catch(PDOException $erro){
echo $erro->getMessage();
}
while($dados = $query->fetch(PDO::FETCH_ASSOC))
Run Code Online (Sandbox Code Playgroud)
但然后出现此错误:
SQLSTATE [23000]:完整性约束违规:1052 where子句中的列'id'不明确
| 归档时间: |
|
| 查看次数: |
31715 次 |
| 最近记录: |