[MySQL 3.23.X] JOINS_Abfrage mit PHP

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

  • #16
    sind die feldnamen korrekt? und sind sie korrekt über die tabelle angesprochen?
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #17
      Ja, sind sie.

      Kommentar


      • #18
        Original geschrieben von WUZL

        Tabelle "rnummer":
        ID, rnummer, KID

        Tabelle "kunden":
        ID, PASS, Anrede, Name, eMail,...


        KID von "rnummer" und ID von "kunden" sind gleich.
        Ich möchte die rnummer auslesen und an die eMail verschicken.


        Jörg
        nimm mal bitte ", K.rnummer" aus dem statement raus (oder mach daraus ",R.rnummer").
        Kissolino.com

        Kommentar


        • #19
          You have an error in your SQL syntax near 'INNER JOIN rnummer R on(K.ID = R.KID) WHERE R.rnummer = 6' at line 1

          K.rnummer aus SELECT entfernt...

          Kommentar


          • #20
            ok, machen wir es uns mal einfach:
            PHP-Code:
            $sql "SELECT 
            K.*, R.* 
            FROM kunden K
            INNER JOIN 
            rnummer R on (K.ID = R.KID)
            WHERE R.rnummer = "
            .$rnr
            Kissolino.com

            Kommentar


            • #21
              You have an error in your SQL syntax near 'INNER JOIN rnummer R on (K.ID = R.KID) WHERE R.rnummer = 6' at line 1

              Die Antwort...
              Müssen die Felder in der Tabelle (ID, KID) irgendwie besonders sein?

              Kommentar


              • #22
                kannst du mal bitte einen dump deiner tabellen posten (phpMyAdmin)
                das sollte zB so aussehen:
                Code:
                CREATE TABLE schachtel (
                  id int(11) NOT NULL auto_increment,
                  menuid int(11) NOT NULL default '0',
                  ...
                  ...
                  PRIMARY KEY  (id)
                ) TYPE=MyISAM;
                Kissolino.com

                Kommentar


                • #23
                  Hab ich gemacht.
                  Hat neue tabelle erstellt - was wolltest Du jetzt da wissen?

                  Kommentar


                  • #24
                    *grmpf*
                    du solltest mit dem beispiel KEINE neue tabelle bei dir erstellen

                    ich will DEINE tabellen sehen. die ausgabe da oben ^^ war für dich als muster gedacht
                    Kissolino.com

                    Kommentar


                    • #25
                      Tschuldigung - aber wie mach ich einen "dump"?

                      Kommentar


                      • #26
                        phpmyadmin => datenbank auswählen => tabelle auswählen

                        auf der seite findest du im unteren teil einen punkt
                        (bei neueren versionen steht da "EXPORT" o.ä. als menüpunkt
                        Dump (Schema) der Tabelle anzeigen

                        - darunter ist eine tabelle mit check-/radioboxen
                        - nur "struktur" auswählen
                        - button "ok" anklicken
                        Kissolino.com

                        Kommentar


                        • #27
                          Code:
                          CREATE TABLE kunden (
                             ID int(11) unsigned DEFAULT '0' NOT NULL,
                             Datum datetime DEFAULT '0000-00-00 00:00:00' NOT NULL,
                             PASS varchar(15) NOT NULL,
                             Anrede varchar(4) NOT NULL,
                             Firma varchar(30) NOT NULL,
                             Name varchar(30) NOT NULL,
                             Vorname varchar(30) NOT NULL,
                             KName varchar(30) NOT NULL,
                             GebDatum varchar(10) NOT NULL,
                             Strasse varchar(50) NOT NULL,
                             StrasseNr varchar(7) NOT NULL,
                             PLZ mediumint(5) unsigned DEFAULT '0' NOT NULL,
                             Wohnort varchar(50) NOT NULL,
                             Telefon varchar(30) NOT NULL,
                             Telefax varchar(30) NOT NULL,
                             eMail varchar(50) NOT NULL,
                             Homepage varchar(50) NOT NULL,
                             Referenz varchar(40) NOT NULL,
                             UNIQUE dopp (Name, Vorname, GebDatum)
                          );
                          
                          
                          CREATE TABLE rnummer (
                             ID int(11) DEFAULT '0' NOT NULL auto_increment,
                             rnummer int(11) DEFAULT '0' NOT NULL,
                             KID int(11) DEFAULT '0' NOT NULL,
                             PRIMARY KEY (ID),
                             UNIQUE rnummer (rnummer)
                          );
                          DANKE!


                          EDIT:
                          code.tags by Abraxax
                          Zuletzt geändert von Abraxax; 04.09.2003, 13:34.

                          Kommentar


                          • #28
                            hmm irgendwie kommen "_" in die syntax. hab das ganze mal getestet:

                            sql:
                            Code:
                            $sql = "SELECT K.*, R.* FROM kunden K INNER JOIN rnummer R on (K.ID = R.KID) WHERE R.rnummer = ".$rnr." ";
                            die tabellen (etwas geändert in kunden)
                            Code:
                            CREATE TABLE kunden (
                              ID int(11) NOT NULL auto_increment,
                              Datum datetime NOT NULL default '0000-00-00 00:00:00',
                              PASS varchar(15) NOT NULL default '',
                              Anrede varchar(4) NOT NULL default '',
                              Firma varchar(30) NOT NULL default '',
                              Name varchar(30) NOT NULL default '',
                              Vorname varchar(30) NOT NULL default '',
                              KName varchar(30) NOT NULL default '',
                              GebDatum varchar(10) NOT NULL default '',
                              Strasse varchar(50) NOT NULL default '',
                              StrasseNr varchar(7) NOT NULL default '',
                              PLZ mediumint(5) NOT NULL default '0',
                              Wohnort varchar(50) NOT NULL default '',
                              Telefon varchar(30) NOT NULL default '',
                              Telefax varchar(30) NOT NULL default '',
                              eMail varchar(50) NOT NULL default '',
                              Homepage varchar(50) NOT NULL default '',
                              Referenz varchar(40) NOT NULL default '',
                              PRIMARY KEY  (ID)
                            ) TYPE=MyISAM;
                            
                            CREATE TABLE rnummer (
                              ID int(11) NOT NULL auto_increment,
                              rnummer int(11) NOT NULL default '0',
                              KID int(11) NOT NULL default '0',
                              PRIMARY KEY  (ID),
                              UNIQUE KEY rnummer (rnummer)
                            ) TYPE=MyISAM;
                            es läuft so fehlerfrei (bei mir). wie gesagt, achte darauf, dass sich in die syntax
                            keine "_" einschleichen.
                            Kissolino.com

                            Kommentar


                            • #29
                              You have an error in your SQL syntax near 'INNER JOIN rnummer R on (K.ID = R.KID) WHERE R.rnummer = 6 ' at line 1

                              Sollte ich vielleicht auch die kunden-Tabelle ändern? Was hast Du denn geändert - ich seh nix...

                              Kommentar


                              • #30
                                Code:
                                # meine tabelle
                                CREATE TABLE kunden (
                                  ID int(11) NOT NULL auto_increment,
                                ...
                                  PRIMARY KEY  (ID)
                                ) TYPE=MyISAM;
                                
                                # deine tabelle
                                CREATE TABLE kunden (
                                   ID int(11) unsigned DEFAULT '0' NOT NULL,
                                ...
                                   UNIQUE dopp (Name, Vorname, GebDatum)
                                );
                                hier sind die abweichenden zeilen

                                du hast bei phpMyAdmin auch die möglichkeit, eine abfrage direkt abzusetzen.
                                über dem eingabefeld steht "SQL Befehl(e) ausführen ..."
                                da gibst du nur zum test mal
                                Code:
                                SELECT K.*, R.* FROM kunden K INNER JOIN rnummer R on (K.ID = R.KID) WHERE R.rnummer = 6
                                ein und klickst auf OK

                                noch was: dein plz-feld solltest du nicht als "mediumint" definieren sondern als "varchar". plz aus dem osten sind sonst nur 4-stellig durch die 0 am anfang.
                                Kissolino.com

                                Kommentar

                                Lädt...
                                X