我正在为我班级的一个项目工作。我们从来没有去过数组,我想弄清楚如何使用关联用户输入。我不知道我是否走在正确的轨道上。我最终需要使用键值对数组进行排序。但首先,如果我能得到一些关于我在这里的反馈,那将是很好的。我不断收到错误消息":语法错误,意外'每个' (T_STRING),期待"
我甚至正确地获取了我的数组的值并将它们与数组相关联? 我在与数组斗争。我也是php的新手。
<HTML>
<HEAD>
<TITLE>Student Form</TITLE>
</HEAD>
<BODY>
<FORM METHOD="post" ACTION="final_project.php">
<P>Please enter your name: <INPUT TYPE="text" NAME="txtname" SIZE= 10></P>
<P>Please enter your id: <INPUT TYPE="text" NAME="txtid" SIZE= 10></P>
<P>Please enter your address: <INPUT TYPE="text" NAME="txtaddress" SIZE= 10></P>
<P>Please enter your cell phone number: <INPUT TYPE="text" NAME="txtcell" SIZE= 10></P>
<P>Please enter your Major: <INPUT TYPE="text" NAME="txtmajor" SIZE= 10></P>
<P>Please enter your E-mail address: <INPUT TYPE="text" NAME="txtemail" SIZE= 10></P>
<P><INPUT TYPE="submit" NAME="submit" VALUE="Submit"></P>
</FORM>
<?php
$txtname = $_POST['txtname'];
$txtid = $_POST['txtid'];
$txtaddress = $_POST['txtaddress'];
$txtcell = $_POST['txtcell'];
$array = array(txtname=>$txtname, txtid=>$txtid, txtaddress=>$txtaddress, txtcell=>$txtcell);
for each ($txtid as $key => $array){
echo "Your first name is ".$txtname.", id number is ".$txtid[$key].", your address is ".$txtaddress.", phone number is ".$txtcell.".";
}
?>
</BODY>
</HTML>
由于
答案 0 :(得分:1)
您的脚本包含语法错误,每个 的 应为 foreach 。数组索引txtname应为'txtname',依此类推。 最后在foreach中,您使用的是变量而不是数组。我认为它应该是一个数组($ array)。更改脚本
发件人强>
$array = array(txtname=>$txtname, txtid=>$txtid, txtaddress=>$txtaddress, txtcell=>$txtcell);
for each ($txtid as $key => $array){
echo "Your first name is ".$txtname.", id number is ".$txtid[$key].", your address is ".$txtaddress.", phone number is ".$txtcell.".";
}
以强>
$array = array('txtname'=>$txtname, 'txtid'=>$txtid, 'txtaddress'=>$txtaddress, 'txtcell'=>$txtcell);
foreach ($array as $value){
echo $value.'</br>';
}
答案 1 :(得分:0)
您应该考虑进行一些修改。在尝试使用它们之前检查$_POST
值以确保它们存在是一个好主意。清理您收到的任何用户输入以确保您保护自己免受可能的恶意内容的影响也是一个好主意。最后,如果使用字段名称保存已发布的值,则可以轻松引用它们以创建句子,而无需使用for
,foreach
,while
或{{循环遍历数组1}}。
do-while