Opdatering af brugeroplysninger

Tags:    php mysql update password

Hej

Jeg søger lidt hjælp til noget programmering i php og MySQL vedrørende opdatering af data.

Jeg har en lille hjemmeside, hvor folk kan oprette en bruger med lidt oplysninger om dem selv. I takt med at der kommer flere brugere og at det bliver mere kedeligt manuelt at rette folks oplysninger, så vil jeg gerne gøre det muligt for folk selv at rette deres oplysninger.

Desværre er jeg dog ikke den store ørn til programmering og har ikke været i stand til at finde en vejledning på nettet der har kunnet lede mig frem til en løsning.

Jeg vil høre, om her er nogen der kan anbefale et sted hvor det er muligt at finde en letforståelig guide til hvordan man kan løse nedenstående opgave?

Med Venlig hilsen

Michael

Fold kodeboks ind/udKode 






6 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 8 karma
Sorter efter stemmer Sorter efter dato
Hej Michael.

Start med at kigge på login tutorials.
The New Boston har nogle gode, det samme har phpacademy, begge kan du finde på youtube.

Jeg tror det vil være irriterende for brugeren hver gang han vil rette noget at skulle taste sin kode, derfor kan man lige så godt logge ind og når man så er logget ind kan man foretage ændringer.

Men jeg ser lige på om jeg ikke kan få tid i morgen til at skrive noget kode som kan klare det for dig.

Det handler jo blot om 3 sider (index, login, profil).

Edit:
Så fik jeg tiden.

Jeg har valgt at lave det i to filer.

Jeg håber du kan bruge det, ellers må du lige vende tilbage.

OBS, jeg har ikke lavet validering eller sikkerhed på det, så det er hullet som en si.

Index.php
Fold kodeboks ind/udPHP kode 


Login.php
Fold kodeboks ind/udPHP kode 




Indlæg senest redigeret d. 09.12.2011 18:43 af Bruger #15663
Altså du kan jo gøre det ved at flytte opdatering over i en ny fil også sende dem tilbage, derved genindlæser den.

Du kan også prøve at gøre sådan her:

Fold kodeboks ind/udPHP kode 


Det er ikke testet




Indlæg senest redigeret d. 09.12.2011 20:01 af Bruger #15663
Du kan med noget PHP kode, tage det ID input, som brugeren udfylder samt hans password. Dette kan du så med PHP tjekke i databasen om de stemmer overens. Hvis dette er tilfældet kan brugeren komme ind på en side, der er begrænset til brugere af sitet, og her kan han så udfylde en formular, hvor han kan opdatere sine oplysninger. Et eksempel kunne være noget lignende.

login_check.php
Fold kodeboks ind/udPHP kode 

Du kan nu med sessionen som er sat altid finde brugeren ved at køre følgende PHP forespørgsel til databasen
Fold kodeboks ind/udPHP kode 

Håber at det hjalp dig igang. husk at dette kun er et eksempel



Hej Martin

Forud for login_check.php så skal man have en side a la nedenstående?

login.html
Fold kodeboks ind/udKode 



Jeg vil dog blot mene, at min skitserede model forekommer lettere, hvis den altså er teknisk mulig? Ingen af oplysningerne er hemmelige, selvfølgelig bortset fra passwordet, hvorfor det ikke gør noget, at man kan se oplysningerne ude at have indtastet en rigtig kombination af id og password. Men kun muligt at ændre data i databasen med rigtigt password.



Hej Daniel

Det ligner helt det jeg havde i tankerne. Rigtig mange tak :-)

(Hvis andre skulle få brug for koderne, så kan jeg lige tilføje, at der i index.php skal tilføjes ) i slutning af linie 12)

Koden har dog en lille uhensigtsmæssighed:
Når man har indtastet de nye data og klikket på "Opdatér", så skifter felterne i formularen til de oprindelige data. Klikker man igen (uden at ændre noget) så kommer de nye opdaterede data frem igen. Klikker man endnu en gang, så kommer de oprindelige data frem igen osv. Dette vil nok forvirre brugerne lidt.

Kan det løses? Enten ved at de aktuelle data vises efter opdatering, eller ved at formularen erstattes af en besked om at opdateringen er foretaget.



Altså du kan jo gøre det ved at flytte opdatering over i en ny fil også sende dem tilbage, derved genindlæser den.

Du kan også prøve at gøre sådan her:

Fold kodeboks ind/udPHP kode 


Det er ikke testet


Det lader ikke til at koden virker efter hensigten. Jeg kan i hvert fald ikke få den til at opdatere databasen.

Så prøver nok at arbejde videre med det første kode-forslag, og så blot skrive, at folk kun må klikke på Opdatér-knappen én gang pr. login.

Men endnu engang tak for hjælpen :-)



t