Som besökare på Hamsterpaj samtycker du till användandet av s.k. cookies för att förbättra din upplevelse hos oss. Jag förstår, ta bort denna ruta!
Annons

Vad är fel ? :'(

Skapad av Borttagen, 2011-07-13 01:42 i Webbutveckling & Programmering

26 829
16 inlägg
0 poäng
jonteeee
Visningsbild
P 28 Falun Hjälte 125 inlägg
0
Nu är de så att min login script inte vill fungera...vad jag än skriver in i mina två textrutor så loggas man in...
postar koden så får den som vill ta en titt :)

Ett stycke php-kod:
if($username != "" && $password != ""){   
$users = file("users.dat", "r");
if(!ereg("$username|", $users[0])) print("Användarnamn '$username' hittades inte.");
$users = explode(",", $users[0]);
foreach($users as $luser){
if(strstr($luser, $username)){
list($user, $pass) = explode("|", $luser);
if($password = $pass){
$_SESSION['username'] = $_POST['username'];
$loggedin = true;

}else{
print ("invalid login");
}
break;
}
}
}


Nån som ser nåt fel så där påengång ?

And who are you? :)

Är reklamen ivägen? Logga in eller registrera dig så försvinner den!

jonteeee
Visningsbild
P 28 Falun Hjälte 125 inlägg
Trådskapare
0

Svar till KalleBocoum [Gå till post]:
Jaa vet :)
Hjälpa ?

And who are you? :)

pr0n
Visningsbild
P Hjälte 5 588 inlägg
0

Svar till jonteeee [Gå till post]:

if($password = $pass)

Du har bara ett = tecken :) ska vara två.

if($password == $pass

med andra ord


Ingen status

Dagus
Visningsbild
P 30 Hjälte 252 inlägg
0

Svar till pr0n [Gå till post]:
Den gamla vanliga missen när man glömmer att det ska vara två = tecken :)

jonteeee
Visningsbild
P 28 Falun Hjälte 125 inlägg
Trådskapare
0
Svar till pr0n [Gå till post]:
Dosn't solve my problem men borde sett att jag missat de :(



länkar sidan så den som vill kan ta en titt om det på nåt sätt kan hjälpa till att lösa problemet...
Visa spoiler

Hela paketet:
Visa spoiler
[code:html, php, css]<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Jontees</title>
<style type="text/css">
body {
background:#C0DEED url('bg.png');
background-position: left 40px;
background-attachment: fixed;
background-repeat: no-repeat;}
.main { margin:15px auto 0px; auto; background:#fff; width:930px; height: 500px; padding:0px; border:1px solid #c0deed;}
.list { margin:0px 0px; 0px; auto; width:500px; height:auto;}
.login {margin:0px 0px auto auto; width:300px; padding:25px; border-left:1px dotted #ccc; border-bottom:1px dotted #ccc; float:right;}
.top {width:100%; background:#a8d0e3; height:40px; border:1px solid 9dc8dc;}
.top-right {margin:7px 0px auto auto; width:400px; float:right; }
.top-left {margin:10px auto auto 50px; width:500px; float:left;}
.top-left a:hover {background:#8ec1da; color:#000; border:1px solid #9dc8dc}
.top-left a {background:#a8d0e3; color:#000; padding:5px; text-decoration:none;}
.uppladdning {}
</style>


</head>

<body>

<?php
session_start();
$loggedin = false;
$fp = fopen("users.dat", "r");
$count = fread($fp, 1024);
$username = $_POST[username] ;
$password = $_POST[password] ;





if($username != "" && $password != ""){
$users = file("users.dat", "r");
if(!ereg("$username|", $users[0])) print("Användarnamn '$username' hittades inte.");
$users = explode(",", $users[0]);
foreach($users as $luser){
if(strstr($luser, $username)){
list($user, $pass) = explode("|", $luser);
if($password == $pass){
$_SESSION['username'] = $_POST['username'];
$loggedin = true;

}else{
print ("invalid login");
}
break;
}
}
}
if(isset($_GET['logout'])) {
$_SESSION['username'] = '';
header('Location: ' . $_SERVER['PHP_SELF']);
}
?>
<div class="top">
<div class="top-left">
<a href="?page=startsida">Startsida</a>
<a href="#">Om oss</a>
<a href="?page=registrera">Registrera</a>
</div>
<div class="top-right">
<form name="login" action="<?=$PHP_SELF?>" method="post">
<input type="text" name="username" value="Användarnamn">
<input type="password" name="password" value="Lösenord">
<input type="submit" name="submit" value="Login" />
</form>
</div>
<div>/div>
</div>
<div class="main">

<div class="login">
<?php if ($loggedin != true): ?>
<form name="login" action="<?=$PHP_SELF?>" method="post">
Username: <input type="text" name="username" value="Användarnamn">br />
Password: <input type="password" name="password" value="Lösenord">br />
<input type="submit" name="submit" value="Login" />
</form>

<?php endif; ?>

<?php if($_SESSION['username']): ?>

<a href=" http://jonte.sehl.in/skolanse/startsida.php?logout=1">Logout</a>
<?php endif; ?>
</div>


<div class="list">
<?php echo $count; ?>
<?php
$fileName = file('senaste.txt');
$rows = count($fileName);
for ($i=0; $i < 10; $i++)
{
echo $fileName [$i];
}
?>
<div class="uppladdning">
<?php if($_SESSION['username']): ?>
<strong>Uppladdning</strong>
<br />
<form action="upload_file.php" method="post"
enctype="multipart/form-data">
<label for="file">Filnamn:</label>
<input type="file" name="file" id="file" />
<br />
<input type="submit" name="submit" value="Ladda upp!" />
</form>
</div>
<strong>Filer:</strong></td>
<?php
$dirnamee = $_POST['username'];
$dirname = $dirnamee;
$dir = opendir($dirname);
while(false != ($file = readdir($dir)))
{
if(($file != ".") and ($file != ".."))
{
echo("<a href='$dirname/$file'>$file</a> <br />");
}
}
?>
<?php endif; ?>

</div>
</div>
</body>
</html>[/code]


Tillägg av jonteeee 2011-07-13 02:49

allt är lite rörigt...försöker bara få allt att funka :D :D :D



Tillägg av jonteeee 2011-07-13 02:51

users.dat :

Visa spoiler

,jonte|sehlin,Jonte|sehlin

And who are you? :)

Kaviar
Visningsbild
P 31 Torslanda Hjälte 386 inlägg
0
Älskar att koda när man missat en punt eller liknande! <3 sitter man i flera timmar och letar och till slut så märker man att man missat 1 freaking fucking tecken! älskar det!

Somebody's poisoned the waterhole!

jonteeee
Visningsbild
P 28 Falun Hjälte 125 inlägg
Trådskapare
0

Svar till Kaviar [Gå till post]:
Lite små kul när man väl hittat de....men vägen ditt är ganska iriterande :)

And who are you? :)

Kaviar
Visningsbild
P 31 Torslanda Hjälte 386 inlägg
0

Svar till jonteeee [Gå till post]:
Indeed! Harregud vad man kan bli pissed off ibland ..

Somebody's poisoned the waterhole!

jonteeee
Visningsbild
P 28 Falun Hjälte 125 inlägg
Trådskapare
0
Verkar som det här får vänta till morgon dagen, den som vill får gärna sitta åå klurra på de här hela natten om så behövs !! :D :D :D :D

G'natt alla hamstrar !! :D

And who are you? :)

morphman86
Visningsbild
P 38 Göteborg Hjälte 6 450 inlägg
0

Svar till jonteeee [Gå till post]:
<?php if($_SESSION['username']): ?> på två ställen, är du säker på att det inte skall vara semikolon? (nybörjare inom PHP, men de flesta språk vill ha semikolon)

One pill makes you larger, one pill makes you small, but the pills that mother gave you don't do nothing at all

Tvillingen
Visningsbild
P 31 Hjälte 3 117 inlägg
0
Ett tips är att du slår på felmeddelanden, för då blir det färre onödiga fel.

Lägg det här högst upp i PHP-filen eller ändra i din php.ini fil.
error_reporting(E_ALL | E_STRICT);

Här är exempel på fel:
$_POST[username];

Ska vara $_POST['username'];

Sedan kan du inte vara säker på att variabeln är satt och borde isåfall kontrollera så att den här det med hjälp av isset() för att inte få felmeddelanden. Syftar på när du ger variablerna username och password värden från post-datan utan att vara säker på att det har skickats någon post-data.

Jag är tveksam till att din utloggning fungerar då $_SESSION['username'] finns kvar bara att den inte innehåller något.
Jag tror unset($_SESSION['username']); ska fungera bättre (:

Svar till morphman86 [Gå till post]:
Nej det är kolon som ska användas vid det där fallet och det är för att slippa måsvingarna vilket jag kan tycka är snyggare när man ska skriva ut HTML-kod mitt i koden. Skillnaden är dock att man måste avsluta if-satsen med endif;

Den här syntaxen fungerar med loopar också

Ett stycke php-kod:
<?php foreach($items as $key => $item): ?>
Göra något vettigt här
<?php endforeach; ?>


Jag är ond!

jonteeee
Visningsbild
P 28 Falun Hjälte 125 inlägg
Trådskapare
0

Svar till Tvillingen [Gå till post]:
$_POST[username] var felet....la till ' åå nu rullar de på :)


Tack för hjälpen alla !!!! :D :D :D :D :D :D :D :D

And who are you? :)

Nikkster-
Visningsbild
P Hjälte 117 inlägg
0
Bara ett litet tillägg och varning: ereg() är deprecated. Du bör istället använda preg_match(). http://php.net/manual/en/function.preg-match.php

Ingen status


Forum » Datorer & IT » Webbutveckling & Programmering » Vad är fel ? :'(

Ansvariga ordningsvakter:

Användare som läser i den här tråden just nu

1 utloggad

Skriv ett nytt inlägg

Hej! Innan du skriver om ett potentiellt problem så vill vi påminna dig om att du faktiskt inte är ensam. Du är inte onormal och världen kommer inte att gå under, vi lovar! Så slappna av och gilla livet i några minuter - känns det fortfarande hemskt? Skriv gärna ner dina tankar och frågor, vi älskar att hjälpa just dig!

Den här tråden är äldre än Rojks drömtjej!

Det senaste inlägget i den här tråden skrevs för över tre månader sedan. Är du säker på att du vill återuppliva diskussionen? Har du något vettigt att tillföra eller passar din fråga i en ny tråd? Onödiga återupplivningar kommer att låsas så tänk efter en extra gång!

Hjälp

Det här är en hjälpruta

Här får du korta tips och förklaringar om forumet. Välj kapitel i rullningslisten här ovanför.

Rutan uppdateras automagiskt

När du använder funktioner i forumet så visas bra tips här.


Annons
Annons
Annons
Annons