Fehler bei einer Userabfrage

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Toast
    antwortet
    ok ich habe es jetzt hinbekommen habe ein vorgefertigtes Script benutzt.

    Danke trotzdem für die hilfe

    Marcus

    Einen Kommentar schreiben:


  • Toast
    antwortet
    Also $suche="SELECT count(*) as OK FROM user WHERE Username
    = '$loginname' AND Password='$password'";
    geht soweit aber er lässt wieder alles durch.

    Ich habe php 4 steht auf jeden fall in der ini

    print_r($_POST); gibt mir folgendes aus
    Array ( [loginname] => foo [password] => lala [ok] => Anmelden )
    lala ist aber ein falsches PW also muss er ja abbrechen

    Array ( [loginname] => foo [password] => bar [ok] => Anmelden )
    ist richtig also muss er weiter machen!!!

    Marcus

    Einen Kommentar schreiben:


  • mrhappiness
    antwortet
    $suche="SELECT count(*) as OK FROM user WHERE Username
    = '$loginname' AND Password='$password'"; geht?

    $suche="SELECT count(*) as OK FROM user WHERE Username = '".$_POST['loginname']."' AND Password='".$_POST ['password']."'"; geht nicht?#


    wenn das so is, dann kennt dein php wahrscheinlich das array $_POST nich

    was für ne php-version hast?
    probier mal $HTTP_POST_VARS
    mach mal ein print_r($_POST); und poste was er ausgibt

    Einen Kommentar schreiben:


  • Toast
    antwortet
    ALSO ich meinte wenn ' rausnehme mag es myphpadmin.
    Also mit den direkten Variablen geht es soweit, das er mir wieder alles als richtig anerkennt. Also ich habe keine ahnung mehr woran das liegen könnte!!

    Marcus

    Einen Kommentar schreiben:


  • MelloPie
    antwortet
    Jedenfalls sind mal Spaces drin mal nicht...

    Mal:
    $suche="SELECT count(*) as OK FROM user WHERE Username = ' ".$_POST['loginname']."' AND Password=' ".$_POST ['password']."' ";

    Mal so:
    $suche="SELECT count(*) as OK FROM user WHERE Username = '".$_POST['loginname']."' AND Password='".$_POST ['password']."'";

    Einen Kommentar schreiben:


  • mrhappiness
    antwortet
    OffTopic:
    was du so alles siehst... ich glaub ich brauch ne brille

    Einen Kommentar schreiben:


  • MelloPie
    antwortet
    das kann amn sich ja nicht mehr mit ansehen

    Mach erst mal die Spaces in dem sql statement raus...
    zB Username = ' ".
    Dann leg mal hinter jeden mysql befehl ein or die(mysql_error());

    Wenn da nichts geworfen wird kannste wenigstens sicher sein dass dein sql überhaupt stimmt.

    Einen Kommentar schreiben:


  • mrhappiness
    antwortet
    er mag $_post nur wenn du es rausnimmst?

    muss ich das verstehen?

    was für ne version von php verwendest du?

    da $suche ja den richtigen wert zu haben schien, wenn du statt $_POST['loginname'] nur $loginname genommen hast, passe beide parameter wieder an ($loginname und $passwort) und probier nochmal

    mach mnal ein print_r($_POST]); was steht da?

    Einen Kommentar schreiben:


  • Toast
    antwortet
    also zu ersteinmal mag er das $_post nur dann wenn ich ' rausnehme!
    PHP-Code:
    $suche="SELECT count(*) as OK FROM user WHERE Username = [B]'[/B] ".$_POST['loginname']."[B]'[/B]  AND Password=[B]'[/B] ".$_POST ['password']."[B]'[/B] "
    rausnehme. ABer er bringt mir immer 0

    Marcus

    Einen Kommentar schreiben:


  • mrhappiness
    antwortet
    mach nochmal ein echo $suche, was steht da?

    kopier es nochmal und probier's in phpmyadmin

    evtl. mag er das $_POST nich

    Einen Kommentar schreiben:


  • Toast
    antwortet
    also wenns falsch ist, dann kömmt böses mensch genau
    aber auch wenn es richtig ist

    Die feldnamen passen auch!

    Einen Kommentar schreiben:


  • mrhappiness
    antwortet
    mach aus dem != wieder ein ==


    und wenn die kombination aus name und passwort falsch ist, steht Böses Mensch! auf dem bildschirm oder?

    und wenn die kombination richtig is, was is dann?

    stimmen die feldnamen im $_POST array?

    Einen Kommentar schreiben:


  • Toast
    antwortet
    PHP-Code:
    <?

        $server= mysql_connect("localhost", "", "");
        
        
        
    $suche="SELECT count(*) as OK FROM user WHERE Username = '".$_POST['loginname']."' AND Password='".$_POST ['password']."'";

    $result=mysql_db_query("game",$suche,$server);
    $row=mysql_fetch_array($result,MYSQL_FETCH_ASSOC);

        

    if ($row['OK']!=0)
      die('Böses Mensch!<p/>Erst anmelden!');
      ?>
    das ist der aktuelle code!

    Einen Kommentar schreiben:


  • mrhappiness
    antwortet
    hä?! bitte was?!

    poste mal den code so wie er jetzt aussieht.

    Original geschrieben von Toast
    außerdem muss ich aus == ein != machen
    hatte ich das oben (1. Antwort) nich so geschrieben?

    Das ändert aber nichts daran, dass ich in $row Array drin stehen habe anstatt 1 und 0.
    in $row ja, aber in $row['OK'] steht doch wohl kein array drin oder?

    Einen Kommentar schreiben:


  • Toast
    antwortet
    Das ändert aber nichts daran, dass ich in $row Array drin stehen habe anstatt 1 und 0. Ich habe das == ja schon ersetzt.

    Marcus

    Einen Kommentar schreiben:

Lädt...
X