【问题标题】:How to draw from the database a number that is from a random number to a number in the database?如何从数据库中提取一个从随机数到数据库中的数字的数字?
【发布时间】:2020-02-08 14:48:59
【问题描述】:

我想从 1 到 X 中选择一个数字,它在 X 中显示数据库中的某些内容。

你面前的代码,我写的,我认为它应该充分利用它,但它不起作用

$random = rand(1,3);
    $up_pras = $db->query("UPDATE `events` SET up_pras=up_pras + '".$random."' WHERE ID='".$user_id."'");
    $diamonds = $up_pras;
    $msg = '<div class="green" style="width:400px;">yes! i give you: '.$diamonds.' diamonds!</div> ';
    mysql_query("UPDATE `resources` SET `geluksrad` = `geluksrad` - '1', `diamonds` = `diamonds`+ '".$diamonds."' WHERE ID='".$user_id."'");

这是我尝试过的另一个代码,但完全失败

$random = rand(1,3);
$up_pras = $db->query("UPDATE `events` SET up_pras=up_pras + '".$random."' WHERE ID='".$user_id."'");
$diamonds = rand(1,$up_pras);
$msg = '<div class="green" style="width:400px;">yes! i give you: '.$diamonds.' diamonds!</div> ';
mysql_query("UPDATE `resources` SET `geluksrad` = `geluksrad` - '1', `diamonds` = `diamonds`+ '".$diamonds."' WHERE ID='".$user_id."'");

【问题讨论】:

  • 请提供样本数据和期望的结果。这是什么意思? “我想从 1 到 X 中选择一个数字,它在 X 中显示数据库中的某些内容。”还要标记您正在使用的数据库。并且,学习使用参数而不是修改查询字符串。
  • 好吧,比如我要的数字在1到5之间,数字5就叫X,现在,每次有人点击“让我”的例子赶上数据库和谁发送“给我”不会得到 5,而是 6,依此类推
  • 您似乎在使用 2 个不同的 mysql api;你不能那样做。另外,如果你想“挑选”随机的东西,你需要 SELECT,而不是 UPDATE。

标签: php sql


【解决方案1】:

最终决定使用另一种样式,有效的代码是:

$random = rand(1,1);
$diamonds = rand(1,$ud['rsc']['diamonds_up_spin'])/5;
$msg = '<div class="green" style="width:400px;">yes! i give you: '.$diamonds.' diamonds!</div> ';
mysql_query("UPDATE `resources` SET `geluksrad` = `geluksrad` - '1', `diamonds` = `diamonds`+ '".$diamonds."', `diamonds_up_spin` = `diamonds_up_spin`+ '".$random."' WHERE ID='".$user_id."'");

非常感谢所有试图提供帮助的人

【讨论】:

  • 如果你真的还在使用mysql_*函数,你应该更新你的PHP版本! mysql_* 函数自 PHP 5.5 起已弃用,自 PHP 7 起已被删除!除此之外,您的 SQL 容易受到 SQL 注入的影响!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-30
  • 1970-01-01
  • 1970-01-01
  • 2014-07-03
相关资源
最近更新 更多