joomla 3x 将字符串插入 sql 数据库

joomla 3x insert a string into sql database

我目前是 运行 一个 joomla 3x 门户,需要将一个字符串插入我的 MySQL 数据库,但到目前为止没有成功(遗憾的是,我不是程序员) .

所以我在我的用户 table 中添加了一个名为 "ok1" 的新字段,只想在其中插入一个字符串(实际上是一个超链接)并每次都用当前的字符串覆盖它最后执行代码的页面。

这是我使用的代码,但它总是"blows"我的门户...

$query = $db->getQuery(true);

$columns = "ok1"; 
$values = "my hyperlink";

$query
    ->insert($db->quoteName('#__users'))
    ->columns($db->quoteName($columns))
    ->values($db->quoteName($values));

$db->setQuery($query);
$db->execute();

$query = $db->getQuery(true);

$db->setQuery($query);
$db->execute();

希望有人能帮我解决这个问题,在此先感谢。

第二次尝试:

$content ="test"
$query = $db->getQuery(true);
Update `x__users` SET `ok1`=$content WHERE `user` = $user->id;
$db->setQuery($query);
$result = $db->execute();

你想要的是这样的

$columns = "ok1"; 
$values = "my hyperlink";

$query
    ->update($db->quoteName('#__users'))

    ->set($db->quoteName($columns) = $db->quote($values))
    ->where($db-quoteName('user') = $user->id)
;

$db->setQuery($query);
$db->execute();

也就是说你想更新一条记录而不是插入一条新记录,你希望它是where子句所指示的特定记录。还要为值使用正确的引号(因为它们不是名称)。

我终于明白了 - 感谢大家的帮助:

对于 Joomla 3.x

通过php更新MySQL-数据库中的column/field 通过 php

从 MySQL 数据库显示 column/field

要将数据导入数据库,请使用以下代码:

// $columns represent the name of the column/filed in the table
// $values represent the value the column/filed should be updated with
$columns = "ok1"; 
$values = "my hyperlink";

$query = $db->getQuery(true);
$query
    ->update($db->quoteName('#__users')) //the name of the table
    ->set($db->quoteName($columns) . ' = ' . $db->quote($values)) 
    ->where($db->quoteName('id') . ' = ' . $user->id) //the current user ID to match the column "id" 
;

$db->setQuery($query);
$db->execute();

要从数据库中获取数据,请使用以下代码:

$query= "SELECT `ok1` FROM `#__users` WHERE `id` = $user->id"; 
$database->setQuery($query);
$ok1_link= $database->loadResult();

我使用并推荐一个很棒的扩展名为 Sourcerer 将代码直接放入文章中 - 工作完美基本版本是免费的,支持也是顶级的!!