SQL Query für Kategorie

Thema wurde von Anonymous, 16. Juli 2016 erstellt.

  1. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    17. Juni 2013
    Beiträge:
    246
    Danke erhalten:
    21
    Danke vergeben:
    35
    Hallo,

    ich benötige eine SQL-Abfrage, um die Shop-URL eines Artikels (Produktinfo-Seite) auszulesen.

    Kann mir da jemand helfen ?

    Version 3
     
  2. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    19. Juni 2012
    Beiträge:
    4.831
    Danke erhalten:
    1.122
    Danke vergeben:
    947
    Die steht nicht in der Datenbank. Was hast du vor?
     
  3. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    17. Juni 2013
    Beiträge:
    246
    Danke erhalten:
    21
    Danke vergeben:
    35
    Und was mit der Tabelle categories ?
     
  4. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    17. Juni 2013
    Beiträge:
    246
    Danke erhalten:
    21
    Danke vergeben:
    35
    Ich habe ein Problem mit der parent_id...
    Irgendwie stehe ich da auf dem Schlauch, wie man per SQL rekursiv den kompletten Kategoriepfad auslesen kann.
     
  5. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    19. Juni 2012
    Beiträge:
    4.831
    Danke erhalten:
    1.122
    Danke vergeben:
    947
    Wie geagt - geht nicht! Die URL steht nicht in der Datenbank, sondern wird beim Aufruf generiert oder aus dem Cache geholt. Frage daher nochmal: Was hast du vor? Vielleicht kann man dir anderweitig helfen...
     
  6. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    19. Juni 2012
    Beiträge:
    4.831
    Danke erhalten:
    1.122
    Danke vergeben:
    947
    Du kannst dir die url keywords per SQL aus der DB ziehen, hast dann aber immer noch nicht die URL. Du kannst auch auf die Gambio-eigenen Funktionen zur URL-Generierung zurückgreifen. Oder du kannst ihn mit
    $_SERVER['PHP_SELF'] ausgeben. Wenn du sagst, was dein Ziel ist, kann dir bestimmt geholfen werden.
     
  7. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    17. Juni 2013
    Beiträge:
    246
    Danke erhalten:
    21
    Danke vergeben:
    35
    #7 Anonymous, 16. Juli 2016
    Zuletzt bearbeitet: 16. Juli 2016
    PHP hilft mir hier nicht so ganz weiter... Ich wollte ein kleines Progrämmchen in .NET für unsere Backend-DB schreiben, um einen Cronjob für eine Preissuchmaschine zu erstellen. Magnalister hat für diese Preissuchmaschine noch keine Schnittstelle. Laut Schnittstellenspezifikation für die CSV-Datei ist die Shop-URL eines Artikels ein Pflichtfeld (sinnigerweise).

    Die Backend-Tabelle entspricht weitestgehend der Tabelle categories von Gambio.
     
  8. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.452
    Danke erhalten:
    11.255
    Danke vergeben:
    1.606
    Hast Du Dir schon mal die CSV-Export-Seite angesehen?
    da gibt es verschiedene Vorlagen für diverse Preisportale, eventuell ist das Gesuchte dabei, oder zumindest ein ähnlich.dann brauchst Du das nur anpassen.
     
  9. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    17. Juni 2013
    Beiträge:
    246
    Danke erhalten:
    21
    Danke vergeben:
    35
    das ist ja geil ;)
     
  10. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    19. Juni 2012
    Beiträge:
    4.831
    Danke erhalten:
    1.122
    Danke vergeben:
    947
    Genau, Export => Artikelexport mit neuer Vorlage, oder du verwendest die Gambio XML Api (Link nur für registrierte Nutzer sichtbar.) oder du bastelst ein eigenes Script. Vermutlich könntest du was mit der xtc_href_link() anfangen, wie sie auch in der includes/application_top.php verwendet wird:

    xtc_href_link($gmSEOBoost->get_boosted_product_url($product->data['products_id'], $product->data['products_name'], $t_language_id));
     
  11. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    17. Juni 2013
    Beiträge:
    246
    Danke erhalten:
    21
    Danke vergeben:
    35
    #11 Anonymous, 16. Juli 2016
    Zuletzt bearbeitet: 17. Juli 2016
    Dein Tip ist jedenfalls sehr hilfreich gewesen...
     
  12. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    17. Juni 2013
    Beiträge:
    246
    Danke erhalten:
    21
    Danke vergeben:
    35
    Barbara, ich habe eine neue Vorlage erstellt und auch einen Cronjob bei unserem Webhoster erzeugt.
    Die Exportdatei wird aber nicht aktualisiert...

    Es erscheint nur immer so einer Eieruhr.
     

    Anhänge:

  13. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.452
    Danke erhalten:
    11.255
    Danke vergeben:
    1.606
    Wie sind denn die Einstellungen in der Vorlage?
    Unbenannt.JPG
     
  14. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    17. Juni 2013
    Beiträge:
    246
    Danke erhalten:
    21
    Danke vergeben:
    35
    #14 Anonymous, 17. Juli 2016
    Zuletzt bearbeitet: 17. Juli 2016
    Hab da statt 3 Uhr halt 0 Uhr stehen.
    Die Datei wird nur nicht aktualisiert.
    Wenn ich request_port.php?module=CSV?... im Browser öffne, wird wohl eine Datei erstellt.
    Als Ergebnis wird hier folgendes dann angezeigt:

    Code:
    
    {"repeat":false,"scheme_id":0}
    
    
    Der Cronjob von unserem Provider ist auf die Cronjob-URL eingestellt, bewirkt alledings nichts.
     
  15. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    17. Juni 2013
    Beiträge:
    246
    Danke erhalten:
    21
    Danke vergeben:
    35
    #15 Anonymous, 17. Juli 2016
    Zuletzt bearbeitet: 18. Juli 2016
    Die Lösung liegt in einem Shell-Script, das man beispielsweise als request_port_cron.sh speichert und dann wie gewohnt als Cronjob bei dem Provider aufrufen kann:

    PHP:

    #!/bin/sh
    wget -- -"http://www.domain.de/request_port.php?...." > /dev/null
    exit 0

    In unserem Fall konnte das Script "request_port.php" nicht eingesetzt werden, da hier GET-Parameter übergeben werden müssen. Hierfür muss man den Umweg über das o.g. Shell-Script gehen