编辑页面错误如何修复?

时间:2014-08-13 18:52:50

标签: php mysql

我似乎有问题解决这个问题:

<?php

$username = "root";
$password = "";
$database = "learningnews";
$db = mysql_connect('localhost', $username, $password, $database);
$id = $_GET["title"];

$show = "SELECT * FROM learningnews.news where title = '$id'";
$ending = mysql_query($show);
$now = mysql_fetch_array($ending);

?>

<html>
<head>
<title>Edit Page</title>
</head>
<body>
  <tr>
    <td>
      <table border="1">
      <form method="post" action="newsedit.php">
    <tr>
      <td>    
      <input type="text" name="name" size="40" value="<?php echo "$now[title]" ?>"> 
    </tr>
      </td>
    <tr>
      <td>  
      <input type="text" name="name1" size="500" value="<?php echo "$now[content]" ?>">
    </tr>
      </td>
      </form> 
  </tr>
    </td>
      </table>      
</body>
</html>

我似乎无法显示我在数据库中的标题和内容,以便我可以编辑它我收到此错误:

Notice: Undefined index: title in C:\xampp\htdocs\newsedit.php on line 6

有人可以帮忙吗?

编辑:继承我提交新闻并输出新闻的代码。

EDIT2:重新发布了第二个php文件。这是它的样子。这一次,没有错误,但它没有在输入字段中显示我想要的内容和标题。

<?php

$id ="";
$username = "root";
$password = "";
$database = "learningnews";
$db = mysql_connect('localhost', $username, $password, $database);

$show = "SELECT * FROM learningnews.news where title = '$id'";
$ending = mysql_query($show);
$now = mysql_fetch_array($ending);

?>

<html>
<head>

</head>
<body>
  <tr>
    <td>
      <table border="1">
      <form method="post" action="newsedit.php">
    <tr>
      <td>    
      <input type="text" name="title" size="40" value="<?php echo "$now[title]" ?>"> 
    </tr>
      </td>
    <tr>
      <td>  
      <input type="text" name="content" size="500" value="<?php echo "$now[content]" ?>">
    </tr>
      </td>
      </form> 
  </tr>
    </td>
      </table>      
</body>
</html>

基本上,我需要第一个代码的输出以秒显示,因此我可以编辑它然后更新它。

2 个答案:

答案 0 :(得分:0)

在使用变量之前,您需要检查变量是否设置为isset

<?php
   if(isset($_GET['title']))
      $id = $_GET["title"];
?>

在上一页的代码中,您需要将表单方法更改为GET,以便在下一页上使用$ _GET检查您的标题。

<form method="GET" action="admin.php">
    <input type="text" name="title">
    <textarea name="content"></textarea>
    <input type="submit" value="posthorses"/>
</form>  

答案 1 :(得分:0)

<?php

if ( isset( $_GET['name'] ) )
{
    $username = "root";
    $password = "";
    $database = "learningnews";
    $db = mysql_connect('localhost', $username, $password, $database);
    $id = $_GET["name"];

    $show = "SELECT * FROM learningnews.news where title = '$id'";
    $ending = mysql_query($show);
    $now = mysql_fetch_array($ending);
}

?>

因为$_GET["title"];从未定义过。不确定您要对title做什么。