如何从URL获取数组参数?

时间:2012-07-11 04:54:45

标签: php

我有一个包含4个必需输入的表单。如果它们丢失,它们将被传递到URL中。

如果全部4缺失,它将如下所示:

?required[0]=field_name&required[1]=field_email&required[2]=field_number&required[3]=field_desc

如果缺少第一个field_name,则数组将向前推一个,因此field_email将为[0]。这意味着数组始终处于0,1,2,3顺序。

我想知道的是如何检索信息,以便我可以在缺少的输入周围放置红色边框?我需要的是:

while ($i=0,$i<=3,$i++) {
    do ($requiredArray[i] == 'field_email') {
        echo '<script type="text/javascript">$("#name)".css("border","1px solid #ff0000");</script>';
    } while ();
    endwhile;
}

3 个答案:

答案 0 :(得分:0)

使用Jquery查看表单验证,它将更简单,更易于扩展。

http://docs.jquery.com/Plugins/Validation

答案 1 :(得分:0)

你也可以在php中使用array_search,如下所示:

array_search("field_name",$_GET['required']);

如果该值大于或等于零,则可以进行处理。

就像,您可以将数组变量中的所有值说成$required_array,并且可以使用foreach循环,如下所示:

foreach($required_array as $val){
 if(!(array_search($val,$_GET['required'])>=0)){
   echo '<script type="text/javascript">$("#'.$val.')".css("border","1px solid #ff0000");</script>';
 }
}

答案 2 :(得分:0)

以下是在服务器端执行验证的表单示例:

<?php
$first_name = $_GET['fname'];
$last_name = $_GET['lname'];
$email = $_GET['email'];
$submit = $_GET['submit'];

if(empty($first_name) && !empty($submit)){
    $missing_fname = 1;
}
if(empty($last_name) && !empty($submit)){
    $missing_lname = 1;
}
if(empty($email) && !empty($submit)){
    $missing_email = 1;
}
?>
<table><form action="" method="get">
    <tr><td>Enter First Name:</td><td><input type="text" id="fname" name="fname" value="<?php echo $first_name; ?>" ></td><td><?php if($missing_fname == 1) echo "<font color='red'>This field is Mandatory!</font>" ?></td></tr>
    <tr><td>Enter Last Name:</td><td><input type="text" id="lname" name="lname" value="<?php echo $last_name; ?>" ></td><td><?php if($missing_lname == 1) echo "<font color='red'>This field is Mandatory!</font>" ?></td></tr>
    <tr><td>Enter email:</td><td><input type="text" id="email" name="email" value="<?php echo $email; ?>"></td><td><?php if($missing_email == 1) echo "<font color='red'>This field is Mandatory!</font>" ?></td></tr>
    <tr><td></td><td><input type="submit" value="submit" name="submit" id="submit"></td></tr>
    </form>
</table>