【问题标题】:Random Generator Word Generator - PHP随机生成器词生成器 - PHP
【发布时间】:2017-09-03 02:49:39
【问题描述】:

我正在尝试在同一页面上创建一些随机词生成器来生成动词、名词等(最终创建一个情节生成器,但用户可以选择随机生成的建议)

我已经成功创建了它,但是,当我单击同一页面上的另一个生成器时,我希望生成的随机词留在框中(例如,如果我单击建议一个名词并生成一个词,那么我去点击建议一个形容词和一个形容词生成,但名词从前一个框中消失)

<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Untitled Document</title>
</head>

<body>

<?php 

{
{

$Noun=array("just", "assume", "there", "are", "lots", "of", "nouns", "in", "here");

//echo rand(0, 2);
$myRandom = rand(0, 99);
//echo $Cars[$myRandom];
//if first name is blank/null then put 
}
?> 

<form action="quote.php">
    Noun<br>
    <input type="text" name="firstname" 
           value="<?php if (isset($_GET['Noun'])){echo $Noun[$myRandom];} }?>"><br>
    <input type="submit" name ="Noun" value="Suggest">
</form>

<?php 

{
{

$Adj=array("just", "assume", "there", "are", "lots", "of", "adjectives", "in", "here");

//echo rand(0, 2);
$Random = rand(0, 99);
//echo $Cars[$myRandom];
//if first name is blank/null then put 
}
?> 

<form action="quote.php">
    Noun<br>
    <input type="text" name="firstname" 
           value="<?php if (isset($_GET['Adjective'])){echo $Adj[$Random];} }?>"><br>
    <input type="submit" name ="Adjective" value="Suggest">
</form>

</body>
</html>

【问题讨论】:

  • 您的表单中没有方法。您打算使用POST 或GET 吗?
  • 我不太确定,我对此很陌生,我很抱歉。基本上我试图在这个网站上重新创建类似的东西plot-generator.org.uk/story - 我想可能是POST 的建议按钮,因为我只是希望代码出现在框内 - 而不是提交新表单??
  • 嘿@Gareth,在我给出答案之前,我只想知道。 quote.php 是否会以一些结果重定向回此页面?
  • 嗨@Douglas-我是的,我认为确实如此-我可能做错了-我正处于尝试构建类似于此网站的过程的开始-plot-generator.org.uk/story - 目前我只是想在继续之前开发建议按钮

标签: php random generator


【解决方案1】:

您可以尝试使用 ajax,而不是在一个页面中编写所有 php 和 html 代码,这会使其笨拙。

设置一个对 php 脚本的 ajax 调用,该脚本将返回一个随机名称,然后将该名称分配给输入框。例如;

为您的输入和按钮分配一个 ID;

<input id='name' name='name' />
<button id="submit">Generate random name</button>

在你的 ajax 脚本中,调用 php 脚本

$( "#submit" ).bind( "click", function() {
$.ajax({
         type: 'POST',
           url: "quote.php",
           success: function(result){
               //assign result to input
               $('#name').val(result);
           }
     })
  })

在您的 php 脚本中,以任何方式生成名称并通过 echo 发回结果。

<?php

//generate random names and other stuff
echo $random;

你可以用任何你想要的方式修改它。

如果有帮助或发现问题,请告诉我。

【讨论】:

  • 您好,谢谢您,但是,仅使用 php 是不可能的吗?只是出于兴趣?
  • 我不这么认为。可能会,但如果不必继续加载页面会更好。此外,您编写的代码更少,并且结合 jquery、ajax 和 php 结构更好。试一试。
  • 欣赏它,我已经使用上面的代码进行了尝试,但它有点超出我的想象,我无法让它工作 - 我在过去 2 周内才开始使用 PHP 并且为了不刷新页面,您需要使用不同的语言开始变得有意义!以前没有使用过 Ajax 或这些。无论如何我会继续尝试,不知道我做错了什么!干杯人,
  • 好的,伙计。但是如果你以前用过 javascript,ajax 就很简单。因此,您可以慢慢学习 ajax 并慢慢学习 php。如果您还没有尝试过 javascript,请尝试一下。它将使您在网页设计和开发行业的生活变得更加轻松。一切顺利。 ;)。
猜你喜欢
  • 2013-09-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-18
  • 1970-01-01
相关资源
最近更新 更多