id herkennen en rij in database aanvullen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Opdracht: DevOps Expert/Ontwikkelaar @ Assen

2021-03-23 iSense Opdracht: DevOps Expert/Ontwikkelaar Ben jij een ervaren DevOps expert / applicatiebeheerder-ontwikkelaar? Heb jij ervaring met het analyseren van productieproblemen en het oplossen hiervan? Lees dan snel verder! ISBI49414 Organisatie De organisatie is een van de grotere ICT-dienstverleners binnen de Rijksoverheid. Zij ondersteunen de primaire processen van diverse uitvoeringsorganisaties en de ministeries. Taken Als DevOps expert / applicatiebeheerder-ontwikkelaar ben jij verantwoordelijk voor een set van applicaties. Met jouw kennis en vaardigheden ben je tot het volgende in staat: Je analyseert productieproblemen en lost ze op, al dan niet in samenwerking met andere afdelingen. Je bouwt kleine, maar ook grote

Bekijk vacature »

Opdracht: DevOps Ontwikkelaar @ Assen

2021-03-23 iSense Opdracht: DevOps Ontwikkelaar Als DevOps ontwikkelaar ben jij verantwoordelijk voor het ontwikkelen en onderhouden van het portaal en daaraan gerelateerde applicaties. ISBI49429 Organisatie De organisatie is een van de grotere ICT-dienstverleners binnen de Rijksoverheid. Zij ondersteunen de primaire processen van diverse uitvoeringsorganisaties en de ministeries. Taken Je bouwt in teamverband aan functionele wijzigingen op de applicatie die uit de digitale strategie voortvloeien. Je analyseert productie-incidenten en lost ze op, in samenwerking met andere afdelingen. Je houdt je bezig met applicatie monitoring en de doorontwikkeling daarvan. Je draagt bij aan een effectieve ontwikkelomgeving door mee te werken aan een

Bekijk vacature »

Bert vandenbogaerde

bert vandenbogaerde

03/06/2011 11:15:27
Quote Anchor link
situatie:
Persoon logt in met zijn gegevens die opgeslaan zijn in de database.
Database kolommen zijn:
id,email,login,wachtwoord

wanneer de persoon succesvol ingelogd is ziet hij een nieuw invulveld: naam.
Wanneer de persoon op submit drukt moet de naam opgeslaan worden in de database.
M.a.w. de database kolommen zijn nu:
id,email,login,wachtwoord, naam

Tot zover ben ik mee.
Maar nu heb ik een probleem.

Bijvoorbeeld:
Er zijn 5 geregistreerden in de database.

id email login wachtwoord naam
1 vb1@domein.be vb1 ***
2 vb2@domein.be vb2 ***
3 vb3@domein.be vb3 ***
4 vb4@domein.be vb4 ***
5 vb5@domein.be vb5 ***

Wanneer persoon vb3 inlogt (id=3) en zijn naam submit moet die naam in de rij van persoon met id=3 komen.
Het script moet dus herkennen wie inlogt en zo de aanvulling van de gegevens in die rij zetten.

Tips?
 
PHP hulp

PHP hulp

18/06/2021 19:20:35
 
Vincent Huisman

Vincent Huisman

03/06/2011 11:19:36
Quote Anchor link
Het id in een session zetten en dan met een where updaten?
 
Bert vandenbogaerde

bert vandenbogaerde

03/06/2011 11:28:03
Quote Anchor link
Vincent Huisman op 03/06/2011 11:19:36:
Het id in een session zetten en dan met een where updaten?


Kan het iets concreter?
Ben nogal nieuw in php en mysql.
 
- SanThe -

- SanThe -

03/06/2011 11:31:19
Quote Anchor link
Select uit de database de info plus het id van degene die inlogt.
Stop het id in een session.
Wanneer er nu een formulier wordt verzonden kan je de database updaten met het id uit de session.
Gewijzigd op 03/06/2011 11:31:51 door - SanThe -
 
Bert vandenbogaerde

bert vandenbogaerde

03/06/2011 11:37:47
Quote Anchor link
Zoiets dan?

SELECT * FROM mijntabel
WHERE id = [??]
 
Ruben Portier

Ruben Portier

03/06/2011 11:42:28
Quote Anchor link
Ja bert, zoiets bedoelen ze.

Tijdens het inloggen kan je best doen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$_SESSION['account_ID'] = $row1['id'];


En dan doe je om de naam te updaten hetvolgende:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
mysql_query("UPDATE tabelnaam SET naam = '".$_POST['naam']."' WHERE id = '".$_SESSION['account_ID']."'");
 
- SanThe -

- SanThe -

03/06/2011 11:47:03
Quote Anchor link
Ruben Portier op 03/06/2011 11:42:28:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
mysql_query("UPDATE tabelnaam SET naam = '".$_POST['naam']."' WHERE id = '".$_SESSION['account_ID']."'");


Denk wel aan sql-injection. Gebruik mysql_real_escape_string($_POST['naam']) voor de beveiliging van je database.
 
Ruben Portier

Ruben Portier

03/06/2011 11:48:31
Quote Anchor link
@SanThe: Ja dat is waar, maar dat zijn 'details' wat bert volgens mij zelf kan invoegen. Hetgeen ik hierboven neer geplaatst heb is een voorbeeld waarop hij dan verder kan werken. Het ging hem vooral over de structuur eigenlijk ;)

Maar inderdaad, zeker niet vergeten te beveiligen voor sql injections!

EDIT: @bert: ik raad je eigenlijk aan om over te stappen naar MySQLi. Het is beter het nu al te leren want PHP6 zou geen MySQL meer ondersteunen (of toch geen bugs/update meer uitbrengen). En MySQLi werkt gewoon iets sneller, de codes die je moet gaan gebruiken zijn iets duidelijker. Je ziet dus eigenlijk meteen waarvoor ze dienen enzovoort.
Gewijzigd op 03/06/2011 11:50:19 door Ruben Portier
 
- SanThe -

- SanThe -

03/06/2011 11:54:02
Quote Anchor link
Ruben Portier op 03/06/2011 11:48:31:
@SanThe: Ja dat is waar, maar dat zijn 'details' wat bert volgens mij zelf kan invoegen. Hetgeen ik hierboven neer geplaatst heb is een voorbeeld waarop hij dan verder kan werken. Het ging hem vooral over de structuur eigenlijk ;)

Maar inderdaad, zeker niet vergeten te beveiligen voor sql injections!


Het was geen commentaar maar slechts een aanvulling op jouw post.
 
Ruben Portier

Ruben Portier

03/06/2011 11:58:49
Quote Anchor link
Ja dat weet ik wel ;) Ik wou gewoon maar even zeggen dat ik tijdens het typen van die code wel aan gedacht hebt dat je moet beveiligen tegen sql-injectie. Ik had het er misschien beter bij gezet voor het geval dat bert dit niet zou weten.

Maar hij zal het nu wel gelezen hebben neem ik aan ;)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.