我有一个问题,其中一个运行两次的php页面,但它只通过代理服务器连接时运行两次。如果用户没有通过代理连接,则此代码可以正常运行。
如何解决这个问题,以便它只会运行一次,无论是否通过代理连接?
这个PHP代码在Drupal CMS页面中运行,但独立于Drupal。用户通过单击超链接到达此页面。
我是否正在使用标题将用户重定向到另一个页面?
<?php
$userId = 0;
$userId = $_GET["userId"];
$userEmail = 0;
$userEmail = $_GET["userEmail"];
$userName = 0;
$userName = $_GET["userName"];
//connect to the database
$con = mysql_connect("HOSTNAME","USERNAME","PASSWORD");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
else
{
//echo "Connected.";
//echo "<br>";
}
mysql_select_db("formredirectdata", $con);
$userId = intval($userId);
mysql_query("INSERT INTO webforms
(userid, formisactive, formname, formtitle, shortdesc, confirmationlink) VALUES('$userId', '1', 'Form Name', 'Form Title', 'Short Description', 'Confirmation Link') ")
or die(mysql_error());
$newformnum = mysql_insert_id();
$recipientname = 0;
$recipientemail = 0;
$recipientname = "default" . $newformnum;
$recipientemail = $userEmail;
//send to the next script
header('Location: addtriggernewform.php?formnum2=' . $newformnum . '&recipientemail=' . $recipientemail . '&operator=(default)&inputname=(default)&triggervalue=(default)&userName=' . $userName);
?>
答案 0 :(得分:0)
我后来发现查询被处理两次的原因是我在两个不同浏览器中使用不同用户帐户登录到网站(基于Drupal)。在其中一个浏览器中注销后,查询不再被处理两次。这必须是涉及Drupal和临时Internet文件的怪癖。