|
| 'Oversættelse' af php-script Fra : Erik Ginnerskov |
Dato : 01-09-04 15:06 |
|
Hej NG
Jeg sidder og arbejder med noget php-login. Det fungerer for så vidt fint.
Jeg har bare det kedelige problem, at ophavet til koden har ladet et par
variabler hedde det samme som deres forventede input.
Da jeg er helt ny i php, kan jeg ikke gennemskue, hvor jeg skal ændre og
hvor jeg skal holde nallerne væk, hvis jeg vil ændre på brugernavn og
password.
Jeg kunne selvfølgelig ændre både data og variabelnavne, men det vil jeg
helst undgå.
Scriptet kan ses på http://hjemmesideskolen.dk/scripts/phppass/user2.php
Lad mig lige slutte af med at sige, at jeg er klar over, at det krypterede
password (den alfanumeriske kode i linje 4) også skal ændres, men det kan
jeg godt klare.
--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://html-faq.dk
http://ginnerskov.frac.dk
| |
michael (01-09-2004)
| Kommentar Fra : michael |
Dato : 01-09-04 17:11 |
|
On Wed, 01 Sep 2004 16:06:26 +0200, Erik Ginnerskov wrote:
> Hej NG
> Da jeg er helt ny i php, kan jeg ikke gennemskue, hvor jeg skal ændre og
> hvor jeg skal holde nallerne væk, hvis jeg vil ændre på brugernavn og
> password.
$brugernavn="brugernavn"
giv variablen $brugernavn værdien "brugernavn"
$MD5_password="xxxxx"
giv variablen $MD5_password værdien "xxxxx"
$brugerdata=$_POST['brugernavn']
giv variablen $brugerdata værdien af POST_variablen brugernavn
$password=md5($_POST['password'])
giv variablen $password den "krypterede" værdi af POST_variablen password.
if($password=="$MD5_password" && $brugernavn=="$brugernavn")
Dette går galt! $brugernavn er altid == $brugernavn en af dem skal nok
være $brugerdata.
Altså i linie 3 og 4 skal der ændres.
$brugernavn="nytbrugernavn";
$MD5_password="XcfDDssFh...." (Nyt "krypteret" password)
Disse checker man så op mod de i form'en indtastede værdier ($_POST[''])
mvh
Michael
| |
Erik Ginnerskov (01-09-2004)
| Kommentar Fra : Erik Ginnerskov |
Dato : 01-09-04 20:52 |
|
michael wrote:
> $brugernavn="nytbrugernavn";
> $MD5_password="XcfDDssFh...." (Nyt "krypteret" password)
> Altså i linie 3 og 4 skal der ændres.
Det prøvede jeg, det duede ikke. Så prøvede jeg at nøjes med at andre
password (MD5-krypteret) - så virkede det.
> if($password=="$MD5_password" && $brugernavn=="$brugernavn")
> Dette går galt! $brugernavn er altid == $brugernavn en af dem skal nok
> være $brugerdata.
Fejlen ligger måske i den linje, du siger er gal. Men hvordan skal den linje
så skrives, for at brugernavnet kan ændres, uden at ændre navnet på den
variabel, der indeholder brugernavnet?
--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://html-faq.dk
http://ginnerskov.frac.dk
| |
michael (01-09-2004)
| Kommentar Fra : michael |
Dato : 01-09-04 22:29 |
|
On Wed, 01 Sep 2004 21:52:28 +0200, Erik Ginnerskov wrote:
> Fejlen ligger måske i den linje, du siger er gal. Men hvordan skal
den
> linje så skrives, for at brugernavnet kan ændres, uden at ændre
> navnet på den variabel, der indeholder brugernavnet?
som det er nu, bliver der ikke sammenlignet med det brugernavn du
indtaster.
if($password=="$MD5_password" && $brugernavn=="$brugernavn")
ændres til if($password=="$MD5_password" && $brugerdata="$brugernavn")
Hvis du derefter vil ændre brugernavnet er det i linie 3.
mvh
Michael
| |
Jacob Atzen (01-09-2004)
| Kommentar Fra : Jacob Atzen |
Dato : 01-09-04 22:36 |
|
michael <spamme@mogif.de> writes:
> if($password=="$MD5_password" && $brugernavn=="$brugernavn")
> ændres til if($password=="$MD5_password" && $brugerdata="$brugernavn")
Hvorfor have gåseøjne rundt om variable? Mangler vist i øvrigt lige et
lighedstegn i den sidste sammenligning.
--
Med venlig hilsen
- Jacob Atzen
| |
michael (02-09-2004)
| Kommentar Fra : michael |
Dato : 02-09-04 07:49 |
|
On Wed, 01 Sep 2004 23:35:41 +0200, Jacob Atzen wrote:
> michael <spamme@mogif.de> writes:
>
>> if($password=="$MD5_password" && $brugernavn=="$brugernavn") ændres til
>> if($password=="$MD5_password" && $brugerdata="$brugernavn")
>
> Hvorfor have gåseøjne rundt om variable?
Ved det ikke, var sakset direkte fra siden.
> Mangler vist i øvrigt lige et
> lighedstegn i den sidste sammenligning.
Oops, du har ret.
Mvh
Michael
| |
Erik Ginnerskov (01-09-2004)
| Kommentar Fra : Erik Ginnerskov |
Dato : 01-09-04 22:56 |
| | |
Erik Ginnerskov (01-09-2004)
| Kommentar Fra : Erik Ginnerskov |
Dato : 01-09-04 23:46 |
|
Erik Ginnerskov wrote:
>> Hvis du derefter vil ændre brugernavnet er det i linie 3.
>
> Ja, det fangede jeg i første omgang. Men jeg kan ikke få det til at
> virke. Jeg har også rettet brugernavn på de sider, der skal tjekkes
> adgang til, men det er måske det, der er forkert?
Ja, minsandten. Nu virker det - met ændret brugernavn. Tak for hjælpen.
--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://html-faq.dk
http://ginnerskov.frac.dk
| |
|
|