PHP mysql form , STUCK


PHP mysql form , STUCK

好的,如果有人能帮助解决这个简单的php和mysql问题。

我是数据库的新手,正在尝试创建我的第一个用户友好的数据库。但我遇到了一个小问题。

我有一个显示数据的页面,我也有一个页面,其中显示相同的数据和编辑链接,该链接指向编辑表单。然而,在编辑表单中,信息不会出现。

这是我的"edit.php",它显示了来自数据库的信息以及编辑链接:

    $con = mysql_connect("localhost","root","");
    if (!$con)
      {
      die('Could not connect: ' . mysql_error());
      }
    mysql_select_db("beyondmotors", $con);
    $result = mysql_query("SELECT * FROM vehicles");
    echo "<table border='1'>
    <tr>
    <th>ID</th>
    <th>Year</th>
    <th>Make</th>
    <th>Model</th>
    <th>Mileage</th>
    </tr>";
    while($row = mysql_fetch_array($result))
      {
      echo "<tr>";
      echo "<td>" . $row['id'] . "</td>";
      echo "<td>" . $row['year'] . "</td>";
      echo "<td>" . $row['make'] . "</td>";
      echo "<td>" . $row['model'] . "</td>";
      echo "<td>" . $row['mileage'] . "</td>";
      echo ("<td><a href='"edit_form.php?id=$row[id]'">Edit</a></td></tr>");
      echo "</tr>";
      }
    echo "</table>";
    mysql_close($con);

这是编辑表单:

    <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>
          <?
          $con = mysql_connect("localhost","root","");
    if (!$con)
      {
      die('Could not connect: ' . mysql_error());
      }
    mysql_select_db("beyondmotors", $con);
          $order = "SELECT * FROM vehicles where id=$id";
          $result = mysql_query($order);
          $row = mysql_fetch_array($result);
          ?>
          <form method="post" action="edit_data.php">
          <input type="hidden" name="id" value="<? echo "$row[id]"?>">
            <tr>        
              <td>Year</td>
              <td>
                <input type="text" name="year" 
            size="20" value="<? echo "$row[year]"?>">
              </td>
            </tr>
            <tr>        
              <td>Make</td>
              <td>
                <input type="text" name="make" 
            size="20" value="<? echo "$row[make]"?>">
              </td>
            </tr>
            <tr>        
              <td>Model</td>
              <td>
                <input type="text" name="model" 
            size="20" value="<? echo "$row[model]"?>">
              </td>
            </tr>
            <tr>
              <td>Mileage</td>
              <td>
                <input type="text" name="mileage" 
              value="<? echo "$row[mileage]"?>">
              </td>
            </tr>
            <tr>
              <td align="right">
                <input type="submit" 
              name="submit value" value="Edit">
              </td>
            </tr>
          </form>
          </table>
        </td>
      </tr>
    </table>
    </body>
    </html>

Than我也有Edit数据,但它甚至没有达到那个程度。这是我在编辑表单上得到的!!http://s562.photobucket.com/albums/ss69/intensemx/?action=view&current=pic.jpg

我遵循了这个教程:

救命,我迷路了,提前谢谢:)

有人能推荐一个好地方吗?在那里我可以得到类似的教程。

您正在使用的教程假设短标记已打开。请更改代码以使用<?php

它还存在SQL注入漏洞。

它似乎还假设register_globals已打开。

不要使用该教程。情况非常糟糕

您需要将数组键括在引号中。例如:

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

应该是这样的:

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

现在,除此之外,请考虑昆汀在回答中提到的问题。

您的编辑表单使用的PHP短标签(<? ?>)可能未在服务器上启用,因此一切看起来都不对劲。

您可以选择1)启用短标记,或2)在编辑文件中将<?更改为<?php