求助,老师错误,哪里出问题了啊(留言板编辑功能)

求助,老师错误,哪里出问题了啊(留言板编辑功能)

  <?php
    /*
    <?php
     // if(isset($_POST['pubMsg1'])){
     // $getUsername=$_POST['username'];
     // $getTitle=$_POST['title'];
     // $getMessage=$_POST['content'];
     // $filename="msg.txt";
     // $str=file_get_contents($filename);
     // $array=unserialize($str);
     // $array[$userId-1]['username']=$getUsername;
     // $array[$userId-1]['title']=$getTitle;
     // $array[$userId-1]['content']=$getMessage;
     // $array=compact('getUsername','getTitle','getMessage');
     // $array=serialize($array);
     // file_put_contents($filename,$array);
     // }
     ?>
    */
    header('content-type:text/html;charset=utf-8');
    $filename="msg.txt";
    //$userId=$_GET['id'];
    //echo $userId;
    if(isset($_GET['id'])){

      $str=file_get_contents($filename);//获取内容

      $array=unserialize($str);//反序列$str
      //print_r($array);
      /*
      获取内容
      Array
    (
        [0] => Array
            (
                [username] => 1
                [title] => 11111
                [content] => 1
                [time] => 1259688867
            )

    )
      */
      $username=$array[$_GET['id']-1]['username'];

      $title=$array[$_GET['id']-1]['title'];

      $msg=$array[$_GET['id']-1]['content'];

    }
?>
<!DOCTYPE HTML>
<html>
<head>
  <meta charset="utf-8">
</head>
<body>
  <form action="#" method="post">
    <a>用户ID:<?php $_GET['id'];?></a>
  <label>用户名</label><input type="text" name="username" value="<?php echo $username;?>">
  <br/>
   <label>标题</label><input type="text" name="title" value="<?php echo $title;?>">
  <br/>
  <label>内容</label><textarea name="content" rows="5" cols="30" ><?php echo $msg;?></textarea>
  <br/>
  <input type="submit" name="pubMsg1" value="提交">
 </form>
 <?php
 //获取数据
 if(isset($_POST['pubMsg1'])){

//获取内容
 $str=file_get_contents($filename);

//获取用户名,标题,内容
 $username=$_POST['username'];

 $title=$_POST['title'];

 $message=$_POST['content'];

 $array=unserialize($str);
//覆盖
 $username=$array[$_GET['id']-1]['username'];

 $title=$array[$_GET['id']-1]['title'];

 $message=$array[$_GET['id']-1]['content'];

 $array=compact('username','title','message');

 $array=serialize($array);

 file_put_contents($filename,$array);

 echo "<script>alert('修改成功!')</script>";


 }
 ?>











 </body>

</html>

HTML的"name"元素与PHP的对应,应该没问题啊,但是一旦点击提交按钮就报出找不到变量的报错

http://img1.sycdn.imooc.com/climg//5993d25c0001259708780451.jpg

http://img1.sycdn.imooc.com/climg//5993d25c0001e48a12340575.jpg


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕查理 2017-08-16 14:47:05

您好,提示表示您的数组中没有0下标,请您检测您的传值是否正确,以及您的数组中是否有此下标。依旧出现此问题请您反馈您完整的代码,以便帮助您解决问题。祝学习愉快!

  • 提问者 蛋大人 #1
    有下标啊啊
    2017-08-17 14:24:37
  • 好帮手慕查理 回复 提问者 蛋大人 #2
    请反馈您详细的代码,以便帮助您解决问题。祝学习愉快!
    2017-08-17 17:07:57
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师