Jag håller på med en inloggning för något som ska bli ett bannerbyte hade jag tänkt iaf. Men frågan återstår ju om det kommer bli ett :). Men nu försöker jag fixa till en inloggning. Och tänkte försöka göra det med sessioner. Men nu är det så att jag inte är så pass säker på det.
Här kommer iaf en kod som jag börjat på...
<?
function loggain(){
global $srnick, $srpass;
/* Kolla om nicket och lösenordet stämmer överens med något fält i databasen. */
$sql ="SELECT * FROM tabell WHERE srnick = nick AND srpass = pass";
$result =mysql_query("$sql");
if (srnick == $nick) && (srpass == $pass)){
session_register("user");
session_register("losen");
$user = "srnick";
$losen = "srpass";
echo "Du är nu inloggad.";
}
?>
Det borde nog fungera men du kan ju testa denna variant... den kör jag med och fungerar bra.
if(isset($login)){
$connect = mysql_connect("host", "user","pass");
$sql = "SELECT * FROM users WHERE nick='".$_POST['srnick']."' AND pass='".$_POST['srpass']."'";
$result = mysQl_db_query("$databas","$sql");
if(!($rad=mysql_fetch_array($result))){
echo "Fel uppgifter, var vänlig försök igen.<br>";
}
else{
$user=$rad["nick"];
$losen=$rad["pass"];
$_SESSION['user'] = $user;
$_SESSION['losen'] = $losen;
}
}
Denna anropas om du klickar på en knapp som heter "login" e.g <input type="submit" name="login" value="Logga in">
Du kanske får ändra fälten som ska kollas... vet inte om jag satt rätt namn på dem.
Okej! Det funkar! Ännu en fråga. Det borde nog gå snabbt. Session_register behöver man alltså bara ha på inloggningssidan då?
Sedan när man väl är inloggad så behöver man bara session_start(); i början av filerna?
Gjorde ett nytt inloggningssystem till en annan grej på webhotellet.
Men alltså själva inloggningen ser likadan ut.
<?
/* Om Användaren klickat på logga in, så kollar koden om nicket och passet existerar i databasen. */
if(isset($send)){
include "config.php";
$sql = "SELECT * FROM users WHERE nick='".$_POST['srnick']."' AND pass='".$_POST['srpass']."'";
$result = mysql_query("$sql");
if(!($rad=mysql_fetch_array($result))){
echo "Fel uppgifter, var vänlig försök igen.<br>";
}
else{
$user=$rad["nick"];
$losen=$rad["pass"];
/* Registrerar sessionerna nick och pass */
$_SESSION['user'] = $user;
$_SESSION['losen'] = $losen;
echo "Välkommen in $user<br>";
echo "<br>";
$sql2 ="UPDATE users SET besok = besok+1 WHERE nick ='$user'";
mysql_query("$sql2");
}
}
Om jag skriver typ echo $user på den sidan så skriver den ut det. Men på nästa sida. Där har jag börjat med session_start(); och raden under session_register("user");
Funkade förut när jag hade det andra scriptet. Men vägrar fungera nu. Vad kan vara fel? :h
För i de andra sidorna har jag session_start och session_register först...Men jag ska prova!
Tycker de verkar så knepigt. För att de förra scriptet jag hade så funkade det utan problem. Det är säkert till för att jävlas med mig :).
Förresten! Jag hittade felet. Tror för det första att du hade rätt..Men sedan så hade jag i sql-satsen glömt att döpa om $user till $anv. För jag ändrade till det. Men tack ska du ha för besväret iaf!
Otroligt kul när man kan få svar på sån kort tid! :birp
253 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2