Information ausblenden
Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm

php Abfrage

Dieses Thema im Forum "MySQL und MariaDB" wurde erstellt von Dreiplus, 15 September 2016.

  1. Dreiplus

    Dreiplus Neuer Benutzer

    Moin,
    ich bin neu in diesem Forum und grundsätzlich auch neu was Datenbanken und php angeht. Vielleicht bin ich hier richtig und Ihr könnt mir weiterhelfen.

    Wir haben einen Spieleserver für das Spiel Arma 3 und eine Life Modifikation für Tanoa erstellt.
    In diesen Server haben wir ein dynamisches Marktsystem integriert welches Preise verschiedener Items in einer Datenbank speichert.

    Diese Preise möchten wir für unsere Spieler auf einer Homepage anzeigen lassen.

    Die Datenbank hierzu sieht folgendermaßen aus:

    Es gibt eine Zeile die in zwei Spalten aufgeteilt ist. Eine Spalte mit der Überschrift id und dem Inhalt 1
    und eine Spalte mit der Überschrift prices und dem Inhalt

    [["apple",24.1748,0],["peach",53.3739,0],["tbacon",125,0],["donuts",130,0],["rabbit_raw",150,0],["rabbit",170,0],["ornate_raw",190,6],["ornate",190,0],["mackerel_raw",190,6],["mackerel",190,0],["tuna_raw",190,9],["tuna",190,0],["mullet_raw",190,2],["mullet",200,0],["catshark_raw",200,1],["catshark",200,0],["turtle_soup",200,0],["hen_raw",200,0],["hen",200,0],["rooster_raw",210,0],["sheep_raw",210,0],["sheep",155,0],["goat_raw",155,0],["goat",300,0],["redgull",1500,0],["coffee",10,0],["waterBottle",10,0],["pickaxe",350,0],["fuelFull",500,0],["spikeStrip",1200,0],["lockpick",75,0],["goldbar",95000,0],["blastingcharge",35000,0],["boltcutter",7500,0],["defusekit",2500,0],["storagesmall",75000,0],["storagebig",15000,0],["oil_processed",1200,0],["copper_refined",1700,0],["iron_refined",1650,0],["salt_refined",1850,0],["glass",1450,0],["diamond_cut",2530,0],["cement",2350,0],["heroin_processed",5000,0],["marijuana",5250,0],["cocaine_processed",5300,219]]

    Siehe auch Anhang.

    Gibt es eine Möglichkeit die verschiedenen Items wie apple, peach usw. auf der Homepage einzeln mit Preis auszugeben. Sodass wir eine Tabelle auf der Homepage haben:

    Name Preis

    Apfel 24,17
    Pfirsich 53.37

    usw.

    über Eure Hilfe würde ich mich sehr freuen.


    Mit freundlichen Grüßen


    Dreiplus
     

    Anhänge:

  2. akretschmer

    akretschmer Datenbank-Guru

    wirf das einfach weg und merke Dir: in jedes Feld kommt nur ein Wert. Also, z.B. ein Feld 'Produktname' und ein Feld 'Preis'. Un pro Zeile speicherst Du so je Produkt den Preis ab.
     
  3. Dreiplus

    Dreiplus Neuer Benutzer

    Danke für Deine Antwort. Das Marktsystem haben wir nicht selbst erstellt sondern von einem anderen Server übernommen. Leider haben wir keine Ahnung wie und ob man das Script für den Markt umschreiben kann. Es ist in der "Branche" leider so, dass keiner so wirklich dem anderen helfen mag aus Angst übertrumpft zu werden.

    Also ist eine Abfrage wie von mir gedacht für eine Homepage in dieser Form nicht möglich?
     
  4. akretschmer

    akretschmer Datenbank-Guru

    ich könne Dir das, in PostgreSQL, passend aufdröseln. Aber nicht als Lösung empfehlen.
     
  5. Dreiplus

    Dreiplus Neuer Benutzer

    Ich kenne mich mit PostgreSQL noch weniger aus als mit MySQL. Ich muss sagen wenn ich eine SQL Datei lese verstehe ich den Großteil aber ich würde nie hinbekommen selbst eine zu schreiben.
    Was bedeutet es für mich wenn Du es in PostgreSQL schreiben würdest?
    Ist es nur eine Änderung an der Homepage also eine andere Anfrage?
    Oder am Serverscipt vom Marktsystem?
    Oder gar an der Datenbank?
     
  6. akretschmer

    akretschmer Datenbank-Guru

    Letzteres. Was nutzt Du nun eigentlich, MS-SQL oder MySQL?
     
  7. Dreiplus

    Dreiplus Neuer Benutzer

    Ich nutze MySQL allerdings habe ich parallel auch in einem php Forum gefragt und dort hat mir jemand zu einem JSON decode geraten. Ich schaue mir erst das an weil ich an der Datenbank lieber weniger ändern würde. Das dies ja auch automatisch bedeuten würde am Serverscript Änderungen vorzunehmen, richtig?
     
  8. akretschmer

    akretschmer Datenbank-Guru

    Was hat das mit M$-SQL zu tun? Das ist ein Forum zu Datenbanken, da gibt es Oraggle, M$-SQL, MySQL, DB/Halbe, Informix, SQLite und so weiter. Jedes ist anders. Manche können viel, andere weniger. Besonders MySQL kann von wenig ganz viel. Aber Du solltest hier Deine Fragen schon erst einmal in das richtige Unterforum hineinbugsieren.

    JSON ist möglicherweise aber ein guter Ansatz, mal so auf die Schnelle kann ich das so zerlegen:

    Code:
    test=*# select * from json_array_elements('[["apple",24.1748,0],["peach",53.3739,0],["tbacon",125,0],["donuts",130,0],["rabbit_raw",150,0],["rabbit",170,0],["ornate_raw",190,6],["ornate",190,0],["mackerel_raw",190,6],["mackerel",190,0],["tuna_raw",190,9],["tuna",190,0],["mullet_raw",190,2],["mullet",200,0],["catshark_raw",200,1],["catshark",200,0],["turtle_soup",200,0],["hen_raw",200,0],["hen",200,0],["rooster_raw",210,0],["sheep_raw",210,0],["sheep",155,0],["goat_raw",155,0],["goat",300,0],["redgull",1500,0],["coffee",10,0],["waterBottle",10,0],["pickaxe",350,0],["fuelFull",500,0],["spikeStrip",1200,0],["lockpick",75,0],["goldbar",95000,0],["blastingcharge",35000,0],["boltcutter",7500,0],["defusekit",2500,0],["storagesmall",75000,0],["storagebig",15000,0],["oil_processed",1200,0],["copper_refined",1700,0],["iron_refined",1650,0],["salt_refined",1850,0],["glass",1450,0],["diamond_cut",2530,0],["cement",2350,0],["heroin_processed",5000,0],["marijuana",5250,0],["cocaine_processed",5300,219]]'::json);
      value   
    --------------------------------
     ["apple",24.1748,0]
     ["peach",53.3739,0]
     ["tbacon",125,0]
     ["donuts",130,0]
     ["rabbit_raw",150,0]
     ["rabbit",170,0]
     ["ornate_raw",190,6]
     ["ornate",190,0]
     ["mackerel_raw",190,6]
     ["mackerel",190,0]
     ["tuna_raw",190,9]
     ["tuna",190,0]
     ["mullet_raw",190,2]
     ["mullet",200,0]
     ["catshark_raw",200,1]
     ["catshark",200,0]
     ["turtle_soup",200,0]
     ["hen_raw",200,0]
     ["hen",200,0]
     ["rooster_raw",210,0]
     ["sheep_raw",210,0]
     ["sheep",155,0]
     ["goat_raw",155,0]
     ["goat",300,0]
     ["redgull",1500,0]
     ["coffee",10,0]
     ["waterBottle",10,0]
     ["pickaxe",350,0]
     ["fuelFull",500,0]
     ["spikeStrip",1200,0]
     ["lockpick",75,0]
     ["goldbar",95000,0]
     ["blastingcharge",35000,0]
     ["boltcutter",7500,0]
     ["defusekit",2500,0]
     ["storagesmall",75000,0]
     ["storagebig",15000,0]
     ["oil_processed",1200,0]
     ["copper_refined",1700,0]
     ["iron_refined",1650,0]
     ["salt_refined",1850,0]
     ["glass",1450,0]
     ["diamond_cut",2530,0]
     ["cement",2350,0]
     ["heroin_processed",5000,0]
     ["marijuana",5250,0]
     ["cocaine_processed",5300,219]
    (47 Zeilen)
    
    test=*#
    
    Ich denke, da kann man ansetzen. Aber, again, das ist weder M$SQL noch MySQL.
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden