php 尝试到显示mysql数据在一个html文本字段

zpjtge22  于 2023-01-08  发布在  PHP
关注(0)|答案(6)|浏览(88)

我希望能够查看和编辑信息包含在一个表从我的网络浏览器,但我不能为生活在我得到的当前值拉虽然到一个html文本字段。
有人能给我一些启示吗?因为我是php的新手。
表名:request_details
列名:ID、名称、电子邮件地址
我的PHP代码是:

<?
$order = "SELECT * FROM request_details WHERE id='$id'";
$result = mysql_query($order);
$row = mysql_fetch_array($result);
?>

HTML代码

<form method="post" action="edit_data.php">
  <input type="hidden" name="id" value="<?php echo "$row[id]"?>">
    <tr>        
      <td>Name</td>
      <td>
        <input type="text" name="name" size="20" value="<?php echo "$row[name]"?>">
      </td>
    </tr>
    <tr>
      <td>Email Address</td>
      <td>
        <input type="text" name="email_address" size="40" value="<?php echo "$row[email_address]"?>">
      </td>
    </tr>
    <tr>
      <td align="right">
        <input type="submit" 
      name="submit value" value="Edit">
      </td>
    </tr>
  </form>

好的,让它简单一点,当我使用一个实际的ID而不是一个变量时,它就可以工作了,比如说

<?
  include "db.inc.php";//database connection
  $order = "SELECT * FROM request_details WHERE id='19'";
  $result = mysql_query($order);
  $row = mysql_fetch_array($result,MYSQL_ASSOC);
  ?>

上面的显示,但下面的不显示

<?
  include "db.inc.php";//database connection
  $order = "SELECT * FROM request_details WHERE id='$id'";
  $result = mysql_query($order);
  $row = mysql_fetch_array($result,MYSQL_ASSOC);
  ?>

好的,前提是我有两个网页,第一个显示我需要的所有信息
代码为:

<table>
    <tr>
        <td>
            <table border="1">
                <tr>
                    <td>Name</td>
                    <td>Telephone Number</td>
                    <td>Email Address</td>
                    <td>Venue</td>
                    <td>Event Date</td>
                    <td>Guests</td>
                    <td>Chair Cover Colour</td>
                    <td>Sash Colour</td>
                    <td>Price</td>
                    <td>Damage Deposit</td>
                    <td>Status</td>
                    <td>Notes</td>
                </tr>
                <tr>      

                    <?
                    $order = "SELECT * FROM request_details";
                    $result = mysql_query($order);
                    while ($row=mysql_fetch_array($result)){

                    echo ("<tr><td>$row[name]</td>");
                    echo ("<td>$row[telephone_number]</td>");
                    echo ("<td>$row[venue]</td>");
                    echo ("<td>$row[event_date]</td>");
                    echo ("<td>$row[guests]</td>");
                    echo ("<td>$row[cover_colour]</td>");
                    echo ("<td>$row[sash_colour]</td>");
                    echo ("<td>$row[price]</td>");
                    echo ("<td>$row[damage_deposit]</td>");
                    echo ("<td>$row[notes]</td>");      
                    echo ("<td><a href=\"edit_form.php?id=$row[id]\">View</a></td></tr>");
                    }
                    ?>
            </table>
        </td>
    </tr>
</table>

当我点击查看时,它会将我带到以下URL:
编辑表单. php?id = 1
例如
编辑表单. php?id = 19
此页面的代码(其中的信息未显示在文本字段中):

<table border=1>
    <tr>
        <td>
            <table>

                <?
                $order = "SELECT * FROM request_details WHERE id='$id'";
                $result = mysql_query($order);
                $row = mysql_fetch_array($result,MYSQL_ASSOC);
                ?>

                <form method="post" action="edit_data.php">
                    <tr>
                    <input type="hidden" name="id" value="<?php echo $row['id']; ?>" />
                    <tr>        
                        <td>Name</td>
                        <td>
                            <input type="text" name="name" size="20" value="<?php echo $row['name']; ?>">
                        </td>
                    </tr>
                    <tr>
                        <td>Email Address</td>
                        <td>
                            <input type="text" name="email_address" size="40" 
                                   value="<?php echo $row['email_address']; ?>">
                        </td>
                    </tr>
                    <tr>
                        <td align="right">
                            <input type="submit" name="submit value" value="Edit">
                        </td>
                    </tr>
                </form>
            </table>      
        </td>
    </tr>
</table>
jum4pzuy

jum4pzuy1#

将您的php代码更改为

  • $行= mysql读取数组($结果,MYSQL_ASSOC);*

同时更改HTML代码,如以下行所示

<input type="hidden" name="id" value="<?php echo $row['id'] ;?>" />
gmxoilav

gmxoilav2#

你可以这样做:

<input type="text" name="email_address" size="40" value="<?=$row['email_address']?>">
2ic8powd

2ic8powd3#

您的代码不完整,它在行的调用中缺少一个定义。它不知道$row[name],因为变量应该用引号定义。

<input type="text" name="name" size="20" value="<? echo $row['name']; ?>">
<input type="text" name="email_address" size="40" value="<? echo $row['email_address']; ?>">

接下来,你引用了一个变量,这是不需要的。一个变量根本不需要被引用。你正确地引用了值类型,双引号没有意义。
顺便说一句,你的代码真的很乱。试着用适当的语法把它正确地写下来。(不要忘记;变量后面)

enyaitl3

enyaitl34#

像那样对待他们

<input type="hidden" name="id" value="<?php echo $row['id'] ;?>" />

  <input type="text" name="name" size="20" value="<?php echo $row['name']; ?>" />

  <input type="text" name="email_address" size="40" value="<?php echo $row['email_address']; ?>" />

编辑;
很抱歉说,你的代码是灾难和混乱。有许多错误,我不能修复所有。任何方式改变你的行到此行。

echo "<td><a href=\"edit_form.php?id=$row['id']\">View</a></td></tr>";

并添加到您要显示编辑页面的文件中,在您查询该行之前

$id = $_GET['id'] ;
kcugc4gi

kcugc4gi5#

我做了更正的孔代码,它的工作

<html>
<head>
<title>PAGE Edit</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<table>
  <tr>
    <td align="center">EDIT DATA</td>
  </tr>
  <tr>
    <td>
      <table border="1">
      <?php
      include"db.inc.php";//database connection
      $order = "SELECT * FROM data_employees";
      $result = mysql_query($order);
      while ($row=mysql_fetch_array($result)){
      // Print "<th>Name:</th> <td>".$data['user'] . "</td> "; 
        echo ("<tr><td>".$row['name']."</td>");
        echo ("<td>".$row['employees_number']."</td>");
        echo ("<td>".$row['address']."</td>");
        echo ("<td><a href=edit_form.php?id=".$row['employees_number'].">Edit</a></td></tr>"); 
      }
      ?>
      </table>
    </td>
   </tr>
</table>
</body>
</html>

第二部分:调用edit_form. php进行编辑

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Form Edit Data</title>
</head>

<body>
<table border=1>
  <tr>
    <td align=center>Form Edit Employees Data</td>
  </tr>
  <tr>
    <td>
      <table>
      <?php
      $id=$_GET['id']; 

      include "db.inc.php";//database connection
      $order = "SELECT * FROM data_employees 
where employees_number='$id'";
      $result = mysql_query($order);
      $row = mysql_fetch_array($result);
      ?>
      <form method="post" action="edit_data.php">
      <input type="hidden" name="id" value="<?php echo "$row[employees_number]"?>">
        <tr>        
          <td>Name</td>
          <td>
            <input type="text" name="name" 
        size="20" value="<?php echo "$row[name]"?>">
          </td>
        </tr>
        <tr>
          <td>Address</td>
          <td>
            <input type="text" name="address" size="40" 
          value="<?php echo "$row[address]"?>">
          </td>
        </tr>
        <tr>
          <td align="right">
            <input type="submit" 
          name="submit value" value="Edit">
          </td>
        </tr>
      </form>
      </table>
    </td>
  </tr>
</table>
</body>
</html>

最后调用edit_Data. php更新数据表

<?php
//edit_data.php
$name=$_POST['name'];
$address=$_POST['address'];
$id=$_POST['id'];
include "db.inc.php";
$order = "UPDATE data_employees 
          SET name='$name', 
              address='$address' 
          WHERE 
          employees_number='$id'";
mysql_query($order);
header("location:edit.php");
?>

我希望现在已经清楚了!:D

0ve6wy6x

0ve6wy6x6#

如果您的网址是http:___
您需要编写如下查询:

$order = "SELECT * FROM request_details WHERE id='$_GET[id]'";

相关问题