Ankündigung

Einklappen
Keine Ankündigung bisher.

Hilfe gesucht für php Formlarüberprüfung

Einklappen

Neue Werbung 2019

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

  • Hilfe gesucht für php Formlarüberprüfung

    Hallo Gemeinde
    Bin php newbie und habe eine dringende Frage:

    1. Ich benötige ein Formular für eine Umfrage
    2. Für die Validierung habe ich eine Liste mit codes, die für die Registrierung vorgesehen sind und das Formular soll diese abgleichen. Ist der code vorhanden auf der liste (txt-liste) und/oder ist er bereits in die DB eingetragen

    Sieht für mich nach einer zweiseitigen überprüfung aus. ABer wie macht man sowas?

    Kann jemand helfen?

    Ich wär total froh.
    Vielen Dank.
    Pix

  • #2
    Für mich sieht das nach ner ganz normalen Formularverarbeitung aus. Bspw. mit Affenformular. Fang an und komm mit konkreten Fragen wieder.

    Kommentar


    • #3
      http://www.php.de/php-einsteiger/489...nsammlung.html <<< dort sind tutorials hinterlegt, die dir das schritt für schritt erklären. [man]file[/man]

      Kommentar


      • #4
        Ich gehe mal davon aus, dass Du schon ein Formular hast. Wenn Du dir hier ein Formular erhoffst, bist Du im "Hilfe gesucht Forum" falsch. Dafür gibt es hier eine Scriptbörse.

        Also angenommen Du hast dein Formular.
        Für den Code Vergleich mit einer .txt Datei hilft dir http://de.php.net/manual/de/function.file.php weiter.
        Also .txt Datei damit in ein Array laden und wenn immer nur ein Code pro Zeile steht, kannst Du mit in_array($geposteter_code, $code_array) prüfen, ob der Code gültig ist.
        Wenn nein, brauchst Du auch nicht mehr zu checken, ob der Code schonmal verwendet wurde.
        Wenn ja, checkst Du noch, ob der Code schonmal benutzt wurde. Dafür kannst Du eine SQL-Tabelle anlegen, wo einfach die benutzen Codes gespeichert werden.

        Wenn Du fürs Eintragen aber sowieso eine SQL-Tabelle hast, könntest Du auch auf die .txt Datei verzichten und die Codes in einer Tabelle ablegen und dann nur abhaken, ob benutzt oder nicht.

        Kommentar


        • #5
          Ja, Formular habe ich schon und eine gesamte DB dafür erstellt.

          Kommentar


          • #6
            und wo hast Du jetzt konkret Probleme?

            Kommentar


            • #7
              ich habe jetzt eine liste mit codes (nummernfolge) und möchte erstmal abfragen, ob die Nummer die im Formular eingegeben wird, auf dieser liste ist.
              Sofern vorhanden, kann man sich für eine Umfrageteilnahme anmelden.
              Wenn nicht vorhanden, kann man nicht teilnehmen.

              zweite abfrage/überprüfung wäre, ist die nummer auf der obengenannten liste bereits in die db eingetragen (dann hat sich jemand damit bereits registriert) und kann nicht mehr teilnehmen. Meldung:"Dieser Code wurde bereits registriert".

              Wenn ich die liste in die DB direkt eintrage, dann kann ich die zweite abfrage - meine Wissens - nicht mehr machen, oder sehe ich das falsch? Die Aller erst Formularabfrage sollte sein "Ihr Code: _________ - _________"

              Kommentar


              • #8
                Ja, das siehst Du falsch. Denn Du kannst die Codes in der Tabelle ja um ein Feld "benutzt" ergänzen, was entweder 0 ist, wenn der Code noch frei ist oder 1 ist, wenn der Code benutzt wurde. Dann kannst Du dir die .txt Datei wirklich sparen.

                Kommentar


                • #9
                  Das ist gut. Nur weiss ich als newbie (noch) nicht wie ich bewerkstelligen kann, dass die Felder korrekt abgefragt werden if 1 = Frei, elseif = nicht frei - so in der Art.
                  *grübelgrübel* - ich knortze noch dran rum...


                  ----------

                  Habe das Formular erstellt und geprüft wie die Datenbank-Tabelle ausschaut. Die Website mit Joomla 1.5 gebaut und ich verwende für das Formular die Komponente "Smart Former". Die Tabelle ist aus meiner unerfahrenen Sicht wirr:

                  Bild 1: Datenbank Felder



                  Bild 2: Tabelleninhalte


                  Kennt sich jemand mit "Smart Former" aus?

                  Vielen Dank.
                  Beste Grüsse
                  P.

                  Kommentar


                  • #10
                    Du solltest konkreter schildern wo deine Probleme sind bzw. mal ausführen was Du bisher gemacht hast und wo es hakt.

                    Du hast deine Tabelle "codes" mit Beispielwerten.
                    Code:
                    code  | benutzt
                    987654 | 1
                    123456 | 0
                    111111 | 0
                    222222 | 1
                    Jetzt gibt jemand seinen Code ins Formular ein.
                    Dann musst Du einfach nur ein Query nach dem Code absetzen und das Ergebnis prüfen.
                    Also beispielsweise so:
                    Code:
                    SELECT benutzt FROM codes WHERE code=$code LIMIT 1
                    ($code musst Du vorher natürlich vorbereiten)
                    Wenn beim Queryholen false zurückkommt, ist der Code nicht vorhanden.
                    Wenn benutzt===1 ist, wurde der Code schonmal benutzt.
                    Und wenn benutzt===0 ist, dann ist der Code frei und Du kannst fortfahren und setzt das benutzt-Feld am Ende auf 1.
                    Code:
                    UPDATE codes SET benutzt=1 WHERE code=$code LIMIT 1
                    *UPDATE*:
                    Ich habe gerade deine Aktualisierung gesehen.
                    Scheinbar hast Du ja überhaupt keine Ahnung von PHP und hast dir da mit Joomla irgendwas zusammengewurschtelt. So funktioniert das hier nicht. Das kannst Du gleich am Anfang mitteilen, dann kann man sich die Mühe sparen.

                    Kommentar

                    Lädt...
                    X