Php 从Zipcode表单条目重定向URL

Php 从Zipcode表单条目重定向URL,php,forms,Php,Forms,好的。在寻求帮助之前,我一直在努力尝试自己解决这个问题,但4个小时后,谷歌的前4个页面点击了,我任由你摆布。 我想一个简单的一行表单,用户可以输入他们的邮政编码,它会自动重定向到一个合作伙伴的网站。 Ie.用户输入80013并将其转发至www.domain1.com 用户输入80303并将其转发至www.domain2.com 我知道我遗漏了一些非常小的东西,但无论我在PHP中尝试使用什么变体,它都只会进入domain1.com,无论我从哪个zip数组调用 html: 邮政编码: 3.php

好的。在寻求帮助之前,我一直在努力尝试自己解决这个问题,但4个小时后,谷歌的前4个页面点击了,我任由你摆布。 我想一个简单的一行表单,用户可以输入他们的邮政编码,它会自动重定向到一个合作伙伴的网站。 Ie.用户输入80013并将其转发至www.domain1.com 用户输入80303并将其转发至www.domain2.com

我知道我遗漏了一些非常小的东西,但无论我在PHP中尝试使用什么变体,它都只会进入domain1.com,无论我从哪个zip数组调用

html:


邮政编码:
3.php



请帮忙

您在表单中使用的是
method='get'
,但在PHP中使用的是
$\u POST
。你需要选择一个或另一个。

你差点就成功了。试试这个:
if(在数组中($zip,$loc1))

当您键入
$zip==$loc1
时,它会尝试将字符串与数组进行比较,这将始终返回FALSE。另外,您需要将表单的方法设置为
GET
或分配
$zip=$\u GET['zip']位于脚本顶部,以保持请求方法的一致性


最后,这不会影响脚本的结果,但是
exit()
和结束标记(
?>
)是多余的,在这里没有效果,假设这是整个脚本。

您使用的是
html表单
方法=“GET”
,您使用
$\U POST
访问的是
php文件
。这就是问题所在

您在数组()中编写的
是错误的

它应该是为例如:

<?php
$os = array("Mac", "NT", "Irix", "Linux");
if (in_array("Irix", $os)) {
    echo "Got Irix";
}
if (in_array("mac", $os)) {
    echo "Got mac";
}
?>

oops!我最初确实有if(在_数组中($zip$loc1)),但在这里发布之前的某个时候更改了它。让命令生效!我要喝很多酒,忘了这件事。
<?php

$zip = $_POST['zip']; //your form method is post

$loc1 = array (80013,80015,80016,80017,80018,80019,80104,80107,80108,80109,80112,80116,80118,80120,80121,80122,80123,80124,80125,80126,80127,80128,80129,80130,80134,80135,80138,80160,80161,80162,80163,80165,80166,80433,80453,80465,80470);
$loc2 = array (80601,80602,80603,80614,80640,80022,80037,80241,80233,80229,80239,80240,80249,80238,80216,80202,80205,80206,80207,80209,80203,80218,80220,80222,80226,80231,80224,80246,80210,80230,80204,80237,80010,80012,80014,80040,80041,80042,80044,80045,80046,80047,80247,80110,80111,80150,80151,80113,80155,80102,80427,80621,80444,80137);
$loc3 = array (80303,80305,80302,80304,80301,80310,80466,80516,80026,80027,80020,80021,80023,80002,80003,80004,80005,80007,80030,80031,80401,80403,80427,80439,80452,80457,80422,80033,80234,80260,80221,80212,80211,80215,80214,80226,80228,80223,80204,80232,80227,80235,80236);

if(in_array($zip == $loc1)) {
    header("Location: http://www.domain.com");
} 

elseif(in_array($zip == $loc2)) {
    header("Location: http://www.domain2.com");
} 
else {
    header('Location: http://www.domain3.com');
}
exit();

?>
<?php
$os = array("Mac", "NT", "Irix", "Linux");
if (in_array("Irix", $os)) {
    echo "Got Irix";
}
if (in_array("mac", $os)) {
    echo "Got mac";
}
?>