Dennis: SQL und Formulare

Hallo!

Hab da so ein paar Fragen:

1. Wo liegt der Unterschied zwischen SQL und MySQL? Gibt es überhautpt einen?
2. Wie kann man feststellen, ob der eigenen Server SQL unterstützt?
3. Ich möchte, dass ein Formular auf meiner HP nur dann, abgeschickt werden kann, wenn in einem bestimmen Feld einer von 15 festgelegten Werten steht. Wie geht das? Kann man da was mit SQL machen?
4. Kann man (severseitig) einzelne von den 15 festgelegten Werten löschen, nachdem diese eimal verwendet wurden?

MfG, Dennis.

--
Auf Signaturen hab ich keinen Bock!!
  1. Hi,

    1. Wo liegt der Unterschied zwischen SQL und MySQL? Gibt es überhautpt einen?

    SQL ist eine Sprache, MySQL ein Produkt (welches einen speziellen Dialekt dieser Sprache spricht).

    1. Wie kann man feststellen, ob der eigenen Server SQL unterstützt?

    Falls Du einen HTTP-Server meinst: Der unterstützt kein SQL. Sowas beherrscht nur ein SQL-Server, ein DBMS; also beispielsweise MySQL, MS-SQL, Oracle, PostgreSQL usw.

    1. Ich möchte, dass ein Formular auf meiner HP nur dann, abgeschickt werden kann, wenn in einem bestimmen Feld einer von 15 festgelegten Werten steht. Wie geht das? Kann man da was mit SQL machen?

    Das _Abschicken_ des Formulars ist eine clientseitige Aktion und kann daher ausschließlich mit clientseitigen Techniken unterbunden werden - welche Du niemals voraussetzen darfst. Die Formulardaten _abzulehnen_ ist etwas, das (HTTP-)serverseitig passieren kann und muss. Dies sollte geschehen, _bevor_ SQL ins Spiel kommt.

    1. Kann man (severseitig) einzelne von den 15 festgelegten Werten löschen, nachdem diese eimal verwendet wurden?

    Natürlich.

    Cheatah

    --
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hallo!

      1. Ich möchte, dass ein Formular auf meiner HP nur dann, abgeschickt werden kann, wenn in einem bestimmen Feld einer von 15 festgelegten Werten steht. Wie geht das? Kann man da was mit SQL machen?

      Das _Abschicken_ des Formulars ist eine clientseitige Aktion und kann daher ausschließlich mit clientseitigen Techniken unterbunden werden - welche Du niemals voraussetzen darfst. Die Formulardaten _abzulehnen_ ist etwas, das (HTTP-)serverseitig passieren kann und muss. Dies sollte geschehen, _bevor_ SQL ins Spiel kommt.

      Und wie geht das zum Beispiel?

      1. Kann man (severseitig) einzelne von den 15 festgelegten Werten löschen, nachdem diese eimal verwendet wurden?

      Natürlich.

      Und wie geht _das_?

      MfG, Dennis.

      --
      Auf Signaturen hab ich keinen Bock!!
      1. Hi,

        Die Formulardaten _abzulehnen_ ist etwas, das (HTTP-)serverseitig passieren kann und muss. Dies sollte geschehen, _bevor_ SQL ins Spiel kommt.
        Und wie geht das zum Beispiel?

        mit "if", zum Beispiel. Du alleine weißt, welche Bedingungen eine Rolle spielen.

        1. Kann man (severseitig) einzelne von den 15 festgelegten Werten löschen, nachdem diese eimal verwendet wurden?
          Natürlich.
          Und wie geht _das_?

        Indem Du ein entsprechendes SQL-Statement formulierst, welches die Daten beim Zusammentreffen der entsprechenden Bedingungen entsprechend verändert. Möchtest Du Dich nicht zunächst mit den Grundlagen beschäftigen?

        Cheatah

        --
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
      1. Ich möchte, dass ein Formular auf meiner HP nur dann, abgeschickt werden kann, wenn in einem bestimmen Feld einer von 15 festgelegten Werten steht. Wie geht das? Kann man da was mit SQL machen?

      Das _Abschicken_ des Formulars ist eine clientseitige Aktion und kann daher ausschließlich mit clientseitigen Techniken unterbunden werden - welche Du niemals voraussetzen darfst. Die Formulardaten _abzulehnen_ ist etwas, das (HTTP-)serverseitig passieren kann und muss. Dies sollte geschehen, _bevor_ SQL ins Spiel kommt.

      ---

      Dies kann doch aber auch geschehen indem ueber php und sql die Werte in den Feldern mit Werten in der Datenbank verglichen werden, oder hab ich da was falls verstanden... und das waere dann nicht mehr clientseitig.

      1. Moin!

        1. Ich möchte, dass ein Formular auf meiner HP nur dann, abgeschickt werden kann, wenn in einem bestimmen Feld einer von 15 festgelegten Werten steht. Wie geht das? Kann man da was mit SQL machen?

        Das _Abschicken_ des Formulars ist eine clientseitige Aktion und kann daher ausschließlich mit clientseitigen Techniken unterbunden werden - welche Du niemals voraussetzen darfst. Die Formulardaten _abzulehnen_ ist etwas, das (HTTP-)serverseitig passieren kann und muss. Dies sollte geschehen, _bevor_ SQL ins Spiel kommt.


        Dies kann doch aber auch geschehen indem ueber php und sql die Werte in den Feldern mit Werten in der Datenbank verglichen werden, oder hab ich da was falls verstanden... und das waere dann nicht mehr clientseitig.

        Wenn PHP Werte vergleicht, dann IST das Formular bereits abgeschickt. Vergleiche die Originalforderung: "...nur dann abgeschickt werden kann, wenn..."

        - Sven Rautenberg

        --
        "Habe den Mut, dich deines eigenen Verstandes zu bedienen!" (Immanuel Kant)
        1. Dies kann doch aber auch geschehen indem ueber php und sql die Werte in den Feldern mit Werten in der Datenbank verglichen werden, oder hab ich da was falls verstanden... und das waere dann nicht mehr clientseitig.

          Wenn PHP Werte vergleicht, dann IST das Formular bereits abgeschickt. Vergleiche die Originalforderung: "...nur dann abgeschickt werden kann, wenn..."

          - Sven Rautenberg

          Achso ok das wusste ich nicht. Fuer mich ist abschicken erst wenn die Daten dann in der Datenbank eigetragen sind oder die email abgeschickt ist.

  2. Hallo,

    1. Wo liegt der Unterschied zwischen SQL und MySQL? Gibt es überhautpt einen?

    Ja.

    SQL ist der Oberbegriff.

    MySQL ist ein "Sonderfall" und ein spezieller Datenbank-Server
    mit z.T. eigener Syntax.

    http://www.mysql.com/doc/en/Differences_from_ANSI.html

    1. Wie kann man feststellen, ob der eigenen Server SQL unterstützt?

    Lies den Vertrag mit Deinem Hosting-Provider.
    Oder die Leistungsbeschreibung Deines Pakets.

    Wenn Du eine (oder mehrere) DB zur Verfuegung hast,
    dann hat Dir der Webhost vermutlich im "Willkommens-Mail"
    die dazu notwendigen Angaben (Server-Name, Kennwort u.s.w.)
    mitgeteilt.

    1. Ich möchte, dass ein Formular auf meiner HP nur dann, abgeschickt werden kann, wenn in einem bestimmen Feld einer von 15 festgelegten Werten steht. Wie geht das? Kann man da was mit SQL machen?

    Man kann zwar festlegen, dass ein Feld nur gewisse Werte
    enthalten darf (in MySQL mit den Typen: ENUM, SET).

    Die Werte aus dem Formular sind aber grundsaetzlich
    mit der Skriptsprache, z.B. PHP, zu ueberpruefen,
    bevor man sie in die DB schreibt.

    1. Kann man (severseitig) einzelne von den 15 festgelegten Werten löschen, nachdem diese eimal verwendet wurden?

    Wo willst Du was loeschen?
    Bitte beschreibe Dein Vorhaben genauer.

    Gruesse,

    Thomas

    --
    Bitte keine Mails mit Fachfragen - dafuer gibt es das Forum!
    Ich mag es, wenn URLs verlinkt sind (</faq/#Q-19>).
    Oft gestellte PHP-Fragen beantwortet die dclp-FAQ bestens: http://www.dclp-faq.de/
    1. Hallo!

      Wo willst Du was loeschen?
      Bitte beschreibe Dein Vorhaben genauer.

      ich habe auch meiner Homepage ein Formular für eine Umfrage. Dieses ist auf einer spieziellen Unterseite, auf die man nur durch den direkten Pfad kommt.
      Nun möchte ich, dass in dem Feld <input type="text" name="mein_name" ...> der vom User eigegebene Name serverseitig gespeichert wird. Wenn später nochmal jemand kommt, und mit demselben Namen ein Formular abschicken will, soll lediglich eine Fehlermeldung kommen, ein Abschicken soll nicht möglich sein.

      MfG, Dennis.

      --
      Auf Signaturen hab ich keinen Bock!!
      1. Hallo,

        Wenn später nochmal jemand kommt, und mit demselben Namen ein Formular abschicken will, soll lediglich eine Fehlermeldung kommen, ein Abschicken soll nicht möglich sein.

        Das hat nichts mit "Loeschen" zu tun, wie Du urspruenglich
        geschrieben hast.

        Das Skript, welches das Formular verarbeitet, sollte
        in der Datenbank nachschauen, ob es schon einen
        Eintrag hat, bei dem in der entsprechenden Spalte
        der Name aus dem Formular vorkommt.
        Wenn ja, sollte es die Weiterverarbeitung verweigern,
        z.B. mit den Worten
        "Eine Person mit diesem Namen hat bereits abgestimmt"
        und den Benutzer zum Formular zurueckschicken bzw.
        das Formular gleich wieder anzeigen.
        Das Prinzip des "Affenformulars" am Beispiel von PHP:
        http://www.dclp-faq.de/q/q-stil-normalform.html

        Wenn Du sowieso Passwortschutz hast, kannst Du statt
        mit dem (leicht faelschbaren) Namen aus dem Formular
        auch gleich mit dem Login-Namen arbeiten, mit welchem
        sich der Benutzer authentifiziert hat.
        In PHP ist das die Variable $_SERVER["REMOTE_USER"],
        in anderen Skriptsprachen z.B. $REMOTE_USER

        Gruesse,

        Thomas

        --
        Bitte keine Mails mit Fachfragen - dafuer gibt es das Forum!
        Ich mag es, wenn URLs verlinkt sind (</faq/#Q-19>).
        Oft gestellte PHP-Fragen beantwortet die dclp-FAQ bestens: http://www.dclp-faq.de/
    2. yo.

      1. Wo liegt der Unterschied zwischen SQL und MySQL? Gibt es überhautpt einen?
        Ja.
        SQL ist der Oberbegriff.

      mysql ist ein dbms (datenbankmanagmentsystem)und sql ist eine nach ansi standardatisierte sprache, um mit dem dbms zu "kommunizieren". viele dbms untersützen die sql sprache, allerdings fast immer mit abweichungen und eigenen dialekten.

      Ilja