dongyinting3179 2018-05-02 04:49
浏览 74
已采纳

网站在localhost中运行良好,但在托管服务器中运行良好

My website works flawlessly in my XAMPP localhost, and I tried to upload it in free hosting server to test it but I encountered these errors and I dont know how to fix them, please help.

the session.php is for pages that only logged in users can see, if tried to go to e.g dashboard.php when not logged in, page will redirect to login.php

Error 1 :

Notice: Undefined index: login_user in /public_html/session.php on line 6 Go back

Error 2 :

Warning: Cannot modify header information - headers already sent by (output started at public_html/session.php:6) in public_html/session.php on line 15

And this is my session.php

<?php

session_start();

include('db.php');
$user_check=$_SESSION['login_user']; //THIS IS LINE 6
$ses_sql=mysqli_query($db,"select  username,mem_id  from  member  where  
username='$user_check'  ");
$row=mysqli_fetch_array($ses_sql,MYSQLI_ASSOC);
$loggedin_session=$row['username'];
$loggedin_id=$row['mem_id'];

if(!isset($loggedin_session)  ||  $loggedin_session==NULL)
{
echo  "Go  back";
header("Location: login.php"); //THIS IS LINE 15
}

?>

And Error 3 :

Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /public_html/dashboard.php on line 41

This is my dashboard.php

<?php
include('db.php');
$sql="SELECT  *  FROM  member  where  mem_id=$loggedin_id";
$result=mysqli_query($db,$sql);
?>
<?php
while($rows=mysqli_fetch_array($result)){ //THIS IS LINE 41
?>

If you noticed the open bracket in line 41, there is php code at the bottom of my dashboard page :

<?php
//  close  while  loop
}
?>

<?php
//  close  connection;
mysqli_close($db);
?>

I really dont know if this is necessary or not because Im just getting ideas from other public and open source php codes online.

  • 写回答

3条回答 默认 最新

  • doupi4649 2018-05-02 04:57
    关注
    Notice: Undefined index: login_user in /public_html/session.php on line 6 Go back
    

    It means that in $_SESSION, 'login_user' is not defined. So depending of your logic you might want to do something like

    $user_check = isset($_SESSION['login_user']) ? $_SESSION['login_user'] : '';
    

    Second error should be fixed once the first one is fixed.

    Third error : Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /public_html/dashboard.php on line 41

    It means that your query failed. Maybe because $loggedin_id is not set or for an other reason (check mysqli_error (http://www.php.net/manual/en/mysqli.error.php) You might want to fix it, and for good practice, you should check it before doing anything else. Example :

    if ($result) {
        while($rows=mysqli_fetch_array($result)){
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 hexo+github部署博客
  • ¥15 求螺旋焊缝的图像处理
  • ¥15 blast算法(相关搜索:数据库)
  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?
  • ¥15 网络通信安全解决方案
  • ¥50 yalmip+Gurobi
  • ¥20 win10修改放大文本以及缩放与布局后蓝屏无法正常进入桌面
  • ¥15 itunes恢复数据最后一步发生错误
  • ¥15 关于#windows#的问题:2024年5月15日的win11更新后资源管理器没有地址栏了顶部的地址栏和文件搜索都消失了
  • ¥100 H5网页如何调用微信扫一扫功能?