Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/70.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_Mysql - Fatal编程技术网

Php 无法从数据库中获取数据以显示在要通过表单更新的字段中

Php 无法从数据库中获取数据以显示在要通过表单更新的字段中,php,mysql,Php,Mysql,我的数据库中有一个名为“议程”的表,它与另一个名为“会议”的表相链接。我想通过表单编辑议程表,但我希望议程字段中的当前信息显示在web表单上 <?php include 'library/connect.php'; $agenda_id = $_GET['agenda_id']; $result = mysql_query("SELECT agenda.*, meetings.meeting_id FROM agenda INNER JOIN meetings ON agenda.

我的数据库中有一个名为“议程”的表,它与另一个名为“会议”的表相链接。我想通过表单编辑议程表,但我希望议程字段中的当前信息显示在web表单上

    <?php
include 'library/connect.php';
$agenda_id = $_GET['agenda_id'];
$result = mysql_query("SELECT agenda.*, meetings.meeting_id FROM agenda INNER JOIN meetings ON agenda.meetings = meetings.meeting_id WHERE agenda_id = '$agenda_id'");

$row = mysql_fetch_array($result);
$meeting_id = $row['meeting_id'];

?>
  <form id="form1" name="form1" method="post" action="secretary_agendaSuccesful.php?agenda_id=<?php echo $agenda_id; ?>">
    <table width="666" border="1">
      <tr>
        <td width="91">Subject:</td>
        <td width="559"><span id="sprytextarea1">
          <label for="subject"></label>
         <textarea name="subject" id="subject" cols="45" rows="5" value="<? echo  $row['subject'] ?>"></textarea>
          <span class="textareaRequiredMsg">A subject is required.</span></span></td>
      </tr>
      <tr>
        <td>Duration:</td>
        <td><span id="sprytextfield1">
        <label for="duration"></label>
        <input type="text" name="duration" id="duration" value="<? echo  $row['duration'] ?>"/>
        <span class="textfieldRequiredMsg">duration in hours</span><span class="textfieldInvalidFormatMsg">Enter duration in hours</span></span></td>
      </tr>
       <td>&nbsp;</td>
        <td><input type="submit" name="submitbtn" id="submitbtn" value="Submit" /></td>
      </tr>
    </table>
  </form>
这是从数据库获取信息到字段的正确方法吗?

这几乎是正确的方法 只需对显示的值使用htmlspecialchars函数即可

可能还有另一个问题-查询本身会阻止数据显示

还有明显的SQL注入

这样编写代码

$agenda_id = intval($_GET['agenda_id']);
$query = "SELECT agenda.*, meetings.meeting_id FROM agenda 
          INNER JOIN meetings ON agenda.meetings = meetings.meeting_id 
          WHERE agenda_id = $agenda_id";
$result = mysql_query($query) or trigger_error(mysql_error()." ".$query);
看看它是否会显示任何错误

编辑
刚才注意到您正在为标记使用value参数。此标记的用法与其他标记不同。

您的代码极易受到SQL注入攻击。决不能将$\u GET变量或任何变量直接插入查询中。请查看此问题以了解如何解决,注意:on子句“选择议程”中的未知列“agenda.meetings”,meetings.meeting_id FROM agenda Internal JOIN meetings ON agenda.meetings=meetings.meeting_id WHERE agenda_id=16在E:\webareas\bj115\year3\EWSD\MeetingSystem\secretary_editAgenda.php的第31行…查看错误报告有何帮助?始终以这种方式运行查询,并收到所有数据库错误的通知