Ralf Wolf: Formular in 2 MySQL Datenbanken schreiben

Hallo,
ich habe ein Formular - die Inhalte des Formulars sollen nach dem Absenden in 2 MySQL Tabellen gespeichert werden.
In einer Tabelle immer
In die andere Tabelle nur wenn z.B. NEWS=ON ist.

Bekomme es leider nicht hin.
Wer hat eine Idee

DANKE
Ralf

  1. Hi,

    Bekomme es leider nicht hin.

    warum nicht?

    Cheatah

    --
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hi,

      Bekomme es leider nicht hin.

      warum nicht?

      Cheatah

      Wenn ich es wüsste - zur Ergänzung bisher sieht es so aus.
      In die Tabelle tbl1 wird alles wunderbar eingetragen in die tbl2 gar nichts

      <?
      $connect=mysql_connect($MySQL_Host, $MySQL_User, $MySQL_Passw);
      mysql_select_db($db, $connect);

      $eintrag = "INSERT INTO tbl1 (x1, x2) VALUES  ('$x1', '$x2')";
      $eintragNews = "INSERT INTO tbl2 WHERE $x2=ON (x1, x2) VALUES  ('$x1', '$x2')";

      mysql_query($eintrag) or die (mysql_error());
      mysql_query($eintragNews) or die (mysql_error());

      ?>

      1. Hi,

        In die Tabelle tbl1 wird alles wunderbar eingetragen in die tbl2 gar nichts
        $eintragNews = "INSERT INTO tbl2 WHERE $x2=ON (x1, x2) VALUES  ('$x1', '$x2')";

        naja, das Statement ist ja auch Unsinn. Wo um alles in der Welt hast Du die WHERE-Klausel her?

        Cheatah

        --
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
      2. Hallo Ralf

        Wenn ich es wüsste - zur Ergänzung bisher sieht es so aus.
        In die Tabelle tbl1 wird alles wunderbar eingetragen in die tbl2 gar nichts

        <?
        $connect=mysql_connect($MySQL_Host, $MySQL_User, $MySQL_Passw);
        mysql_select_db($db, $connect);

        $eintrag = "INSERT INTO tbl1 (x1, x2) VALUES  ('$x1', '$x2')";

        $eintragNews = "INSERT INTO tbl2 WHERE $x2=ON (x1, x2) VALUES  ('$x1', '$x2')";

        mysql_query($eintrag) or die (mysql_error());
        mysql_query($eintragNews) or die (mysql_error());

        Ich glaube du verwechselst jetzt Datenbank und Tabelle, in deinem Fall schreibst du nur in eine andere Tabelle.Eine Datenbank kann mehrere Tabellen haben.

        Und was dein Problem anbelangt, wenn du Zeichenkettenvergleiche machst, wie zb der hier:

        WHERE $x2=ON

        musst du die betreffende Zeichenkette immer unter Anführungszeichen setzen, sonnst geht da nichts.
        Wie ich das sehe, willst du einen Eintrag aktualisieren, das geht so wie du geschrieben hat leider nicht, anstatt dessen müsstest du schreiben

        $eintragNews = "UPDATE tbl2 SET x1 = "$x1",x2 = "$x2" WHERE $x2 = "ON"";

        Grüsse,
        Daniel

        1. Servus,

          soweit hast du absolut recht mit dem kleinen Schönheitsfehler, dass es bei einem Insert keine where Klausel gibt.
          Niemals wird es diese geben.
          Man kann sie zwar anbringen aber das bringt nicht`s

          Gruss Matze

          1. Hallo Matze

            soweit hast du absolut recht mit dem kleinen Schönheitsfehler, dass es bei einem Insert keine where Klausel gibt.
            Niemals wird es diese geben.
            Man kann sie zwar anbringen aber das bringt nicht`s

            Falls du den hier meinst:

            $eintragNews = "INSERT INTO tbl2 WHERE $x2=ON (x1, x2) VALUES  ('$x1', '$x2')";

            ..habe ich ihn wohl versehentlich "de"quotiert, das ist das Original von Rolf :)

            Gruss,
            Daniel

            1. DANKE an alle

              Werde einfach den Eintrag in beide Tabellen machen und dann überprüfen und gegebenfalls aus der Tabelle löschen

              1. Servus,

                warum den resignieren?

                Mit SQL kannst Du sowas gar nicht realisieren.
                Wenn Du die Einträge entsprechend dem Inhalt machen möchtest, dann musst Du:

                Das vorher untersuchen und je nachdem das eine oder andere oder beide SQL Statements ausführen.

                So klappt es.

                Gruss Matze

            2. Servus,

              Falls du den hier meinst:

              $eintragNews = "INSERT INTO tbl2 WHERE $x2=ON (x1, x2) VALUES  ('$x1', '$x2')";

              Keinen anderen habe ich gemeint. ;-))

              Gruss Matze

  2. Hello,

    ich habe ein Formular - die Inhalte des Formulars sollen nach dem Absenden in 2 MySQL Tabellen gespeichert werden.
    In einer Tabelle immer
    In die andere Tabelle nur wenn z.B. NEWS=ON ist.

    Was denn nun, in zwei Datenbanken und zwei Tabellen, oder nur in zwei Tabellen einer Datenbank?

    Grüße

    Tom