【问题标题】:forms - processing textarea and checkbox variables表单 - 处理文本区域和复选框变量
【发布时间】:2010-07-15 21:23:09
【问题描述】:

好的,所以我让我的表单通过电子邮件发送 php.ini 中的大部分变量。但是,我的 textarea 变量显示为空白,并且我的 textarea 输入打印为“数组”

这是我表单中的一个 sn-p:

<label for="ProgramAudience">Intended Audience:</label>
                <span><input type="checkbox" name="ProgramAudience[]" value="AcademicAffairsFaculty" />Academic Affairs/Faculty</span>
                <span><input type="checkbox" name="ProgramAudience[]" value="StudentAffairsDevelopment" />Student Affairs/Development</span>
                <span><input type="checkbox" name="ProgramAudience[]" value="CommunityCollege" />Community College/2-Year Institutions</span>
                <span><input type="checkbox" name="ProgramAudience[]" value="GraduateStudents" />Graduate Students</span>
                <span><input type="checkbox" name="ProgramAudience[]" value="FourYearPublic" />Four-Year Public Institutions</span>
                <span><input type="checkbox" name="ProgramAudience[]" value="FourYearPrivate" />Four-Year Private Institutions</span>



<label for="ExpectedOutcome">Expected Learning Outcomes:</label>
                <label class="small">List 1-2 expected learning outcomes below. (As a result of attending this session, participants will...)</font></label>
                    <font size="1" face="arial, helvetica, sans-serif"> ( You may enter up to 400 characters. )<br>
                <textarea name="message4" id="ExpectedOutcome" class="required" wrap="physical" rows="10" cols="35" onKeyDown="textCounter(this.form.message4,this.form.remLen,400);" onKeyUp="textCounter(this.form.message4,this.form.remLen,400);"></textarea>

这里是处理文件的部分:

$ProgramAudience = $_POST['ProgramAudience']; 
$ExpectedOutcome = $_POST['ExpectedOutcome']; 

...

$Body = "";
$Body .= "ProgramAudience: ";
$Body .= $ProgramAudience;
$Body .= "\n";
$Body .= "ExpectedOutcome ";
$Body .= $ExpectedOutcome;

这是电子邮件结果的样子:

发件人:

致:me@me.net

日期:2010 年 7 月 15 日星期四 17:10:17 -0400

主题:提案提交

名字:英里

姓:我

标题:测试

机构:测试

电子邮件发件人:me@me.net

电话:8157531503

地址:HSC 023A

城市:迪卡尔布

状态:IL

邮编:60115

联合演讲者:亚当

节目标题:

程序类型:数组

节目说明:

节目大纲:

程序主题:数组

ProgramAudience:数组

预期结果

经验:

AVE设备:

【问题讨论】:

    标签: php forms variables


    【解决方案1】:

    在文本区域检查您的 name 属性 - 这是 PHP 将使用的属性。

    复选框只有在被选中时才会通过,所以一定要检查一些东西。使用带括号的名称,如“ProgramAudience[]”,$_POST['ProgramAudience'] 变量将为空或数组。您需要检查它是否是一个数组,如果是,则循环遍历内容以生成您的电子邮件。

    【讨论】:

    • textarea 名称是正确的。当我输入一些限制用户可以输入的字符数的 javascript 时,我更改了它们。有谁知道限制 textarea 字段输入的更好方法?
    【解决方案2】:

    对于复选框数组,处理脚本需要这样:

    $ProgramTitle = $_POST['ProgramTitle']; 
    foreach($_POST['ProgramType']  as  $value)  {
    $check_msg .= "Checked: $value\n";
    } 
    

    还有这个:

    $Body .= "ProgramTitle: ";
    $Body .= $ProgramTitle;
    $Body .= "\n";
    $Body .= "ProgramType: ";
    $Body .= $check_msg;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-07-25
      • 2014-02-09
      • 1970-01-01
      • 1970-01-01
      • 2022-07-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多