Nej...
inloggningssystem
73 svar · 1 309 visningar · startad av silfver · sida 3 av 4
filipbh skrev:
Nej...
Okay, men jag vet inte om det funkade eller ej, för jag fick inte fram något felmeddelande. Och man "redirectas" ju inte till någon sida efter man tryckt på okay. Försökte kolla i databasen, men jag vet inte hur man ser vart uppgifterna är lagrade. Såg inte mina uppgifter någonstans i alla fall.
Jag kan ju inte "browsa" heller. Jag kan det med ett nyhetsscript jag har, men det kanske är en helt annan grej.
Det filnamnet som sidan med formuläret innehåller ska du sätta i "action" i form-taggen i formuläret.. Då skickas den till sig själv. Överst på den sidan lägger du in den koden som "insertar" datan till databasen..
filipbh skrev:
Det filnamnet som sidan med formuläret innehåller ska du sätta i "action" i form-taggen i formuläret.. Då skickas den till sig själv. Överst på den sidan lägger du in den koden som "insertar" datan till databasen..
Haha... Jag glömde din kod. Fan vad tragiskt... Men
action="skapa_anvandare.php" är det dit sidan skickas vidare till?
Har testat igen. Men hur vet jag om det har lagt till i databasen?
Om sidan med formuläret och PHP-koden heter skapa_anvandare.php så är det bra. Du har ju phpmyadmin så då kan ju bara logga in där och kolla i tabellen users om det har skapats någon post.
filipbh skrev:
Om sidan med formuläret och PHP-koden heter skapa_anvandare.php så är det bra. Du har ju phpmyadmin så då kan ju bara logga in där och kolla i tabellen users om det har skapats någon post.
Ja, men jag kan inte "browsa" tabellerna som jag kan med etc. nyhetsscriptet. :) Eller vilken ikon ska man klicka på?
Det betyder att tabellen är tom... Har du fyllt i alla värdena och klickat på spara? Om all kod är rätt ska det fungera.
Så här bör skapa_anvandare.php se ut. Tänk på att ändra användare, lösenord och databas i SQL-hämtningen till de rätta värdena!
<?
if(isset($_POST['spara']))
{
$lank = mysql_connect ("localhost", "användare","lösen");
$databas = mysql_select_db("databas");
$sql = "INSERT INTO users (username,password,namn) VALUES('$_POST[user]','$_POST[pass]','$_POST[namn]'";
mysql_query($sql);
mysql_close ($lank);
}
?>
<form action="skapa_anvandare.php" method="post">
<input type="text" name="user" size="20"><br>
<input type="text" name="pass" size="20"><br>
<input type="text" name="namn" size="20"><br>
<input type="submit" value="Spara medlem" name="spara">
</form>
filipbh skrev:
Så här bör skapa_anvandare.php se ut. Tänk på att ändra användare, lösenord och databas i SQL-hämtningen till de rätta värdena!
Mitt ser ut sådär. Det funkar ändå inte, och jag har fyllt i mina användaruppgifter korrekt. Men det läggs inte till något i tabellen i databasen. Jag testade göra det manuellt, och det funkade.
Okej? Skumt... Ska titta lite mer på det. Det bör fungera. Den lägger inte ens till en tom rad?
Skriv echo $_POST['user'] . " - $_POST['pass'] . " - $_POST['namn']; överst på sidan. Klickar du på spara bör de uppgifterna du skrivit in komma upp överst på sidan.
Hittade felet... Det saknades en ) i slutet på nedanstående rad. Fungerar det inte nu tar jag livet av mig :p
$sql = "INSERT INTO users (username,password,namn) VALUES('$_POST[user]','$_POST[pass]','$_POST[namn]')";
Du slipper ta livet av dig, det funkade nu. :)
Vad gör vi nu då? :p
filipbh skrev:
Underbart =)
Som sagt; vad vill du ha?
Jo då ska jag försöka förklara igen då. Man ska alltså logga in. När man loggat in ska man hamna på en index-sida. Väl där inne ska man kunna skriva "nyheter". Det är interna grejer, så nyheter kan man inte kalla det, men man ska kunna skriva in möten. Alla ska ju inte ha previligiet att skapa användare, så jag vet inte hur man ska lösa det. Men det kanske du vet, det är ju du som kan. :D Alltså, enkel inloggning till en sida, som man inte ska kunna nå förens man loggat in. Förstår du? :)
r/ väl inne på "indexsidan" så är det ju inga problem för mig att skapa länkar och sånt. Det är bara själva inloggningen som är krånglig. :)
Har du testat denna?
if($_POST['login_button']) {
$_POST['loginpass'] = md5($_POST['loginpass']);
$open = mysql_connect ("localhost", "user","pass");
$sql = "SELECT username,password FROM users WHERE username='".$_POST['loginname']."'";
$result = mysql_db_query("databas","$sql");
while($data=mysql_fetch_array($result)){
if($data['username']==$_POST['loginname']){
if($data['password']==$_POST['loginpass']){
echo "Du loggas vidare";
echo("<script language=JavaScript>");
echo("self.location.replace(sida.php')");
echo("</script>");
}
else
echo "Det gick inte att fullfölja inloggningen";
filipbh skrev:
Har du testat denna?
if($_POST['login_button']) { $_POST['loginpass'] = md5($_POST['loginpass']); $open = mysql_connect ("localhost", "user","pass"); $sql = "SELECT username,password FROM users WHERE username='".$_POST['loginname']."'"; $result = mysql_db_query("databas","$sql"); while($data=mysql_fetch_array($result)){ if($data['username']==$_POST['loginname']){ if($data['password']==$_POST['loginpass']){ echo "Du loggas vidare"; echo("<script language=JavaScript>"); echo("self.location.replace(sida.php')"); echo("</script>"); } else echo "Det gick inte att fullfölja inloggningen";
Nej det har jag inte. Vill du hjälpa mig med formuläret? :) Måste bara säga att du har varit till stor hjälp. Schyst att du orkar fortsätta. :f
r/ det var ju den som inte funkade, men jag gick bakåt och tog den när du rättat till felet.
Formuläret till inloggningen?? Det är lugnt.. Har inte så mycket annat att göra nu plus att det är skoj att hjälpa till. Ska dock sticka om 20 min.
Bygg formuläret på samma sätt som tidigare. Lägg in fälten i tabeller så ser det snyggare ut. Enligt koden bör du döpa användarnamnsfältet till loginname, lösenordsfältet till loginpass och knappen för att logga in till login_button. Har du inte krypterat lösenord får du ta bort raden med md5.
Schyst. Jo, jag försökte göra det. Men jag får något felmeddelande:
Parse error: parse error in /home/silfver/silfver.se/login/start.php on line 69
Vet inte varför. På sista raden står det </html>
Koden ska väl ligga överst på sidan?
Sen vet jag inte om jag har krypterade lösenord. :D Inte lätt det här... :)
