【问题标题】:How would I place a random generated number in a form field?如何在表单字段中放置随机生成的数字?
【发布时间】:2013-07-09 05:46:16
【问题描述】:

像这样:

形式:
标题 - [ ]
描述 - [ ]
密码 - [ ]

不想要自己的密码?
[生成一个]

然后 [生成一个] 按钮只会在密码字段或所需的任何字段中放置一个随机数。

我该怎么做?

我以为这样就可以了:

function generate() {
$placerand = rand();
}

然后将其放在表单域的“值”中。

<form>
<input type="text" value="<?php echo $placerand; ?>" placeholder="password">
<input type="submit" onclick="generate()" value="Generate a random number"><>
</form>

但是,我认为 php 函数是一个 javascript 函数,所以这行不通... 会吗?

【问题讨论】:

  • 听起来像是 JavaScript 的工作。查找math.random()document.getElementById 以及element.value
  • 是的,我的思维过程更倾向于 javascript...@DaveChen,您知道我可以运行的任何教程来进一步理解这种功能吗?
  • 这里要注意的是PHP在HTML和Javascript之前被解析。所以你不会去JQuery否则你需要刷新页面。
  • 即如果数字是在服务器端生成的。

标签: php random passwords generated


【解决方案1】:

这是一个例子

function GetRandom() {
  var myElement = document.getElementById("pwbx")
  myElement.value = Math.random()
}
<input type="Textbox" id="pwbx" />
<button OnClick="GetRandom()" type="button">generate</button>

【讨论】:

  • 调试器可以安全删除,我把它留在里面进行测试。它基本上意味着当您在 chrome 中打开调试窗口时,它将暂停网页并让您逐步执行各个代码行。我现在将其删除
  • 我会试一试的,不过看起来可以。我会尽快给你接受的答案。
  • 我在 XAMPP 沙箱中对其进行了测试,它确实有效。如果您需要帮助将其应用于您的特定情况,请询问
【解决方案2】:

我使用了相同的代码,我实现了你真正想要的,这就是我完成它的方式(工作):

    <?php
srand ((double) microtime() * 1000000);
$random3 = rand(1000,9999);
?>
<?php echo $random3; ?>
<form>
<input type="text" value="<?php echo $random3; ?>" placeholder="password">
<input type="submit" onclick="generate()" value="Generate a random number">
</form>

【讨论】:

    【解决方案3】:

    首先你可以使用javascript math.random() ,每次调用它都会输出一个随机数。将其放置在 onclick 事件中您想要的任何位置

    function sampleExplanation(){
     var x = jQuery("#demo");
     x.html(Math.floor((Math.random()*10)+1));
    
    }  
    

    将放置数据的元素的“demo” id。

    这是一个示例函数,它将生成 1 - 10 之间的随机数。同样,您可以编写自己的函数来生成任意范围内的随机数。

    【讨论】:

    • 传入的减号(虽然我不会投反对票),你不需要 jQuery :P
    • 其实我一直都在使用 jQuery,它一直在我的脑海里。是的,它不需要总是使用 jQuery。
    【解决方案4】:

    单行生成字符串:

    <?php
    substr(str_shuffle(str_repeat('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789',5)),0,5);
    ?>
    

    字符串可以重复出现一个字符多次出现的可能性。 你可以增加我设置的大小为5

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-07-26
      • 2011-10-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-20
      • 1970-01-01
      相关资源
      最近更新 更多