php - 无效参数编号 : parameter was not defined

标签 php mysql sql pdo

<分区>

我在执行简单的 INSERT 请求时遇到了一些问题。 如标题中所述,我收到此消息“无效参数编号:未定义参数”。第一个值是一个 id(主要是自动递增)

$req = $pdo->prepare('INSERT INTO championnat_classement 
                        VALUES (
                        "",
                        :Equipe,
                        :Championnat,
                        :Saison,
                        :Journee,
                        :Points,
                        :NbMatch,
                        :Position,
                        :Victoire,
                        :Nul,
                        :Defaite,
                        :MatchJoueDomicile,
                        :PointsDomicile,
                        :VictoireDomicile,
                        :NulDomicile,
                        :DefaiteDomicile,
                        :ButPourDomicile,
                        :ButContreDomicile,
                        :MatchJoueExterieur,
                        :PointsExterieur,
                        :VictoireExterieur,
                        :NulExterieur,
                        :DefaiteExterieur,
                        :ButPourExterieur,
                        :ButContreExterieur     
                        )');
if ($req->execute(array(
                        "Equipe" => $this->idEquipe1,
                        "Championnat" => $this->idChamp,
                        "Saison" => $this->saison,
                        "Journee" => $this->journee,
                        "Points" => $this->pointsTotaux,
                        "NbMatch" => $this->matchJouesTotal,
                        "Position" => $this->position,
                        "Victoire" => $this->matchGagneeTotal,
                        "Nul" => $this->matchNulTotal,
                        "Defaite" => $this->matchPerduTotal,
                        "MatchJoueDomicile" => $this->matchJouesDomicile,
                        "PointsDomicile" => $this->pointsDomicile,
                        "VictoireDomicile " => $this->matchJouesDomicile,
                        "NulDomicile" => $this->matchNulDomicile,
                        "DefaiteDomicile" => $this->matchPerduDomicile,
                        "ButPourDomicile" => $this->butMarquesDomicile,
                        "ButContreDomicile" => $this->butEncaissesDomicile,
                        "MatchJoueExterieur" => $this->matchJouesExterieur,
                        "PointsExterieur" => $this->pointsExterieur,
                        "VictoireExterieur" => $this->matchGagneeExterieur,
                        "NulExterieur" => $this->matchNulExterieur,
                        "DefaiteExterieur" => $this->matchPerduExterieur,
                        "ButPourExterieur" => $this->butMarquesExterieur,
                        "ButContreExterieur" => $this->butEncaissesExterieur
                    ))) {
                return "ok";
            }

如何解决?

最佳答案

在 VALUES 之前的第一个 () 中写下所有列名,并在第二个中跳过你的 id,在你放置 ""的地方 .. !!!我不知道你的专栏的确切名称,所以你必须写它们..

$req = $pdo->prepare('INSERT INTO championnat_classement 
                            (
                            Equipe,
                            Championnat,
                            Saison,
                            Journee,
                            Points,
                            NbMatch,
                            Position,
                            Victoire,
                            Nul,
                            Defaite,
                            MatchJoueDomicile,
                            PointsDomicile,
                            VictoireDomicile,
                            NulDomicile,
                            DefaiteDomicile,
                            ButPourDomicile,
                            ButContreDomicile,
                            MatchJoueExterieur,
                            PointsExterieur,
                            VictoireExterieur,
                            NulExterieur,
                            DefaiteExterieur,
                            ButPourExterieur,
                            ButContreExterieur
                            ) VALUES (
                            :Equipe,
                            :Championnat,
                            :Saison,
                            :Journee,
                            :Points,
                            :NbMatch,
                            :Position,
                            :Victoire,
                            :Nul,
                            :Defaite,
                            :MatchJoueDomicile,
                            :PointsDomicile,
                            :VictoireDomicile,
                            :NulDomicile,
                            :DefaiteDomicile,
                            :ButPourDomicile,
                            :ButContreDomicile,
                            :MatchJoueExterieur,
                            :PointsExterieur,
                            :VictoireExterieur,
                            :NulExterieur,
                            :DefaiteExterieur,
                            :ButPourExterieur,
                            :ButContreExterieur     
                        )');

关于php - 无效参数编号 : parameter was not defined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13223483/

相关文章:

sql - Oracle 更快的重叠检查

c# - 为什么 Visual C# express 2010 变得缓慢且不稳定,任务管理器中的句柄变得过高?

php - 使用编码为 UTF-8 的 PDFTk 填充的 pdf 中缺少字符

mysql - 从mysql获取数据到dataGrid

mysql - 带有多个 SELECT 的 SQL 查询

mysql - 连接两个选择查询,其中一个查询的结果依赖于另一查询

javascript - 使用 PHP AJAX 或 js 操作后获取文档源

php - 删除两个表中的数据

javascript - 如何在 hh :mm:ss format in javascript 中一次增加或减少百分比

mysql - 我只需要从 login1 字段中检索日期,该字段是 varchar,其值类似于 1/24/2019 13 :22:22?