[PHP] wat is er fout!?

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Falqoon
  • Registratie: Maart 2010
  • Laatst online: 06-07 09:40
In een systeempje wat ik aan het maken ben zit een user account edit pagina in, maar het wil maar niet helemaal lekker werken.

Ik kan mijn password wijzigen zonder probleem, mijn username kan ik ook wijzigen zonder probleem, alleen daarbij geeft hij naast de melding dat het succesvol gewijzigd is ook de volgende melding: Current Password doesn't match user password. welke een echo is van het wijzigen van mn password. Wel veranderd hij zonder probleem mijn username.

Mijn email kan ik ook niet wijzigen, daarbij geeft hij opnieuw de error: Current Password doesn't match user password. Waarom haalt mn systeem deze echo er steeds bij? Ik zie door de bomen het bos niet meer.

Mijn code:

PHP:
1
//*snip*

[ Voor 79% gewijzigd door RobIII op 03-01-2013 18:00 ]


Acties:
  • 0 Henk 'm!

  • CyBeR
  • Registratie: September 2001
  • Niet online

CyBeR

💩

Omdat het $current_pass niet NULL is als het veld leeggelaten wordt?

En los hiervan heb je ongeveer vijftig SQL-injection mogelijkheden.

[ Voor 7% gewijzigd door CyBeR op 03-01-2013 16:57 ]

All my posts are provided as-is. They come with NO WARRANTY at all.


Acties:
  • 0 Henk 'm!

  • KabouterSuper
  • Registratie: September 2005
  • Niet online
Jouw select query deugt niet echt aangezien && niet is wat je wil. Probeer "AND" eens:
code:
1
SELECT * FROM users WHERE username = '$accname' && password = '$current_pass'";

moet worden
code:
1
SELECT * FROM users WHERE username = '$accname' AND password = '$current_pass'";


Afgezien daarvan: SQL-injection all over the place.

When life gives you lemons, start a battery factory


Acties:
  • 0 Henk 'm!

  • Falqoon
  • Registratie: Maart 2010
  • Laatst online: 06-07 09:40
heb AND geprobeert, geen resultaat. en er staat, als $current_pass niet gelijk is aan NULL voer dan de if statement uit, zodat als hij onaangeraakt is hij niet uitgevoerd word, toch? en wat betreft de injections, dit zal vast, ik moet hier nog veel over leren maar als dit eerst maar werkt, kan ik daarna dat probleem aanpakken..

Acties:
  • 0 Henk 'm!

  • Orion84
  • Registratie: April 2002
  • Laatst online: 17:46

Orion84

Admin General Chat / Wonen & Mobiliteit

Fotogenie(k)?

Wat heb je zelf allemaal al geprobeerd door te debuggen? Voeg in je code eens op tactische plaatsen echo's toe die de waarde van relevante variabelen en query uitkomsten printen. Dan kan je daarmee proberen te achterhalen waar het mis gaat.

The problem with common sense is that it's not all that common. | LinkedIn | Flickr


Acties:
  • 0 Henk 'm!

  • KabouterSuper
  • Registratie: September 2005
  • Niet online
Je sha-encrypt $_POST['current_password'], dit zal toch echt geen NULL zijn hoor. Maar zoals Orion84 zegt: gooi eens wat debug-info op je scherm, en kijk waar je denkfout zit.

When life gives you lemons, start a battery factory


Acties:
  • 0 Henk 'm!

  • Lampje
  • Registratie: Mei 2006
  • Laatst online: 27-03 19:48
Doe ook meteen even
code:
1
error_reporting( E_ALL );

Bovenaan je script zetten, misschien zie je dan iets. En inderdaad wat dingen echo-en; zoals je variabelen, querys en sessies ;-)

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Ofwel: Debuggen: Hoe doe ik dat?

Verder: wij zitten hier niet om voor jou te debuggen; als je dus code post beperk je dan tot relevante(!) delen(!) code. 134 regels (ook nog eens mixed HTML/PHP) code in een topic mikken en ons de fout(en) laten aanwijzen is hier expliciet niet de bedoeling: Kan iemand even...?. Zoals je zult lezen in onze Quickstart zien we graag in een topicstart wat je zélf hebt gezocht/gevonden/geprobeerd en dat lees ik nu nergens terug.

[ Voor 80% gewijzigd door RobIII op 03-01-2013 18:03 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij

Pagina: 1