【问题标题】:PHP two dimensional array to HTML input valuePHP二维数组到HTML输入值
【发布时间】:2015-10-15 16:19:50
【问题描述】:

我对 PHP 完全陌生,这是我的第一个 PHP 项目。 我正在做一个学位规划师,我有一个选修课程表,其中有多个行供单个用户使用。

我有以下 php 代码

<?php
include("config.php");
$db_server = mysql_connect($db_hostname, $db_username, $db_password);

if (!$db_server) die("Unable to connect to MySQL: " . mysql_error());

mysql_select_db($db_database, $db_server)
    or die("Unable to select database: " . mysql_error());
session_start();
  $user_id = $_SESSION['user_id'];
$query_select_elective="SELECT * FROM course_elective WHERE user_id=$user_id";
    $result_course_elective= mysql_query($query_select_elective,$db_server);
      if (!$result_course_elective) die("Database access failed: " . mysql_error());
    $i=0;
    while($row_elective = mysql_fetch_array($result_course_elective))
    {        
        $SubjectCode[$i]['elective_paper_name']=$row_elective[1];
        $SubjectCode[$i]['elective_paper_number']=$row_elective[2];
        $SubjectCode[$i]['elective_paper_grade']=$row_elective[3];
        $SubjectCode[$i]['elective_paper_sem']=$row_elective[4];
        $SubjectCode[$i]['elective_paper_transfer']=$row_elective[5];
        $i++;

    }
echo $SubjectCode[0]['elective_paper_name'];//I get the name of the elective paper fine at this line
echo <<<_END
<!DOCTYPE html>

<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="utf-8" />
    <title>Degree Plan</title>
    <link rel="stylesheet" type="text/css" href="Assignment1.css" />
</head>
<body>
    <div class="container">
        <section id="content">
            <form name="degreeplan" method="POST" action="degree_plan_data_science.php">
 <section id="Table">
                    <table class="course_table " style="width:90%" align="center">
<tr class="course_table">
                            <td class="course_table">1</td>
                            <td class="course_table"><input type="text" style="border:none;background:inherit;width:100%" name="elective_paper1" value="$SubjectCode[0]['elective_paper_name']" /></td>
                            <td class="course_table"><input type="text" style="border:none;background:inherit;width:100%" name="elcetive_paper1_number"/></td>
                            <td class="course_table"><input type="text" style="border:none;background:inherit;width:100%" name="sem_elective_paper1"/></td>
                            <td class="course_table"><input type="text" style="border:none;background:inherit;width:100%" name="transfer_elective_paper1"/></td>
                            <td class="course_table"><input type="text" style="border:none;background:inherit;width:100%" name="grade_elective_paper1"/></td>
                        </tr>

当我回显$SubjectCode[0]['elective_paper_name'] 时,我把它理解为 OOPS。

但是,当我想要在输入中或换句话说在我想要 "$SubjectCode[0]['elective_paper_name']" 的选修论文名称的列中使用相同的值时,我得到的是 Array['elective_paper_name'] 而不是论文的名称。

请帮忙。

【问题讨论】:

  • print_r 函数可以用来可视化数组值。它可以让您输出数组值以查看其结构

标签: php html mysql multidimensional-array


【解决方案1】:

在数组周围使用方括号,它应该可以正常工作。

改变 &lt;td class="course_table"&gt;&lt;input type="text" style="border:none;background:inherit;width:100%" name="elective_paper1" value="$SubjectCode[0]['elective_paper_name']" /&gt;&lt;/td&gt;

&lt;td class="course_table"&gt;&lt;input type="text" style="border:none;background:inherit;width:100%" name="elective_paper1" value="{$SubjectCode[0]['elective_paper_name']}" /&gt;&lt;/td&gt;

【讨论】:

  • 工作...非常感谢
【解决方案2】:

当涉及到数组时,插值有点棘手。当数组有一个字符串作为键时,您可以省略键周围的引号。

value="$SubjectCode[0][elective_paper_name]"

虽然,还有另一种方法——实际上是多维数组的首选——可以使用:用大括号括起来。

value="{$SubjectCode[0]['elective_paper_name']}"

【讨论】:

    【解决方案3】:

    尝试将值替换为:

    value="<?=$SubjectCode[0]['elective_paper_name']?>"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-27
      • 1970-01-01
      • 2017-04-12
      • 2018-02-26
      • 1970-01-01
      • 2012-05-21
      相关资源
      最近更新 更多