Avatar billede Slettet bruger
22. marts 2006 - 19:31 Der er 4 kommentarer

Der sker intet..

Har fundet det community system et sted på nette og har os fået installeret det nu..
Men da der ikke er lavet noget så man kan oprette sig har jeg selv tilføjet brugernavn og kode i phpmyadmin..
Men når jeg så prøver at logge mig ind sker der intet som om den bare loader siden igen...


Det er instaleret på www.musiklirstest.hotserv.dk

Koderne er:
login.php


<?php
session_start();
include "db_connect.php";
if($tjek == "yes") {
$sql = mysql_query("SELECT * FROM BRUGERE WHERE brugernavn = '$fbruger'");
$btjek = mysql_fetch_array($sql);
if($fkode == $btjek[kodeord]){
$brugernavn = $btjek[brugernavn];
session_register("brugernavn");
header("location: login_ok.php");
}
else{
$ermsg = "Forkert brugernavn eller password \n";
}
}
if($brugernavn){
header("location: login_ok.php");
}
else{
?>
<HTML>
<HEAD>
<TITLE> community </TITLE>
</HEAD>
<BODY>

<?
if($ermsg){
echo "<font color=\"red\" size=\"2\" face=\"Tahoma\">". $ermsg . "</font><br><br>\n";
}

?>

<FORM ACTION="<?=$PHP_SELF?>" METHOD="POST" NAME="FORM">
<input type="hidden" name="tjek" value="yes">
Brugernavn : <input name="fbruger" type="text"><br>
Kodeord : <input name="fkode" type="password"><br>
<input type="submit" value="login">
</form>

</BODY>
</HTML>
<?
}
?>


login_ok.php



<?php
session_start();
include "db_connect.php";

if($brugernavn){
if($page){

echo "<HTML>\n <HEAD>\n <TITLE> community </TITLE>\n </HEAD>\n <BODY>";

if($page == "bliste"){
$sql = mysql_query("select * from brugere");
echo "\t komplet liste over alle bruger:<br><br>";
$strNumber = 0;
while($row = mysql_fetch_array($sql)) {
$strNumber = $strNumber+1;
echo "\t\t #$strNumber - <a OnClick=\"parent.location.href='?page=profil&id=$row[id]'\" style=\"cursor:hand\">$row[brugernavn]</a><br>\n";
}
if($page == "profil"){

$sql = mysql_query("select * from brugere where id = '$id'");
while($row = mysql_fetch_array($sql)) {

echo "\n\t velkommen til $row[brugernavn]'s profil.\n \t Du kan kontakte $row[brugernavn] på følgene e-mail $row[email] \n \n \t <br> Der er ikke andet her.";

}
if($id == NULL){
echo "\n Den afsøgte bruger blev ikke fundet. <br>\n Prøv igen senere.\n";
}
}
if($page == "rbruger"){

if($module){
mysql_query("UPDATE brugere SET email = '$email' WHERE brugernavn = '$brugernavn' OR id = '$brugerinfo[id]");
echo "\n \t<script> \n \t alert(\"Din profil er nu redigeret\"); \n \t parent.location.href='?page=profil&id=$brugerinfo[id]'; \n \t </script>\n";
}

echo "\t <form action=\"login_ok.php\" method=\"post\">\n";
echo "\t <input type=\"hidden\" name=\"page\" value=\"rbruger\"> \n";
echo "\t <input type=\"hidden\" name=\"module\" value=\"action\"> \n";
echo "\t <input type=\"text\" name=\"email\">\n\n";
echo "<input type=\"submit\" value=\"Rediger profil\">\n \t</form>\n";
}

echo "</BODY>\n </HTML>";
}
else{


?>
<HTML>
<HEAD>
<TITLE> community </TITLE>
</HEAD>

<body link="#000000" vlink="#000000" alink="#000000">

<DIV align=left>
<TABLE style="BORDER-COLLAPSE: collapse" borderColor=#111111 height=198 cellSpacing=0 cellPadding=0 width=432 border=0>
<TBODY>
<TR>
<TD vAlign=top width=157 height=198>

<font size="2" face="tahoma">

<a OnClick="parent.frame.location.href='?page=bliste';" style="cursor:hand">Brugerliste</a><br>
<a OnClick="parent.frame.location.href='?page=rbruger';" style="cursor:hand">Ret bruger</a><br>
<a OnClick="parent.location.href='?mod=logOut';" style="cursor:hand">Log af</a>

</TD>
<TD vAlign=top width=269 height=198>
<iframe name="frame" src="?page=start" width="200" height="300" frameborder="0">
</iframe>
</TD></TR>
</TBODY>
</TABLE>
</DIV>

</BODY>
</HTML>
<?
}
if(!$brugernavn){
header("location: login.php?ermsg=Du er ikke logget ind.");
}
}
}
?>


Og så har jeg også filen db_connect.php
Avatar billede Slettet bruger
22. marts 2006 - 19:32 #1
Login med b: casper P: 9375
Avatar billede terrak Nybegynder
22. marts 2006 - 21:50 #2
Umiddelbart vil jeg tro at koden forudsætter at register_globals er sat til on.

For at teste om dette er tilfældet, så erstat
<?=$PHP_SELF?>
med
<?php echo $PHP_SELF; ?>
. Ændrer det intet, så er der to løsninger. En let løsning, med en mindre sikkerhedsrisiko. En svær, men mere sikker løsning, som kræver (basisk?) kendskab til PHP.

Løsning 1. Slå register_globals til ved at indsætte denne kode i starten af scriptet.

// Emulate register_globals on
if (!ini_get('register_globals')) {
  $superglobals = array($_SERVER, $_ENV,
      $_FILES, $_COOKIE, $_POST, $_GET);
  if (isset($_SESSION)) {
      array_unshift($superglobals, $_SESSION);
  }
  foreach ($superglobals as $superglobal) {
      extract($superglobal, EXTR_SKIP);
  }
}


2. Indsæt $_GET og $_POST evt. $_SESSION hvor de hører til. Læs mere på http://dk2.php.net/register_globals
Avatar billede Slettet bruger
26. marts 2006 - 19:29 #3
Når jeg Tilføjer // Emulate register_globals on
if (!ini_get('register_globals')) {
  $superglobals = array($_SERVER, $_ENV,
      $_FILES, $_COOKIE, $_POST, $_GET);
  if (isset($_SESSION)) {
      array_unshift($superglobals, $_SESSION);
  }
  foreach ($superglobals as $superglobal) {
      extract($superglobal, EXTR_SKIP);
  }
}
så skriver den:


Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /var/www/hotserv.dk/users/musiklirstest/login.php:2) in /var/www/hotserv.dk/users/musiklirstest/login.php on line 20

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /var/www/hotserv.dk/users/musiklirstest/login.php:2) in /var/www/hotserv.dk/users/musiklirstest/login.php on line 20

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/hotserv.dk/users/musiklirstest/login.php on line 24
Forkert brugernavn eller password
Avatar billede terrak Nybegynder
26. marts 2006 - 19:38 #4
husk
exit;
efter brug af
header("..et eller andet..");
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