login  Naam:   Wachtwoord: 
Registreer je!
 Forum

[PHP]Login (Opgelost)

Offline Grav1ty - 27/08/2007 07:14 (laatste wijziging 27/08/2007 09:25)
Avatar van Grav1tyNieuw lid Ik heb een login op mijn website met php en mysql, eentje voor de leden en eentje voor de admin, tot voor kort kon je alleen inloggen emt je ID, het cijfer dus, dat is neit erg handig, dus heb ik geprobeert om het om het te veranderen naar username... Nu geeft ie altijd:
Citaat:
Your Username or Password are incorrect
als ik wil inloggen, ookal ben ik voledig zeker dat mijn username en password kloppen(ben nog eens gaan checken in de database ...)
Het script waar volgens mij de fout zit heb ik hier een linkje van bij gezet. Alvast bedankt!

Login.php

16 antwoorden

Gesponsorde links
Offline marten - 27/08/2007 08:48
Avatar van marten Beheerder Wat wil je met regel 130 - 133 bereiken? Wil je kijken of deze leeg is? Wil je kijken of deze gezet is? Na een fetch_array kan je het beste altijd een lus / loop plaatsen die de gegevens eruit haalt. dus bv:

  1. <?php
  2. $sQuery = "hier je query";
  3. $rResult = mysql_query($sQuery);
  4.  
  5. while($r = mysql_fetch_array($rResult)) {
  6. if($r['veldnaam'] == '' || $r['veldnaam2'] == '') {
  7. echo 'Veldnamen zijn leeg';
  8. }
  9. }
  10. ?>
Offline Grav1ty - 27/08/2007 09:07 (laatste wijziging 27/08/2007 09:10)
Avatar van Grav1ty Nieuw lid Bedankt voor het snelle antwoord, ik zal het aanpassen, maar het feit is dat dat toch login van admin is en dat ik eerst de login van de leden moet doen werken ... En het feit is dat het werkte op die manier, tot ik ervoor wou zorg en dat er een username moet gebruikt worden ipv de userID.

Edit: Volgende keer beter lezen, er staat een '!' bij, dat veranderd de zaak volledig ...
Offline marten - 27/08/2007 09:15
Avatar van marten Beheerder Ik vraag alleen wat je wilt bereiken en dat je een while loop of iets dergelijks beter kan gebruiiken na een query. Ik draag geen oplossing aan dus ik hoef niet beter te lezen 
Offline Grav1ty - 27/08/2007 09:19
Avatar van Grav1ty Nieuw lid Maar zou je een oplossing kunnen aandragen dan Want ik snap niet waarom die nu op eens niet meer werkt ... Het heeft iets te maken met het feit dat ik playeruname heb toegevoegt zodat deze gebruikt kan worden voor in te loggen. Maar over die loop, hoe moet ik dan met een loop checken hoe mijn invoer overeenkomt met mijn database gegevens?
Offline Abbas - 27/08/2007 09:20
Avatar van Abbas Gouden medaille

Crew .NET
Zet in je query je variabelen eens buiten quotes en gebruik van "mysql_error()"...
Offline Grav1ty - 27/08/2007 09:21
Avatar van Grav1ty Nieuw lid wat bedoel je met dat laatste? over die mysql_error()?

Sorry maar ik ben nog steeds PHP aan het leren...
Offline Abbas - 27/08/2007 09:24
Avatar van Abbas Gouden medaille

Crew .NET
  1. $query = mysql_query("SELECT blaat FROM tabel") or die(mysql_error());

Als er iets mis gaat in de query wordt er een foutmelding weergegeven...
Offline Grav1ty - 27/08/2007 09:27 (laatste wijziging 27/08/2007 09:33)
Avatar van Grav1ty Nieuw lid Maar het feit dat die tussen "" quotes staat zou normaal toch geen probleem mogen zijn? Mijn andere queries doen het namelijk wel zo ...

Edit: Heb het gedaan en heb nu idd een error ...

Citaat:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AND uname=test AND pass=test' at line 1


Is er mss iets mis met het feit dat ik 2 maal AND gebruik ofz?
Offline Bruud - 27/08/2007 09:54 (laatste wijziging 27/08/2007 09:55)
Avatar van Bruud Nieuw lid
  1. $playerinfo = mysql_query("SELECT id,uname,pass FROM users WHERE id=" . $playerid . " AND uname=" . $playeruname . " AND pass=" . $playerpass);


moet het niet zo?

  1. $playerinfo = mysql_query("SELECT id,uname,pass FROM users WHERE id=' . $playerid . ' AND uname=' . $playeruname . ' AND pass=' . $playerpass'");
Offline Grav1ty - 27/08/2007 09:57
Avatar van Grav1ty Nieuw lid Denk het niet eigenlijk ... Omdat ze dan niet buiten qoutes zijn, ik ga nog eens iets proberen ...
Offline Bruud - 27/08/2007 09:59
Avatar van Bruud Nieuw lid ik zet ze altijd in qoutes
Offline Grav1ty - 27/08/2007 10:05
Avatar van Grav1ty Nieuw lid Ik ook en heb dat ook terug gedaan, maar als ze in quotes staan moet je denk ik niet met die punten werken hoor...
Ik heb ze terug in men quotes gezet en nu zegt die gewoon terug dat mijn password en username incorrect zijn ... En ik ben echt superzeker dat het de juiste zijn, bedoel: username:test pass: test
Als ge da 4 keer probeert zou het toch wel 1 keer moeten kloppen ... De error is weg btw, door het binnen quotes te plaatsen ... Maar ik denk niet dat het in de mysql queries ligt...
Offline Abbas - 27/08/2007 10:14 (laatste wijziging 27/08/2007 10:15)
Avatar van Abbas Gouden medaille

Crew .NET
Buiten quotes plaatsen is niet ".$var." maar ' ".$var." ', zo dus:
  1. $query = mysql_query("SELECT blaat FROM tabel WHERE foo = '" . $bar . "' ") or die(mysql_error());
Offline Grav1ty - 27/08/2007 12:13
Avatar van Grav1ty Nieuw lid Toch echt wel veel te omslachtig en totaal niet overzichtelijk als je het mij vraagt ... Anyhow, daar zijn totaal geen problemen mee meer... Hij logged eigenlijk in, alleen werkt de cookie of session niet omdat hij gewoon terug naar index gaat ...
Offline Babak - 27/08/2007 12:56 (laatste wijziging 27/08/2007 12:57)
Avatar van Babak MySQL interesse Dit probleem had ik ook een keer, en het lag aan mijn HTML form.. de namen van de inputs waren hetzelfde.. namelijk: username en username.. inplaatsvan: username en password

dus gaf hij dat elke keer aan, werd er gek van. Kijk maar of jij dat misschien ook hebt.


edit: tot nu kon je met je ID inloggen, dus is dat ook zo in je HTML forum.. input name='id' .. neem ik aan. En dus veranderen in username.
Offline Simon - 27/08/2007 12:57 (laatste wijziging 27/08/2007 12:58)
Avatar van Simon PHP expert
  1. $playerinfo = mysql_query("SELECT id,uname,pass FROM users WHERE id=" . $playerid . " AND uname='" . $playeruname . "' AND pass='" . $playerpass ."'");
  2. //en een beetje verder
  3. $staffinfo = mysql_query("SELECT id,uname,pass,access FROM staff WHERE id=".$adminid." AND uname='".$adminuname."' AND pass='".$adminpass."'");

Ik heb een uitleg over dit eens gepost in een ander topic, maar ik ben hem even kwijt, volgens mij mag zoiets wel in de FAQ hoor 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.366s