Avatar billede Slettet bruger
03. juli 2003 - 12:35 Der er 59 kommentarer

Hjælp til et login script

Hej jeg er ikke så god til php enu, og der for søger jeg lidt hjælp til et script.

Det jeg søger er et login script til min mysql server.

som her : mysql.it-host.dk

Håber der er en der har en souces der virker..
Avatar billede ahv Nybegynder
03. juli 2003 - 12:39 #1
Avatar billede ahv Nybegynder
03. juli 2003 - 12:39 #2
Avatar billede Slettet bruger
03. juli 2003 - 12:44 #3
Ahy, da jeg som sagt ikke er så god vil jeg blive total glad for lidt hjælp, til at sætte den op..
Avatar billede ahv Nybegynder
03. juli 2003 - 12:45 #4
http://www.sukos.dk/php/login/mysql/

I mysql-login.zip ligger også en dump til phpmyadmin.
Opret først tabellen "password" og lav derefter dump'et.
Upload derfter filerne, så skulle du være kørende.
Avatar billede ahv Nybegynder
03. juli 2003 - 12:46 #5
Du skal forresten ind i dologin.php og til rette ->

$db = mysql_connect("localhost", "root", "") or die ("Desværre ingen forbindelse til databasen");

mysql_select_db("password", $db) or die ("Kunne ikke vælge databasetabel");
Avatar billede avminarm Juniormester
03. juli 2003 - 13:04 #6
prøv at læse på www.showsource.dk - der er en beskrivelse af login scriptet som ahv henviser til, med en udførlig vejledning - når du støder på problemer skriver du bare her hvad der er - så hjælper vi dig ;o)
Avatar billede Slettet bruger
03. juli 2003 - 13:13 #7
Tak, Avminarm. Men mit føste problem er hvad skal jeg henvise til i mysql når det er ?
Avatar billede avminarm Juniormester
03. juli 2003 - 13:30 #8
hvor henne mener ? - hvad står der prøv at vise lidt kode
Avatar billede Slettet bruger
03. juli 2003 - 13:35 #9
Jeg har kan godt få det til at virker det script, men nu er det sådan at jeg vil have at den bruger det sammen som den bruge i
Databasen : mysql
Tabel : User

Her bruger de en type char(16), men i det exs bruger de varchar(12) og tinytext

Hvad skal rettes ?
Avatar billede Slettet bruger
03. juli 2003 - 13:43 #10
Grrr, Det driller..

min data ser sådan ud

# phpMyAdmin MySQL-Dump
# version 2.2.7-pl1
# http://phpwizard.net/phpMyAdmin/
# http://www.phpmyadmin.net/ (download page)
#
# Vært: localhost
# Genereringstidspunkt: 03/07 2003 kl. 13:42:33
# Server version: 3.23.52
# PHP version: 4.2.3
# Database: : `Password`
# --------------------------------------------------------

#
# Struktur dump for tabellen `brugere`
#

CREATE TABLE brugere (
  id tinyint(4) NOT NULL auto_increment,
  navn char(16) NOT NULL default '',
  password char(16) NOT NULL default '',
  PRIMARY KEY  (id)
) TYPE=MyISAM;

#
# Data dump for tabellen `brugere`
#

INSERT INTO brugere VALUES (1, 'sukos', '231a48019c390f2b');
INSERT INTO brugere VALUES (2, 'test', '098f6bcd4621d373');

og har ikke rette i det script fra http://www.sukos.dk/php/login/mysql/

Men det virker bare ikke
Avatar billede Slettet bruger
03. juli 2003 - 13:44 #11
Kan godt få det til at virker hvis jeg bruger det script ude at rette i db, men da mysql bruger det skal jeg jo have det til at virker..
Avatar billede ahv Nybegynder
03. juli 2003 - 13:47 #12
Giver den nogen fejl eller?
Avatar billede Slettet bruger
03. juli 2003 - 13:49 #13
Nej den vil bare ikke loge ind
Avatar billede ahv Nybegynder
03. juli 2003 - 13:50 #14
Har du det læggende på nettet? Så læg evt. et link.
Avatar billede avminarm Juniormester
03. juli 2003 - 13:52 #15
du kan rette disse to:

#
# Data dump for tabellen `brugere`
#

INSERT INTO brugere VALUES (1, 'sukos', '231a48019c390f2b');
INSERT INTO brugere VALUES (2, 'test', '098f6bcd4621d373');

til:

#
# Data dump for tabellen `brugere`
#

INSERT INTO brugere VALUES (1, 'sukos', md5('password1'));
INSERT INTO brugere VALUES (2, 'test', 'md5('password2'));

De er bare krypterede i eksemplet på showsource

det med char og varchar er ikke så vigtigt
Avatar billede Slettet bruger
03. juli 2003 - 14:01 #16
Nej virker ikke,
Avatar billede Slettet bruger
03. juli 2003 - 14:07 #17
Min php dologin.php
-------------------

<?php

session_start();

//hvis form er submittet
if (isset($_POST['logind'])) {

//password i databasen er krypteret, så det gøres også med indtastet password
$dopass = md5($_POST['password']);


//skift selv bruger og pass til databasen.
$db = mysql_connect("localhost", "root", "") or die ("Desværre ingen forbindelse til databasen");

mysql_select_db("password", $db) or die ("Kunne ikke vælge databasetabel");

$tjek = mysql_query("SELECT user, password FROM user WHERE user='$_POST[navn]' AND password='$dopass'") or die ("Kunne ikke vælge felter i database-tabellen");

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

$_SESSION['sessionnr'] = session_id();
$_SESSION['Name'] = $_POST['user'];


header("Location:side1.php");
exit;
}else{

header("Location:logind.php?error=fejl");
exit;
}

}else{

header("Location:logind.php");
exit;
}

?>

Min tabel User
---------------
#
# Struktur dump for tabellen `user`
#

CREATE TABLE user (
  Host char(60) binary NOT NULL default '',
  User char(16) binary NOT NULL default '',
  Password char(16) binary NOT NULL default '',
  Select_priv enum('N','Y') NOT NULL default 'N',
  Insert_priv enum('N','Y') NOT NULL default 'N',
  Update_priv enum('N','Y') NOT NULL default 'N',
  Delete_priv enum('N','Y') NOT NULL default 'N',
  Create_priv enum('N','Y') NOT NULL default 'N',
  Drop_priv enum('N','Y') NOT NULL default 'N',
  Reload_priv enum('N','Y') NOT NULL default 'N',
  Shutdown_priv enum('N','Y') NOT NULL default 'N',
  Process_priv enum('N','Y') NOT NULL default 'N',
  File_priv enum('N','Y') NOT NULL default 'N',
  Grant_priv enum('N','Y') NOT NULL default 'N',
  References_priv enum('N','Y') NOT NULL default 'N',
  Index_priv enum('N','Y') NOT NULL default 'N',
  Alter_priv enum('N','Y') NOT NULL default 'N',
  PRIMARY KEY  (Host,User)
) TYPE=MyISAM COMMENT='Users and global privileges';

#
# Data dump for tabellen `user`
#

INSERT INTO user VALUES ('localhost', 'root', '', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y');

Og det virker bare ikke. den siger at der er fejl i oplysning, passer ikke
Avatar billede ahv Nybegynder
03. juli 2003 - 14:09 #18
$tjek = mysql_query("SELECT User, Password FROM user WHERE User='$_POST[navn]' AND Password='$dopass'") or die ("Kunne ikke vælge felter i database-tabellen");

Skal skrives på præcis sammen måde.
Avatar billede avminarm Juniormester
03. juli 2003 - 14:15 #19
hvilke fejlmedd får du?
Avatar billede Slettet bruger
03. juli 2003 - 14:41 #20
Avminarm > Jeg får kun af vide at bruger ikke finde..
Avatar billede avminarm Juniormester
03. juli 2003 - 14:57 #21
hvad står dwer i DB og hvad indtaster du?
Avatar billede Slettet bruger
03. juli 2003 - 14:59 #22
I db står der root som brugernavn
Avatar billede ahv Nybegynder
03. juli 2003 - 15:00 #23
Hvordan ser din form forresten ud?
Avatar billede Slettet bruger
03. juli 2003 - 15:03 #24
Hvad vil du se af den, den er ved at give mig grå hår..
Avatar billede ahv Nybegynder
03. juli 2003 - 15:04 #25
Din form.
Avatar billede Slettet bruger
03. juli 2003 - 15:07 #26
(Login.php)
<html><head><title>Log ind med php og mysql</title></head>

<body marginwidth="100" leftmargin="100">

<form action="dologin.php" method="post">
<input type="hidden" name="logind" value="logind">
<p><b>Indtast:</b></p>
Brugernavn: (sukos eller test)<br>
<input type="text" name="navn"><br>
Password: (sukos eller test)<br>
<input type="password" name="password"><br>
<input type="submit" name="submit" value="Log ind">
</form>
<?php
if (isset($_GET['error']) && $_GET['error'] == "fejl") {
echo"<b>Fejl i brugernavn eller password!</b>";
}
?>
</body></html>
Avatar billede avminarm Juniormester
03. juli 2003 - 15:07 #27
din formular hvor du taster login oplysninger ind i
Avatar billede Slettet bruger
03. juli 2003 - 15:08 #28
Det er den ikke ?
Avatar billede avminarm Juniormester
03. juli 2003 - 15:09 #29
det er fordi $dopass = md5($_POST['password']); er MD5 krypteret i dologin - indsæt et md5 krypteret password

INSERT INTO user VALUES ('localhost', 'root', MD5('test'), 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y');
Avatar billede avminarm Juniormester
03. juli 2003 - 15:10 #30
jo se på tidspunktet - 1 sek efter du postede den postede jeg ;o)
Avatar billede Slettet bruger
03. juli 2003 - 15:14 #31
Det virker heller ikke, jeg prøver lige at zippe den så kan en af jer lige prøve..
Avatar billede avminarm Juniormester
03. juli 2003 - 15:17 #32
send til exp@avminmusearm.dk
Avatar billede Slettet bruger
03. juli 2003 - 15:20 #33
Den kan hentes på www.datacool.dk/login.zip
Avatar billede Slettet bruger
03. juli 2003 - 15:23 #34
Til Avminarm, hvorfor kan jeg ikke komme ind på http://avminmusearm.dk men skal ind på http://www.avminmusearm.dk
Avatar billede Slettet bruger
03. juli 2003 - 15:23 #35
Ellers fin hp..
Avatar billede avminarm Juniormester
03. juli 2003 - 15:28 #36
hvorfor har du både tabellen brugere og tabellen users ??
Avatar billede Slettet bruger
03. juli 2003 - 15:39 #37
Fordi jeg skulle afprøve nåde. men der er som user jeg skal have den.. bruger er kun den der var i den script
Avatar billede avminarm Juniormester
03. juli 2003 - 15:53 #38
denne her Password char(16) binary NOT NULL default '',
skal du rette til Password tinytxt NOT NULL default '',
Avatar billede avminarm Juniormester
03. juli 2003 - 15:56 #39
og prøv så igen
Avatar billede Slettet bruger
03. juli 2003 - 16:08 #40
Nej den skal være Password char(16) binary NOT NULL default '',
Avatar billede Slettet bruger
03. juli 2003 - 16:09 #41
Når den er færdi og virker skal den jo læse i mysql database om den må åben
Avatar billede Slettet bruger
03. juli 2003 - 18:03 #42
Er der en af jer der finder ud af nåde ?
Avatar billede avminarm Juniormester
04. juli 2003 - 08:34 #43
den skal ikke være char 16 pga så begrænser den feltet til kun at fylde 16 karakteret og MD5 krypteringen fylder væsentligt mere og derfor bliver du ikke logget ind - så den skal rettes for at virke med det andet
Avatar billede sukos Juniormester
04. juli 2003 - 08:36 #44
MD5 fylder 32 tegn.
Avatar billede sukos Juniormester
04. juli 2003 - 08:37 #45
Op til 32 tegn, mener jeg da?
Avatar billede sukos Juniormester
04. juli 2003 - 08:38 #46
md5("sukos") gi'r:
231a48019c390f2b40d1b6956bedc1fd
Avatar billede Slettet bruger
04. juli 2003 - 15:33 #47
Hvad gør så mysql så selv ? da det er hvad der stå i mysql databasen´s user..
Avatar billede avminarm Juniormester
04. juli 2003 - 20:34 #48
let>> hvad mener du? hvis man nu indtaster "sukos" som password efterspørger scriptet dette: 231a48019c390f2b40d1b6956bedc1fd, men hvis pass er CHAR 16 vil der kun være dette: 231a48019c390f2b - dvs password ikke gyldigt!!
Avatar billede Slettet bruger
04. juli 2003 - 20:40 #49
Nej men det er hvad det giver mig ret til i mysql database..
Avatar billede avminarm Juniormester
05. juli 2003 - 21:53 #50
jeg forstår slet ikke hvad du mener????
Avatar billede Slettet bruger
06. juli 2003 - 01:33 #51
OK, Jeg prøver at forklare..

I mysql databasen er det sådan at der er en tabel med user og det
er den tabel jeg vil søge om der er en bruger i. og da den er sådan at den
ser sådan ud som min password mapper ser ud nu vil jeg ikke rette i den da jeg vil have den til at virker på den måde som mysql.user gør..
Avatar billede avminarm Juniormester
06. juli 2003 - 23:12 #52
er det en tabel du selv har lavet - jeg må indrømme det lider idt underligt?? prøv med det her i scriptet:

<?php

session_start();

//hvis form er submittet
if (isset($_POST['logind'])) {

//password i databasen er krypteret, så det gøres også med indtastet password
$dopass1 = md5($_POST['password']);
$dopass = substr($dopass1, 0, 16); //finder de første 16 tegn i krypteringern


//skift selv bruger og pass til databasen.
$db = mysql_connect("localhost", "root", "") or die ("Desværre ingen forbindelse til databasen");

mysql_select_db("password", $db) or die ("Kunne ikke vælge databasetabel");

$tjek = mysql_query("SELECT user, password FROM user WHERE user='$_POST[navn]' AND password='$dopass'") or die ("Kunne ikke vælge felter i database-tabellen");

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

$_SESSION['sessionnr'] = session_id();
$_SESSION['Name'] = $_POST['user'];


header("Location:side1.php");
exit;
}else{

header("Location:logind.php?error=fejl");
exit;
}

}else{

header("Location:logind.php");
exit;
}

?>
Avatar billede Slettet bruger
07. juli 2003 - 01:03 #53
avminarm Nej den tabel er en ren kopi af mysql.user og jeg har funde ud af at opratte men nu mangler jeg kun at kun læse så det virker har valgt at prøve at gå alle php filer igem da jeg tro det er nemmer en at få hjælp her.
men finder du eller en anden løsning lytter jeg da gerne.. men er træt af at prøv en masse der ikke virker når mysql jo fint kan slå det op..
og den bruger den tabel
Avatar billede avminarm Juniormester
07. juli 2003 - 09:02 #54
grunden til du har prøbvet en masse der ikke virker - er at det hat været lidt svært at finde ud af hvad det var du ville!, f.eks hvad mener du med "nu mangler jeg kun at kun læse så det virker"
Avatar billede Slettet bruger
07. juli 2003 - 12:03 #55
Jeg ønsker at lave et loginsystem som loger ind over den database mysql selv bruger med bruger..
Avatar billede avminarm Juniormester
07. juli 2003 - 15:35 #56
se det ville have været en rigtig god ting at skrive i starten af det sprg - hvad er det du mangler at "læse" ??
Avatar billede Slettet bruger
07. juli 2003 - 15:52 #57
Det gjort jeg også
Avatar billede Slettet bruger
07. juli 2003 - 15:53 #58
Det jeg søger er et login script til min mysql server.
Avatar billede avminarm Juniormester
07. juli 2003 - 17:03 #59
ok måske er jeg fatsvag - men hvad mener du med: "jeg har funde ud af at opratte men nu mangler jeg kun at kun læse så det virker"
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