0

大家好,我是新手,正在尝试为用户输入 ID、标题和描述但不正确的工作创建一个关联数组,你能指导我完成这个吗?

我还想按标题或描述搜索职位并返回职位 ID,

非常感谢

<html>
<body>
This form is for storing array of jobs with ID and description for each 
<form method = "post" >
input job iD <input id="jobid"> 
input jobname <input id="jobname"> 
Write a description <input id="jobdesc">  
<input type="submit" value="click to store input" > 
</form>

</body>
</html>

<?php
$jobs_array = array();
$jobs_array[] = array ($_POST['jobid'] ,$_POST['jobname'], $_POST['jobdesc']);
?>
4

3 回答 3

1

您不需要将值分开,例如

$_POST['jobid'] ,$_POST['jobname'], $_POST['jobdesc']

并将它们包含在一个数组中。因为,它们原本就是这样形成的。当用户提交具有多个值的帖子时,所有这些值都存储在超级全局数组中$_POST,因此,与其分离然后将它们附加到数组中,不如只依赖于这个,因为它里面有你需要的一切。

$all_arrays = $_POST;

于 2013-05-25T21:38:16.193 回答
0

稍微调整了你的标记

<html>
<body>
    <p>This form is for storing array of jobs with ID and description for each </p>
    <form action = "<?php echo $_SERVER['PHP_SELF']; ?>" method = "post" >
        <p><label for = "jobid">input job iD</label> <input type = "text" name = "jobid" id="jobid"></p>
        <p><label for = "jobname">input jobname</label><input type = "text" name = "jobname" id="jobname"></p>
        <p><label for = "jobdesc">Write a description</label><input type = "text" name = "jobdesc" id="jobdesc">  
        <input type="submit" value="click to store input" > 
    </form>

</body>
</html>

<?php
    $jobs_array = array ($_POST['jobid'] ,$_POST['jobname'], $_POST['jobdesc']);
?>

您可以jobid使用$jobs_array[0]now 访问,依此类推。

于 2013-05-25T21:41:27.617 回答
0

关联数组是一个数组中的值,可以通过键访问 - 充当索引。

在您的代码中,如下所示,您正在为没有键的数组分配一个值,因此它不是关联的。此外,您正在向数组中添加一个数组,使其成为多维数组,这在这种情况下是不合适的。

$jobs_array[] = array ($_POST['jobid'] ,$_POST['jobname'], $_POST['jobdesc']);

代码应如下所示:

$jobs_array = array("job_id" => $_POST['jobid'], "job_name" => $_POST['jobname'], "job_description" => $_POST['jobdesc']);

此外,未设置 $_POST 变量的原因是因为您使用的是id而不是name. id指的是样式表,而name指的是如何访问字段中的数据。

对于问题的第二部分,您需要使用数据库来存储作业,然后您可以从那里运行查询,从而可以通过其 id 搜索行,并返回一组结果。

于 2013-05-25T21:37:29.203 回答