gpt4 book ai didi

php - Joomla 使用 JDatabase 插入数据,其中表名存储在 php 变量中

转载 作者:行者123 更新时间:2023-11-29 20:53:56 26 4
gpt4 key购买 nike

描述:我正在自动创建由主表名称组成的数据库名称,并附加与下拉菜单中所选内容相关的全名。

代码:

       if ($leagueSelect === $result['leagueName'] && $divisionSelect === $result['divisionID'] && $tourType === 'robin') {

$tableName = "footleague_".$leagueSelect.$divisionSelect;
/****CREATE TABLE****/

$db = JFactory::getDBO();
$query = $db->getQuery(true);

$query = "CREATE TABLE IF NOT EXISTS `".( $tableName )."` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`round` TEXT NULL,
`logoHome` TEXT NULL,
`home` TEXT NULL,
`usrHome` TEXT NULL,
`scoreHome` INT(11) NULL,
`scoreAway` INT(11) NULL,
`logoAway` TEXT NULL,
`away` TEXT NULL,
`usrAway` TEXT NULL,
`confirm` INT(11),
PRIMARY KEY (`id`)
)";

$db->setQuery($query);

$result = $db->execute();

if ($result == true) {
echo 'Table created successfully!';
}else{
echo "Something went wrong with table creation. Please try again.";
}
}

这工作得很好,它创建了一个新表和所有列。将数据存储到该表中时就会出现问题。我需要能够获取存储在变量中的表名并将数据存储到其中。与创建表相同。

我尝试过这样的:

    $query = "INSERT INTO ".$tableName." (round, logoHome, home, usrHome, logoAway, away, usrAway),
VALUES ('".$round."' , '".$logoHome."' , '".$home."' , '".$usrHome."' , '".$logoAway."' , '".$away."' , '".$usrAway."')";

$db->setQuery($query);

$result = $db->execute();

...但它不会给我任何错误,也不存储数据。

我也尝试使用 stdClass 对象,但我不知道如何获取其中的表名称:

    $data = new stdClass();
$data->round = $round;
$data->home = $home;
$data->usrHome = $usrHome;
$data->logoHome = $logoHome;
$data->away = $away;
$data->usrAway = $usrAway;
$data->logoAway = $logoAway;

$db = JFactory::getDBO();
$db->insertObject($tableName, $data);

我怎样才能让它发挥作用?

谢谢。

最佳答案

我是这样解决的:

    $data = new stdClass();
$data->round = $round;
$data->home = $home;
$data->usrHome = $usrHome;
$data->logoHome = $logoHome;
$data->away = $away;
$data->usrAway = $usrAway;
$data->logoAway = $logoAway;

$db = JFactory::getDBO();
$db->insertObject($tableName, $data);

if ($result == true) {
echo 'Tournament was created successfully!';
}else{
echo 'ERROR!';
}

关于php - Joomla 使用 JDatabase 插入数据,其中表名存储在 php 变量中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37786300/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com