Avatar billede fozie Nybegynder
07. juni 2008 - 22:46 Der er 3 kommentarer

Mærkelig PHP fejl.

Når jeg logger ind på min admin side, får jeg denne fejl:

Warning: Cannot modify header information - headers already sent by (output started at /customers/fozie.dk/fozie.dk/httpd.www/admin/index.php:19) in /customers/fozie.dk/fozie.dk/httpd.www/admin/index.php on line 43


Jeg kan se det er en header fejl.

her er index.php

<?php

session_start();

if($_SESSION['logget_ind']==true){header('location:forside.php');}

?>

<?php

$mysql_host = "localhost";

$mysql_user = "fozie_dk";

$mysql_pass = "**********";

$conn = mysql_connect($mysql_host,$mysql_user,$mysql_pass);

if(!$conn)die('Der kunne ikke oprettes forbindelse til database serveren. Prøv igen senere eller kontakt webmaster.\n' . mysql_error());

mysql_select_db("fozie_dk");

$query = mysql_query("SELECT `ip` FROM `banned` WHERE `ip` = '". $_SERVER["REMOTE_ADDR"] ."'");



if(mysql_num_rows($query) != 0) {

die("Du er banned");

}

?>

<font face="Tahoma">

<?php

//Forbinder til MySQL server



//Tjekker om man har trykket på Login

if($_POST['login']==true)

  {

  $bruger = $_POST['user'];

  $password = $_POST['password'];

  $result = mysql_query("SELECT * FROM users WHERE brugernavn='$bruger' AND password=password('$password')");

  if(mysql_num_rows($result)<1){print('Brugernavn eller password er forker!<br>Prøv igen, eller kontakt administrator.');}

  else

  {

    while($row = mysql_fetch_array($result))

      {

      $_SESSION['logget_ind'] = true;

      $_SESSION['brugernavn'] = $row['brugernavn'];

      $_SESSION['permission'] = $row['permission'];

      $id = $row['id'];

      $ip = getenv(REMOTE_ADDR);

      $date = date("Y-m-d H:i:s");

      $error[1] = "Der er sket en fejl. Prøv igen eller kontakt administrator.";

      mysql_query("UPDATE users SET sidste_ip='$ip' WHERE id='$id'") or die($error[1].mysql_error());

      mysql_query("UPDATE users SET online='ja' WHERE id='$id'") or die($error[1].mysql_error());

      mysql_query("UPDATE users SET sidste_login='$date' WHERE id='$id'") or die($error[1].mysql_error());

            header('location:forside.php');

      }

    }

  }



?>

<form method="post" action="<?=$_SESSION['PHP_SELF']?>">

<input type="hidden" name="login" value="true">

<table border="0" cellpadding="5" cellspacing="5"> <tr>

<td valign="top">Brugernavn:</td>  <td valign="top">

<input type="text" name="user" size="20"></td> </tr> <tr> 

<td valign="top">Password:</td>  <td valign="top"> 

<input type="password" name="password" size="20"><br><br> 

  <input type="submit" name="submit" value="Login">  </td>

  </tr></table></form>

 


 

(ved ikke lige hvorfor den laver mellemrum mellem hver linje?.)

Når man logger ind skulle man gerne komme til forside.php, men der er så der fejlen kommer op. Så opdatere jeg siden og kommer ind på forside.php.

Her er forside.php:

<?

session_start();

if(!isset($_SESSION['logget_ind'])){header('Location:index.php');}

?>

<?php

$mysql_host = "localhost";

$mysql_user = "fozie_dk";

$mysql_pass = "************";

$conn = mysql_connect($mysql_host,$mysql_user,$mysql_pass);

if(!$conn)die('Der kunne ikke oprettes forbindelse til database serveren. Prøv igen senere eller kontakt webmaster.\n' . mysql_error());

mysql_select_db("fozie_dk");

$query = mysql_query("SELECT `ip` FROM `banned` WHERE `ip` = '". $_SERVER["REMOTE_ADDR"] ."'");



if(mysql_num_rows($query) != 0) {

die("Du er banned");

}

?>

<font face="Tahoma">

<a href="nyhed_tilfoej.php">Skriv en nyhed</a><br>

<a href="gb_tom.php">Tøm gæstebogen</a><br>

<a href="gb.php">Admin gb</a><br />

-<br />

<a href="logud.php">log ud</a>
Avatar billede leif Seniormester
07. juni 2008 - 22:54 #1
Man må ikke før fx: header('location:forside.php'); smide noget ud til browseren og det gør du med: <font face="Tahoma">

Så fjern:
?>

<font face="Tahoma">

<?php


Så virker det sikkert
Avatar billede fozie Nybegynder
07. juni 2008 - 23:03 #2
Perfekt, post et svar :)
Avatar billede leif Seniormester
07. juni 2008 - 23:07 #3
Svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester



IT-JOB

DEIF A/S

DevOps Engineer

Netcompany A/S

IT Consultant

Cognizant Technology Solutions Denmark ApS

Test Manager

MAN Energy Solutions

LTSA 4-Stroke Technical Advisor