1

这只是一个用于我自己学习目的的项目。对于我的项目,用户将能够创建投票并回答它们。每个调查都有自己的唯一 ID,并且可以通过其唯一的 URL 访问。

我的问题是这个。我知道我可以通过这种方式解决问题,但这是一种学习体验。当用户提交此表单时:

    <form name="createPoll" action="polls.php" method="post">
        Poll Title: <input name="pollTitle" type="text" /><br />
        Option 1: <input name="pollOption" type="text" /><br />
        Option 2: <input name="pollOption" type="text" /><br />
        <input type="submit" value ="Submit Poll" /><br />
    </form>

我想运行一个脚本,将其添加到我的 MySQL 数据库中,并使用该脚本将为 URL 生成的 pollID,如下所示:

    http://www.mydomainname.com/polls.php?pollID=12345

其中“12345”是投票的唯一 ID。我的问题是这样的:

在提交我的表单时,将用户带到http://www.mydomainname.com/polls.php?pollID=12345(假设生成的 pollID 为“12345”)的最佳方式是什么?一旦脚本创建了唯一的 pollID,我是否必须在 php 中设置标题才能重定向它们?

谢谢

4

2 回答 2

1

生成 url,然后用于header()重定向页面。

例如:

$id = 12345;

$url = 'http://www.mydomainname.com/polls.php?pollID=' . $id;
header('Location: ' . $url);
于 2012-10-22T17:03:52.073 回答
1

顺便说一句:有两个名为“pollOption”的输入,小心:)

您的 INSERT 代码可能是这样的

$id=rand(100000,9999999999999999);
$checkid=mysql_query("SELECT ID FROM ID WHERE ID='$id'");
$checkidx=mysql_fetch_array($checkid);

if($_POST and $checkidx==null){
$title=$_POST['pollTitle'];
$opt1=$_POST['pollOption1'];
$opt2=$_POST['pollOption2'];
$insert=mysql_query("INSERT INTO ID,title,option1,option2 VALUES ('$id','$title','$opt1','$opt2')");
echo "Added! You re redirecting";
?>
<meta http-equiv="refresh" content="2;URL=http://www.mydomainname.com/polls.php?pollID=<?echo $id; ?>">

<?
}

而你的 polls.php 可能是这样的;

$id=$_GET['id'];
if($id!=null){
$idget=mysql_query("SELECT * FROM blabla WHERE ID='$id'");
$idgetx=mysql_fetch_array($idget);

echo $idgetx[0] . $idgetx[1];
}
于 2012-10-22T17:08:54.277 回答