phpmyadmin bricht mit Fehlermeldung ab

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

  • phpmyadmin bricht mit Fehlermeldung ab

    Hallo Board,

    folgende Abfrage gibt mir im Skript doppelte Artikelnummern aus. Verstehe nicht warum. Im Skript läuft sie jedoch wenigstens. Um herauszufinden wie die Datensätze aussehen, habe ich versucht den String in phpmyadmin auszuführen. phpmyadmin bricht immer mit der Fehlermeldung:

    SQL:QUERY:

    S

    MySQL said: Documentation
    #1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'S' at line 1
    ab. Warum ?


    PHP-Code:
    SELECT 
    t1
    .name AS artikelbezeichnungt1.category,
    t3.description AS artikelbeschreibung,
    CONCAT(t4.anz_vpe' x 't4.vpe' 't4.massverpackungsinhalt,
    t2.artikelnummer AS herstellernummer,
    CONCAT('http://www.ourdomain.de/images/shop/products/'t6.pictureS artikelbild,
    CONCAT('http://www.ourdomain.de/images/shop/products/',
    REPLACE(t6.picture'.jpg''-t.jpg')) AS artikelbildklein,
    t7.keywords AS suchtext,
    t4.ab1 AS empfendverbrauchpreis,
    t8.zolltarifnr AS zolltarifnummer,
    t4.ab1 ab1,
    t4.ab4 ab4,
    t4.ab6 ab6,
    t4.ab4 ab12
    FROM products t1
    INNER JOIN lnk_product_item 
    AS t2 ON (t1.pid t2.pid)
    INNER JOIN artikeldetails AS t3 ON (t2.artikelnummer t3.artikelnummer)
    INNER JOIN bestellinfo AS t4 ON (t3.artikelnummer t4.artikelnummer)
    INNER JOIN lnk_item_pic AS t5 ON (t4.id t5.id_artikelnummer)
    INNER JOIN picture AS t6 ON (t5.id_bild t6.id_pic)
    INNER JOIN productinfo AS t7 ON (t1.pid t7.pid)
    INNER JOIN products_hyrachie AS t8 ON (t1.category t8.cat_id)
    WHERE  t3.lang 'de'"); 
    Zuletzt geändert von antman; 07.01.2005, 14:03.
    Pickel ? Übergewicht ? Depressionen ?
    Brot, Kartoffeln und Milch sind Gift!
    http://www.paleofood.de

  • #2
    lass mal "); am ende weg

    irgendwo hast du ein S stehen. aber wo?
    Check for the right syntax to use near 'S' at line 1
    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


    • #3
      was genau hast du bei myadmin eingegeben?

      Kommentar


      • #4
        irgendwo hast du ein S stehen. aber wo?
        ganz viele!

        aber wenn er den php-code am ende weg-lässt, klappts. nur bekomme ich ne andere fehlermeldung, wenn ich die komplette "query" eingebe...

        Und code umbrechen!

        Kommentar


        • #5
          Danke. Es lag wirklich am php Code am Ende des Strings.
          Auf so etwas achtet man wirklich nicht bei der Fehlersuche.

          Danke
          Pickel ? Übergewicht ? Depressionen ?
          Brot, Kartoffeln und Milch sind Gift!
          http://www.paleofood.de

          Kommentar


          • #6
            Aber ich bekomme tatsächlich 6 mal für jeden Artikel die gleiche Artikelnummer. Woran kann das liegen? Ist etwas offensichtlich falsch an den JOINS ?
            Pickel ? Übergewicht ? Depressionen ?
            Brot, Kartoffeln und Milch sind Gift!
            http://www.paleofood.de

            Kommentar


            • #7
              guck dir mal DISTINCT an.

              BTW:
              phpmyadmin bricht mit Fehlermeldung ab
              das sollte dein PHP-Code auch. oder bist du kein vernünftiger Programmierer?

              Kommentar


              • #8
                DISTINCT habe ich schon ausprobiert. Dann bekomme ich immer noch 2x die gleiche artikelnummer.

                Hier mal die Tabellen.

                products t1
                --------------
                pid | category | name | since | datenblatt

                lnk_product_item t2
                -------------------
                id | pid | artikelnummer

                artikeldetails t3
                -----------------
                artikel_index | artikelnummer | lang | description

                bestellinfo t4
                --------------
                id | artikelnummer | anz_vpe |vpe | mass | ab1 | ab4 | ab 6 | ab12

                lnk_item_pic t5
                ---------------
                id_artikelnummer | id_bild

                picture t6
                ----------
                id_pic | picture

                productinfo t7
                --------------
                lang | pid | produktbeschreibung | produkttyp | keywords

                produkt_hyrachie t8
                --------------------
                cat_id | cat_id_parent | de | en | es | it |nl |el | zolltarifnr
                Pickel ? Übergewicht ? Depressionen ?
                Brot, Kartoffeln und Milch sind Gift!
                http://www.paleofood.de

                Kommentar


                • #9
                  poste die ergebnisse der abfrage mal bitte

                  OffTopic:
                  es heißt hierarchie und nicht hyrarchie
                  Ich denke, also bin ich. - Einige sind trotzdem...

                  Kommentar


                  • #10
                    und brich die kacke endlich um!

                    Kommentar


                    • #11
                      GROUP BY könnte sicher auch nicht schaden

                      Es kommt nicht darauf an, mit dem Kopf durch den Monitor zu rennen,
                      sondern mit den Augen das Manual zu lesen.

                      Kommentar


                      • #12
                        Array
                        (
                        [0] => Array
                        (
                        [artikelnummer] => 10201
                        [artikelbezeichnung] =>
                        [category] =>
                        [artikelbeschreibung] =>
                        [verpackungsinhalt] =>
                        [herstellernummer] =>
                        [artikelbild] =>
                        [artikelbildklein] =>
                        [suchtext] =>
                        [empfendverbrauchpreis] =>
                        [zolltarifnummer] =>
                        [ab1] =>
                        [ab4] =>
                        [ab6] =>
                        [ab12] =>
                        )

                        [1] => Array
                        (
                        [artikelnummer] => 10201
                        [artikelbezeichnung] =>
                        [category] =>
                        [artikelbeschreibung] =>
                        [verpackungsinhalt] =>
                        [herstellernummer] =>
                        [artikelbild] =>
                        [artikelbildklein] =>
                        [suchtext] =>
                        [empfendverbrauchpreis] =>
                        [zolltarifnummer] =>
                        [ab1] =>
                        [ab4] =>
                        [ab6] =>
                        [ab12] =>
                        )

                        etc

                        Der einzige Unterschied ist, dass bei dem einen Satz der Suchtext ausgefüllt ist und bei dem anderen nicht. Deswegen greift das DISTINCT nicht und lässt immer noch 2 Zeilen mit der gleichen Artikelnummer übrig.
                        Zuletzt geändert von antman; 07.01.2005, 14:28.
                        Pickel ? Übergewicht ? Depressionen ?
                        Brot, Kartoffeln und Milch sind Gift!
                        http://www.paleofood.de

                        Kommentar


                        • #13
                          Hallo Board,

                          komme einfach nicht weiter.
                          Es werden immer noch (selbst mit distinct) 2x die Artikelnummern ausgegeben. Könnte da mal jemand bitte drüberschauen?

                          -- Table structure for table `artikeldetails`
                          --

                          CREATE TABLE `artikeldetails` (
                          `artikel_index` int(3) unsigned NOT NULL auto_increment,
                          `artikelnummer` mediumint(9) NOT NULL default '0',
                          `lang` char(2) NOT NULL default '',
                          `description` tinytext NOT NULL,
                          PRIMARY KEY (`artikelnummer`,`lang`),
                          KEY `artikel_index` (`artikel_index`)
                          ) TYPE=MyISAM AUTO_INCREMENT=1291 ;

                          -- --------------------------------------------------------

                          --
                          -- Table structure for table `bestellinfo`
                          --

                          CREATE TABLE `bestellinfo` (
                          `id` int(11) NOT NULL auto_increment,
                          `artikelnummer` int(3) unsigned NOT NULL default '0',
                          `anz_vpe` tinyint(3) unsigned NOT NULL default '0',
                          `vpe` float NOT NULL default '0',
                          `mass` char(2) NOT NULL default '',
                          `ab1` float NOT NULL default '0',
                          `ab4` float NOT NULL default '0',
                          `ab6` float NOT NULL default '0',
                          `ab12` float NOT NULL default '0',
                          KEY `id` (`id`)
                          ) TYPE=MyISAM AUTO_INCREMENT=317 ;

                          -- --------------------------------------------------------

                          --
                          -- Table structure for table `lnk_item_pic`
                          --

                          CREATE TABLE `lnk_item_pic` (
                          `id_artikelnummer` int(11) NOT NULL default '0',
                          `id_bild` int(11) NOT NULL default '0'
                          ) TYPE=MyISAM;

                          -- --------------------------------------------------------

                          --
                          -- Table structure for table `lnk_product_item`
                          --

                          CREATE TABLE `lnk_product_item` (
                          `id` int(11) NOT NULL auto_increment,
                          `pid` tinyint(4) NOT NULL default '0',
                          `artikelnummer` int(3) unsigned NOT NULL default '0',
                          KEY `id` (`id`)
                          ) TYPE=MyISAM AUTO_INCREMENT=318 ;

                          -- --------------------------------------------------------

                          --
                          -- Table structure for table `picture`
                          --

                          CREATE TABLE `picture` (
                          `id_pic` int(11) NOT NULL auto_increment,
                          `picture` varchar(50) NOT NULL default '',
                          KEY `id` (`id_pic`)
                          ) TYPE=MyISAM AUTO_INCREMENT=135 ;

                          -- --------------------------------------------------------

                          --
                          -- Table structure for table `productinfo`
                          --

                          CREATE TABLE `productinfo` (
                          `lang` char(2) NOT NULL default '',
                          `pid` int(11) NOT NULL default '0',
                          `produktbeschreibung` text NOT NULL,
                          `produkttyp` tinytext NOT NULL,
                          `keywords` text NOT NULL,
                          PRIMARY KEY (`pid`,`lang`),
                          FULLTEXT KEY `d_produktbeschreibung` (`produktbeschreibung`,`produkttyp`)
                          ) TYPE=MyISAM;

                          -- --------------------------------------------------------

                          --
                          -- Table structure for table `products`
                          --

                          CREATE TABLE `products` (
                          `pid` int(11) NOT NULL auto_increment,
                          `category` tinyint(4) NOT NULL default '0',
                          `name` varchar(70) NOT NULL default '',
                          `since` year(4) default NULL,
                          `datenblatt` char(1) NOT NULL default 'y',
                          PRIMARY KEY (`pid`),
                          KEY `id` (`pid`)
                          ) TYPE=MyISAM AUTO_INCREMENT=62 ;

                          -- --------------------------------------------------------

                          --
                          -- Table structure for table `products_hyrachie`
                          --

                          CREATE TABLE `products_hyrachie` (
                          `cat_id` mediumint(3) unsigned NOT NULL default '0',
                          `cat_id_parent` smallint(6) NOT NULL default '0',
                          `de` tinytext,
                          `en` tinytext,
                          `es` tinytext,
                          `it` tinytext,
                          `nl` tinytext,
                          `el` tinytext,
                          `zolltarifnr` bigint(11) NOT NULL default '0'
                          ) TYPE=MyISAM;

                          Der Query befindet sich ein paar posts weiter oben.
                          Pickel ? Übergewicht ? Depressionen ?
                          Brot, Kartoffeln und Milch sind Gift!
                          http://www.paleofood.de

                          Kommentar


                          • #14
                            Les den Suchtext doch nicht mit aus
                            Ich denke, also bin ich. - Einige sind trotzdem...

                            Kommentar


                            • #15
                              Hallo Mr happiness,

                              den Suchtext brauche ich doch aber,

                              Guck mal, so müsste es doch wirklich klappen:

                              PHP-Code:
                              SELECT DISTINCT t4.artikelnummer
                              t1.name artikelbezeichnungt1.category,
                              t3.description artikelbeschreibung,
                              CONCAT(t4.anz_vpe' x 't4.vpe' 't4.massverpackungsinhalt,
                              t2.artikelnummer herstellernummer,
                              CONCAT('http://www.ourdomain.de/images/shop/products/',
                               
                              t6.pictureartikelbild,
                              CONCAT('http://www.ourdomain.de/images/shop/products/',
                              REPLACE(t6.picture'.jpg''-t.jpg')) artikelbildklein,
                              t7.keywords suchtext,
                              t4.ab1 empfendverbrauchpreis,
                              t8.zolltarifnr zolltarifnummer,
                              t4.ab1 ab1,
                              t4.ab4 ab4,
                              t4.ab6 ab6,
                              t4.ab4 ab12
                              FROM bestellinfo t4
                              lnk_item_pic t5products t1
                                        
                              lnk_product_item t2
                              INNER JOIN artikeldetails t3 ON 
                              (t4.artikelnummer t3.artikelnummer)
                              INNER JOIN picture t6 ON (t5.id_bild t6.id_pic)
                              INNER JOIN productinfo t7 ON (t1.pid t7.pid)
                              INNER JOIN products_hyrachie t8 ON (t1.category t8.cat_id)
                              WHERE  t3.lang 'de'
                              AND t4.id t5.id_artikelnummer
                              AND t2.artikelnummer t4.artikelnummer
                              AND t2.pid t1.pid 
                              Tut es aber nicht. Mir unerklärlich. Bekomme so immer noch 2 identische Zeilen bis auf den Suchtext. Und ohne "DISTINCT" sogar 6 mal. Normalerweise benötigt der doch gar kein "DISTINCT" in diesem Fall.

                              Könnte es damit zusammenhängen, dass eine Artikelnummer mehrere Bilder haben kann? Bin verwirrt. Aaaaaaaarhhg
                              Zuletzt geändert von antman; 12.01.2005, 13:30.
                              Pickel ? Übergewicht ? Depressionen ?
                              Brot, Kartoffeln und Milch sind Gift!
                              http://www.paleofood.de

                              Kommentar

                              Lädt...
                              X