Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/234.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
非常基本的PHP数组问题_Php_Arrays - Fatal编程技术网

非常基本的PHP数组问题

非常基本的PHP数组问题,php,arrays,Php,Arrays,我正在创建一个表单,用户在其中选中他们可能感兴趣的“服务”复选框,然后表单通过电子邮件发送给我。问题在于是否选中了框,所有结果都将被填写。我如何正确地做到这一点 大约有25个,但这里只有几个: $services = array(); if($_POST['master_planning']) {$services[] = "Master planning";} if($_POST['snow_plowing']) {$services[] = "Snow plowing";} if

我正在创建一个表单,用户在其中选中他们可能感兴趣的“服务”复选框,然后表单通过电子邮件发送给我。问题在于是否选中了框,所有结果都将被填写。我如何正确地做到这一点

大约有25个,但这里只有几个:

    $services = array();
if($_POST['master_planning']) {$services[] = "Master planning";} 
if($_POST['snow_plowing']) {$services[] = "Snow plowing";} 
if($_POST['fine_gardening']) {$services[] = "Fine Gardening";} 
if($_POST['deer_protection']) {$services[] = "Deer Protection";} 

$interested = implode(", ", $services);
我知道这是一件非常基本的事情,但我似乎无法独自解决它

HTML类似于:

<li><label for="planting"><input type="checkbox" name="planting" id="planting" value="x" /> Planting</label></li>
  • 种植
  • 好的,我想知道为什么所有的值都返回true,即使没有点击复选框,现在我该如何解决它

    我想我应该提到的是,这是表单(process.php)的第2页,实际的表单是index.php,我正在使用ajax脚本传递值

        <script type="text/javascript">
    $(document).ready(function() {
        $('#submit').click(function () {        
    
            var name = $('input[name=name]');
            var phone = $('input[name=phone]');
            var email = $('input[name=email]');
            var master_plan = $('input[name=master_plan]');
            var front_foundation = $('input[name=front_foundation]');
            var backyard_plan = $('input[name=backyard_plan]');
            var specialty_garden = $('input[name=specialty_garden]');
            var lawn_cutting = $('input[name=lawn_cutting]');
            var lawn_plant_health_care = $('input[name=lawn_plant_health_care]');
            var organic_property_care = $('input[name=organic_property_care]');
            var seasonal_clean_ups = $('input[name=seasonal_clean_ups]');
            var pruning = $('input[name=pruning]');
            var fine_gardening = $('input[name=fine_gardening]');
            var deer_protection = $('input[name=deer_protection]');
            var snow_plowing = $('input[name=snow_plowing]');
            var planting = $('input[name=planting]');
            var walk = $('input[name=walk]');
            var terrace = $('input[name=terrace]');
            var wall = $('input[name=wall]');
            var outdoor_kitchen = $('input[name=outdoor_kitchen]');
            var fireplace = $('input[name=fireplace]');
            var driveway = $('input[name=driveway]');
            var fencing = $('input[name=fencing]');
            var pergola = $('input[name=pergola]');
            var swimming_pool = $('input[name=swimming_pool]');
            var irrigation = $('input[name=irrigation]');
            var lighting = $('input[name=lighting]');
            var grading_drainage = $('input[name=grading_drainage]');
    
            var newsletter = $('input[name=newsletter]');
            var comments = $('textarea[name=comments]');
    
            if (name.val()=='') {
                name.addClass('hightlight');
                return false;
            } else name.removeClass('hightlight');
    
            if (email.val()=='') {
                email.addClass('hightlight');
                return false;
            } else email.removeClass('hightlight');
    
            var data = 
            'name=' + name.val() + 
            '&phone=' + phone.val() + 
            '&email=' + email.val() + 
            '&master_plan=' + master_plan.val()+            
            '&front_foundation=' + front_foundation.val()+
            '&backyard_plan=' + backyard_plan.val()+
            '&specialty_garden=' + specialty_garden.val()+
            '&lawn_cutting=' + lawn_cutting.val()+
            '&lawn_plant_health_care=' + lawn_plant_health_care.val()+
            '&organic_property_care=' + organic_property_care.val()+
            '&seasional_clean_ups=' + seasional_clean_ups.val()+
            '&pruning=' + pruning.val()+
            '&fine_gardening=' + fine_gardening.val()+
            '&deer_protection=' + deer_protection.val()+
            '&snow_plowing=' + snow_plowing.val()+
            '&planting=' + planting.val()+
            '&walk=' + walk.val()+
            '&terrace=' + terrace.val()+
            '&wall=' + wall.val()+
            '&outdoor_kitchen=' + outdoor_kitchen.val()+
            '&fireplace=' + fireplace.val()+
            '&driveway=' + driveway.val()+
            '&fencing=' + fencing.val()+
            '&pergola=' + pergola.val()+
            '&swimming_pool=' + swimming_pool.val()+
            '&irrigation=' + irrigation.val()+
            '&lighting=' + lighting.val()+
            '&grading_drainage=' + grading_drainage.val()+
    
            '&newsletter=' + newsletter.val() + 
            '&comments='  + encodeURIComponent(comments.val());
    
            $('.text').attr('disabled','true');
            $('.loading').show();
    
            $.ajax({
                url: "process.php", 
                type: "GET", 
                data: data, 
                cache: false, 
                success: function (html) { 
                    if (html==1) { 
                        $('.form').fadeOut('slow'); 
                        $('.done').fadeIn('slow'); 
                    } else alert('Sorry, unexpected error. Please try again later.'); 
                } 
            });
            return false;
        });                         
    }); 
    </script>
    
    
    $(文档).ready(函数(){
    $(“#提交”)。单击(函数(){
    变量名称=$('input[name=name]');
    var phone=$('input[name=phone]');
    var email=$('input[name=email]');
    var主计划=$(“输入[名称=主计划]”);
    var front_foundation=$('input[name=front_foundation]');
    变量后院计划=$(“输入[名称=后院计划]”);
    变量Speciality_garden=$('input[name=Speciality_garden]');
    var lawn_cutting=$('input[name=lawn_cutting]');
    var lawn_plant_health_care=$('input[name=lawn_plant_health_care]);
    var organic_property_care=$('input[name=organic_property_care]);
    变量季节性清理=$(“输入[名称=季节性清理]”);
    var pruning=$('input[name=pruning]');
    var fine_gardenting=$('input[name=fine_gardenting]');
    变量deer_protection=$(“输入[name=deer_protection]”);
    var snow_-plowing=$(“输入[name=snow_-plowing]”);
    变量种植=$('input[name=planning]');
    var walk=$('input[name=walk]');
    var terrace=$('input[name=terrace]');
    var wall=$('input[name=wall]');
    var outdoor_kitchen=$('input[name=outdoor_kitchen]');
    var壁炉=$('input[name=fireplace]');
    var driveway=$('input[name=driveway]');
    var fenging=$('input[name=fenging]');
    变量pergola=$('input[name=pergola]');
    变量游泳池=$('input[name=游泳池]);
    变量灌溉=$('input[name=irruption]');
    变量照明=$('input[name=lighting]');
    变量放坡排水=$(“输入[名称=放坡排水]”);
    var新闻稿=$('input[name=newsletter]');
    var comments=$('textarea[name=comments]');
    如果(name.val()=''){
    name.addClass('hightlight');
    返回false;
    }else name.removeClass('hightlight');
    如果(email.val()=''){
    email.addClass('hightlight');
    返回false;
    }else email.removeClass('hightlight');
    风险值数据=
    “name=”+name.val()+
    “&phone=”+phone.val()+
    “&email=”+email.val()+
    “&master_plan=”+master_plan.val()+
    “&front_foundation=”+front_foundation.val()+
    “&后院平面=”+后院平面。val()+
    “&Speciality_garden=”+Speciality_garden.val()+
    “&lawn_cutting=”+lawn_cutting.val()+
    “&lawn\u plant\u health\u care=”+lawn\u plant\u health\u care.val()+
    “&organic_property_care=”+organic_property_care.val()+
    “&seasional_clean_ups=”+seasional_clean_ups.val()+
    “&pruning=”+pruning.val()+
    “&fine_gardenting=”+fine_gardenting.val()+
    “&deer_protection=”+deer_protection.val()+
    “&snow_-plowing=”+snow_-plowing.val()+
    “&planting=”+planting.val()+
    “&walk=”+walk.val()+
    “&terrace=”+terrace.val()+
    “&wall=”+wall.val()+
    “&outdoor_kitchen=”+outdoor_kitchen.val()+
    “&fireplace=”+fireplace.val()+
    “&driveway=”+driveway.val()+
    “&fenging=”+fenging.val()+
    “&pergola=”+pergola.val()+
    “&游泳池=”+游泳池.val()+
    “&灌溉=”+灌溉.val()+
    “&lighting=”+lighting.val()+
    “&放坡排水=”+放坡排水.val()+
    “&newsletter=”+newsletter.val()+
    “&comments=”+encodeURIComponent(comments.val());
    $('.text').attr('disabled','true');
    $('.loading').show();
    $.ajax({
    url:“process.php”,
    键入:“获取”,
    数据:数据,
    cache:false,
    成功:函数(html){
    如果(html==1){
    $('.form').fadeOut('slow');
    $('.done').fadeIn('slow');
    }else警报('抱歉,意外错误。请稍后再试');
    } 
    });
    返回false;
    });                         
    }); 
    

    这可能是显示每个结果的原因吗?

    您的检查不正确。假设表单中有复选框的HTML代码:

    <input type="checkbox" name="master_planning" value="yes" />
    

    函数array\u push将给定元素添加到数组的末尾,这样可以方便地“动态”填充数组。

    您正在查看$\u POST变量。您当前的测试是“此变量是否存在”。如果这是您的意图,则表明问题在于您的表单,而不是您发布的代码。你能显示一个有问题的表单片段(同样,有4个而不是25个选项)吗?你的数据包嗅探器说…?所有结果都被填写是什么意思?你得到了什么样的结果?在发送的电子邮件中的意思是“感兴趣:总体规划、扫雪、精细园艺、鹿保护”,即使我没有检查任何盒子你的盒子看起来像什么?给我们看一下表格的相关部分。什么是$_POST['form轮椅]?我想他搞错了;)
    if(isset($_POST['master_planning']) && $_POST['master_planning'] == 'yes'){
        array_push($services, "Master planning"];        
    }