Datenbank auslesen

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

  • Datenbank auslesen

    Hallo,
    ich weiß nich ob das hier rein gehört.

    Wie kann ich unabhängig davon, ob der Username mit
    einem großen Buchstaben beginnt oder einen kleinen,
    bestimmen dass es sich um den Usernamen handelt,
    der in der Datenbank gespeichert ist OHNE id

    Es handelt sich um ein Script, welches keine ID in der Datenbank
    für den User erstellt.

    Mann muss exakt den Namen wie er in der datanbank steht
    angeben, sonst erkennt er den befehl nicht.

    Beispiel:
    Username ist: Susi
    Wenn man nun schreibt Susi wird der Befehl erkannt
    Schreibt man susi wird er leider nicht erkannt.


    Wenn ich das Feld ID hinzufügen will mit Primärschlüssel und co
    mekert er folgendes:

    #1068 - Multiple primary key defined


    gibts da eine lösung?

  • #2
    strtolower()

    Kommentar


    • #3
      Wenn ich das Feld ID hinzufügen will mit Primärschlüssel und co mekert er folgendes:

      #1068 - Multiple primary key defined

      gibts da eine lösung?
      Ja, erst eine spalte mit INT anlegen, dann ids eintragen (nicht überall 0) und dann erst den primary key + auto increment anlegen

      Kommentar


      • #4
        Ja, erst eine spalte mit INT anlegen, dann ids eintragen (nicht überall 0) und dann erst den primary key + auto increment anlegen
        also manuell die IDs der bereitsvorhanden User eintragen
        danach auf Auto & Primär umstellen?

        Kommentar


        • #5
          Original geschrieben von TobiaZ
          strtolower()
          Das wird nicht funktionieren,
          da die Usernamen ja mal mit einen großen Buchstaben ->
          mal mit einem kleinen Anfangen


          strtolower() macht ja alles klein soweit ich dass weiß

          Kommentar


          • #6
            strtolower() macht ja alles klein soweit ich dass weiß
            Verwende strtolower() für die Usereingabe und die MySql Funktion LOWER() um den Username der DB ebenfalls klein zu haben.
            PHP-Code:
            $sql "SELECT * FROM table WHERE LOWER(username)='".strtolower($_POST['username'])."'"
            Gruss

            tobi
            Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

            [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
            Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

            Kommentar


            • #7
              vielen dank werde es versuchen

              Kommentar


              • #8
                Hä?
                MySQL sucht NICHT case-sensitive.
                Code:
                SELECT "SUSI" = "susi" AS blubl
                ergibt 1 statt 0 wie z.B.
                Code:
                SELECT "SUSI" = "Franz" AS blubl
                Rumspielereien mit strtolower ist demnach überflüssig und kontraproduktiv, weil ein LOWER(username) die Nutzung eines jeden Indizes hinfällig macht...

                Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                Wie man Fragen richtig stellt

                Kommentar


                • #9
                  MySQL sucht NICHT case-sensitive.
                  Kommt meines wissens darauf an ob man "ci" oder "cs" verwendet.
                  Nur wenige wissen, wieviel man wissen muss, um zu wissen, wie wenig man weiß.

                  Kommentar

                  Lädt...
                  X