Php pdo检索数据并填充记录

Php pdo检索数据并填充记录,php,mysql,pdo,Php,Mysql,Pdo,我已经问了一个关于PDO的问题,现在我无法选择数据并将其插入html表单中,以便允许用户选择什么,从而将记录添加到db表中 您没有正确使用准备好的语句。试试这个: <?php $id = $_GET['id']; $sth = $dbh->prepare("SELECT nome, cognome, indirizzo, civico, citta, prov FROM tagesroma W

我已经问了一个关于PDO的问题,现在我无法选择数据并将其插入html表单中,以便允许用户选择什么,从而将记录添加到db表中



您没有正确使用准备好的语句。试试这个:

   <?php 

   $id = $_GET['id'];

   $sth = $dbh->prepare("SELECT
        nome, cognome, indirizzo, civico, citta,
        prov
    FROM
        tagesroma
    WHERE
        id =  :id");

   $sth->bindParam(":id",$id,PDO::PARAM_INT);


  $sth->execute();


   ?>

您没有正确使用准备好的语句。试试这个:

   <?php 

   $id = $_GET['id'];

   $sth = $dbh->prepare("SELECT
        nome, cognome, indirizzo, civico, citta,
        prov
    FROM
        tagesroma
    WHERE
        id =  :id");

   $sth->bindParam(":id",$id,PDO::PARAM_INT);


  $sth->execute();


   ?>

调用非对象上的成员函数execute()时出错
表示此代码区域无效:

$sth = $dbh->prepare = 'SELECT
        nome, cognome, indirizzo, civico, citta,
        prov
    FROM
        tagesroma
    WHERE
        id = ' . $_GET['id'];
$sth = $dbh->execute();
正确的方法是:

$sth = $dbh->prepare("
  SELECT nome, cognome, indirizzo, civico, citta, prov
  FROM   tagesroma
  WHERE  id = ?
");
$sth->execute(array($_GET['id']));
  • 如果要使用换行符,请使用双引号
  • 知道
    prepare()
    是一个函数,所以用
    =
    跟随它是没有意义的
  • 整理代码以提高可读性

调用非对象上的成员函数execute()时出错表示此代码区域无效:

$sth = $dbh->prepare = 'SELECT
        nome, cognome, indirizzo, civico, citta,
        prov
    FROM
        tagesroma
    WHERE
        id = ' . $_GET['id'];
$sth = $dbh->execute();
正确的方法是:

$sth = $dbh->prepare("
  SELECT nome, cognome, indirizzo, civico, citta, prov
  FROM   tagesroma
  WHERE  id = ?
");
$sth->execute(array($_GET['id']));
  • 如果要使用换行符,请使用双引号
  • 知道
    prepare()
    是一个函数,所以用
    =
    跟随它是没有意义的
  • 整理代码以提高可读性

在HTML输出开始之前不要关闭PHP标记,否则您将遇到“Header ready sent”(标题已发送)错误。在HTML输出开始之前不要关闭PHP标记,否则您将遇到“Header ready sent”(标题已发送)错误。创建
$id
变量是不必要的。创建
$id
变量是不必要的。那么
下的else
条件如何query@Riccardo990我不知道你在问什么,但是看起来您应该使用数组而不是大量变量。因此,您的建议是删除
else
@Riccardo990
else
通常是个好主意——如果您有其他问题,请启动一个新线程。如果我的答案修复了执行错误,那么请将此答案标记为已接受。我将尝试您的答案,并在几分钟后尽快让您回答。如果
其他
条件正好低于query@Riccardo990我不知道你在问什么,但是看起来您应该使用数组而不是大量变量。因此,您的建议是删除
else
@Riccardo990
else
通常是个好主意——如果您有其他问题,请启动一个新线程。如果我的答案修复了执行错误,请将此答案标记为已接受。我将尝试您的答案,并在几分钟内尽快通知您