Logikfrage Aufbau Code - Beispiel / Hilfe gesucht
|
|
Catzenjaeger |
Geschrieben am 18. Juni 2016 22:12:44
|
|
Ich habe einmal einen grundsätzliche Frage zum Codeaufbau: In meiner Figurendatenbank möchte ich , dass wenn die Kategorien angezeigt bekommt und dann auf eine dieser Kategorien klickt einen Unterseite aufgeht wo die Manufacturer angezeigt werden und wenn man dort wieder einen auswählt zur Figurenübersicht des Herstellers kommt und dann wiederum auf die Figuren-Detailseite. Also alles verschachtelt Wie geht das genau ... seit Tagen zerbreche ich mir den Kopf aber bekomme das einfach nicht hin. Ich bin jetzt soweit, dass ich die Kategorien angezeigt bekommen und denn ich darauf klicke alle Figuren die da drin sind. Ich würde jetzt noch die Manufacturer dazwischen schalten .. weiß aber nicht wie das geht. Das ist ja alles in einer einzigen Datei. Wir muss den ein Code aussehen der das macht: Hat da jemand mal ein Beispiel? In Fusion 9 ist die eigentliche Darstellung in templates ausgelagert. In meinen Beispiel --> templates--> template_figurelib.php die eigentlichen Daten kommen dann aus der figure.php wenn das mit den Manufacturern nicht geht ist nicht ganz sso schlimm aber ich bekomme es nicht hin das mit klick auf die Figur deren Details aufgehen. Ich weiss nicht wie ich das umsetzen muss. Kann jemand helfen oder einen Anregung geben? ich hänge beide Files mal an .. alspo die figure.php die die Daten liefert und das template was die daten ausgibt Danke :) Wäre toll wenn jeman helfen kann
Catzenjaeger hat folgende Datei angehängt:
|
Information: |
PHP Version: Nicht ausgewählt • MySQL Version: Nicht ausgewählt • PHP-Fusion: Nicht ausgewählt |
|
|
SuNflOw |
Geschrieben am 20. Juni 2016 12:36:01
|
|
Hallo, interessantes Projekt. Ich hoffe ich habe alles richtig verstanden und dann wollen wir mal sehen wie ich dir helfen kann. Erstmal die Reihenfolge so wie ich sie verstanden habe: Code Download Code Kategorie -> Hersteller -> Details In einer Kategorie sind Hersteller. Klickt man einen Hersteller an, sieht man die Figuren die dazu passen? Wenn ich das richtig verstanden habe, dann müssen wir erst einmal überlegen wie wir die Daten am Besten abspeichern. Ich schlage folgendes vor: Figuren werden Herstellern und Kategorien zugeordnet. Hersteller werden in Kategorien unterteilt. Kategorien werden Hersteller und Figuren zugeordnet. Nachdem du deine Daten dementsprechend ergänzt hast, kannst du einfache Anfragen an die Datenbank stellen und diese wie gewohnt anzeigen. Solltest du bei den Anfragen an die Datenbank noch fragen haben kann ich dir dahingehend auch gerne weiterhelfen. Zum Beispiel: Code Download Code
Gibt dir alle Hersteller die in einer bestimmten Kategorie sind zurück. Liebe Grüße, Patrick
SuNflOw hat folgende Datei angehängt:
Bearbeitet von SuNflOw am 20. Juni 2016 12:41:46 ________________________________________________ I got my swim trunks and my Flippie-Floppies *-* |
Information: |
PHP Version: Nicht ausgewählt • MySQL Version: Nicht ausgewählt • PHP-Fusion: Nicht ausgewählt |
|
|
Catzenjaeger |
Geschrieben am 20. Juni 2016 13:20:49
|
|
danke für das ausführliche Feedback - klasse :) die Infusion ist schon zu 70% fertig. Das einzigste was nicht klappt ist der Bildupload und eben die Darstellung der Figuren. Alles andere läuft soweit Leider bin mit meinen Fähigkeiten an Ende so dass ich jetzt hier quasi als Bittsteller auftreten muss. Ich habe schon mehrfach versucht (HIER z.B) aber noch keine Antworten ;) Ich habe bereits eine einen figures.php in der die Datenbankabfragen sind. Diese Daten werden dann innerhalb eines Templates genutzt. Bei Fusion 9 geht wohl vieles über Templates so das man den code belassen kann und nur das Template ändern muss. Das macht es aber für mich als Anfänger besonders schwer da die Übersicht zu behalten Die Anzeige der Kategorien geht (diese function funzt also) eine weitere function steuert nun die entsprechenden Figuren zu auch das geht prinzipiell aber ich wollte noch die Manufacturer dazwischen schalten. Was ich nicht hinbekommen habe ist die Darstellung einer einzelnen Figur mit dem quasi letzten Klick innerhalb der ganzen abfragen. Ich habe auch in UK gefragt für Hilfe weil der Upload ja nicht klappt. Schade auch dort antwortet keiner :( Wie gesagt meine submit.php geht bis den Bildupload. Die Bilder wollen einfach gespeichert werden :( Meine Anfrage hier beinhaltet halt wie man das so vom Codeaufbau machen soll: also mal als Beispiel was ich suche (der Logikaufbau) Zitat if (isset($_GET['cat_id']) && isnum($_GET['cat_id'])) { Datenbankabfrage Kategorien --> --> zeige mir die Kategorien im Template an --> render_figure_cat($info); klick auf Kategorie --> zeige mir die Manufakturer an if (isset($_GET['cat_id']) && isnum($_GET['manufacturer_id'])) { klick auf Manufactuer --> zeige mir alle dazugehörigen Figuren an klick auf einen Figur --> zeige die ganzen Detail der Figur an Dieses bekomme ich nicht hin weil das alles functionen im template sind die dann der figures.ph mittel "render_figure_item($info)" und andere zugesteuert werdenn |
Information: |
PHP Version: Nicht ausgewählt • MySQL Version: Nicht ausgewählt • PHP-Fusion: Nicht ausgewählt |
|
|
SuNflOw |
Geschrieben am 20. Juni 2016 14:18:59
|
|
Hallo, ich habe mir das jetzt 3 mal durchgelesen und ich verstehe es nicht. ________________________________________________ I got my swim trunks and my Flippie-Floppies *-* |
Information: |
PHP Version: Nicht ausgewählt • MySQL Version: Nicht ausgewählt • PHP-Fusion: Nicht ausgewählt |
|
|
Catzenjaeger |
Geschrieben am 20. Juni 2016 16:19:33
|
|
Also, ich denke es werden da 2 Files benötigt -- aber die bauen gelingt mir nicht infusions/fugurelib/figures.php infusions/figurelib/templates/template_figurelib. in der figures.php kommen die ganzen abfragen rein in die templates kommen dann die functions so wie hier in den faqs (als Beispiel). die müssten abe rnoch erweitert bzw total umgebaut sein. Code Download Code // Main View Bearbeitet von Catzenjaeger am 20. Juni 2016 19:21:35 |
Information: |
PHP Version: Nicht ausgewählt • MySQL Version: Nicht ausgewählt • PHP-Fusion: Nicht ausgewählt |
|
|
SuNflOw |
Geschrieben am 21. Juni 2016 07:14:35
|
|
Hallo, ich hoffe ich habe das jetzt richtig verstanden. Du machst ein Array mit allen Daten die du später anzeigen möchtest. Dies dient nur dazu um später zu sehen welche Felder du hast. Man kann das auch weg lassen: Code Download Code $figur_details = array( Dann legst du ein Array an indem dann die einzelnen Figuren abgespeichert werden: Code Download Code $figur_data = array(); Danach machst du deine Abfrage und füllst dieses Array mit deinen Daten: Code Download Code $figur_details = array( Dann nur noch dem Figuren Array hinzufügen: Code Download Code $figur_data[] = $figur_details; Danach rufst du die in der Datei 'infusions/figurelib/templates/template_figurelib.php' definiere Funktion auf die dafür verantwortlich ist eine Figur anzuzeigen. Es ist wichtig dass du hier deine Figuren Details mitgibst: Code Download Code render_figur_details($figur_data); Nun nochmal zusammen: Code Download Code $figur_data = array(); In der Datei 'infusions/figurelib/templates/template_figurelib.php' gibt es eine Funktion: Code Download Code function render_figur_details($figur_data) ________________________________________________ I got my swim trunks and my Flippie-Floppies *-* |
Information: |
PHP Version: Nicht ausgewählt • MySQL Version: Nicht ausgewählt • PHP-Fusion: Nicht ausgewählt |
|
|
Catzenjaeger |
Geschrieben am 21. Juni 2016 11:57:19
|
|
danke für deinen Hilfe. Ich habs trotzdem nicht kappiert. Ich habe momentan totale Blockade. Mir happert es an der Logig iwe man sowas aufbaut und auch umsetzt. Ich komm vor allen mit den Begrifflichkeiten nicht zurecht .. details und data sind für mich das gleiche vom logischen her. wenn du zB schreibst ich soll ein array mit allen daten anlegen ... nun was sind die daten? ok ich versuch es mal wie du beschreiben hast. Das sind die wesentlichen Daten die zu einer Figur gespeichert werden in der DB (paar andere noch wie zB rating/comments/datastamp usw) Zitat $result = dbquery( "SELECT tb.figure_id, tb.figure_submitter, tb.figure_freigabe, tb.figure_pubdate, tb.figure_scale, tb.figure_title, tb.figure_variant, tb.figure_series, tb.figure_manufacturer, tb.figure_brand, tb.figure_datestamp, tb.figure_cat, tbc.figure_cat_id, tbc.figure_cat_name, tbu.user_id, tbu.user_name, tbu.user_status, tbu.user_avatar, tbm.figure_manufacturer_name, tbb.figure_brand_name, tby.figure_year_id, tby.figure_year, tbs.figure_scale_id, tbs.figure_scale_name FROM ".DB_FIGURE_ITEMS." tb LEFT JOIN ".DB_USERS." tbu ON tb.figure_submitter=tbu.user_id INNER JOIN ".DB_FIGURE_CATS." tbc ON tb.figure_cat=tbc.figure_cat_id INNER JOIN ".DB_FIGURE_MANUFACTURERS." tbm ON tbm.figure_manufacturer_id = tb.figure_manufacturer INNER JOIN ".DB_FIGURE_BRANDS." tbb ON tbb.figure_brand_id = tb.figure_brand INNER JOIN ".DB_FIGURE_SCALES." tbs ON tbs.figure_scale_id = tb.figure_scale INNER JOIN ".DB_FIGURE_YEARS." tby ON tby.figure_year_id = tb.figure_pubdate WHERE figure_freigabe = '1' AND figure_cat='".intval($_GET['cat_id'])."' ORDER BY ".$cdata['figure_cat_sorting']." LIMIT ".$_GET['rowstart'].",".$fil_settings['figure_per_page'] ); $figur_data = array(); while($data = dbarray($result)) { $figur_details = array( $figur_details = array( 'figure_freigabe' => 0, 'figure_title' => '', 'figure_variant' => '', 'figure_manufacturer' => '', 'figure_artists' => '', 'figure_country' => '', 'figure_brand' => '', 'figure_series' => '', 'figure_scale' => '', 'figure_weight' => '', 'figure_height' => '', 'figure_width' => '', 'figure_depth' => '', 'figure_material' => '', 'figure_poa' => '', 'figure_packaging' => '', 'figure_retailprice' => '', 'figure_usedprice' => '', 'figure_limitation' => '', 'figure_cat' => '', 'figure_editionsize' => '', 'figure_accessories' => '', 'figure_description' => '', 'figure_pubdate' => '', 'figure_agb' => 0, 'figure_datestamp' => '', $figur_data[] = $figur_details; } render_figur_details($figur_data); ); sorry im Prinzip müssten das der ganze Kram schon hier in diesen File sein aber ich bekomme es nicht geordnet .. das ist zu unübersichtlich siehe ANHANG!!
Catzenjaeger hat folgende Datei angehängt:
Bearbeitet von Catzenjaeger am 21. Juni 2016 12:03:23 |
Information: |
PHP Version: Nicht ausgewählt • MySQL Version: Nicht ausgewählt • PHP-Fusion: Nicht ausgewählt |
|
|
SuNflOw |
Geschrieben am 21. Juni 2016 13:22:31
|
|
Hallo, vielleicht ist 'details' und 'data' nicht ganz glücklich gewählt. Details repräsentiert eine Figur. Und in Data sind am Ende alle Figuren. Ich habe auch GitHub geschaut. Was genau funktioniert da nicht? Ich habe gerade keine VM oder keinen Server hier um das zu testen. Was ist das was du erhältst? Was erwartet du zu erhalten? Grüße, Patrick ________________________________________________ I got my swim trunks and my Flippie-Floppies *-* |
Information: |
PHP Version: Nicht ausgewählt • MySQL Version: Nicht ausgewählt • PHP-Fusion: Nicht ausgewählt |
|
|
Catzenjaeger |
Geschrieben am 21. Juni 2016 13:42:00
|
|
Hallo, danke das du schaust. Ich habe einen testaccount mal eingerichtet da siehtst das alles live. Ist einen Version 9 die nur zu Testzwecken dient und nur zum test dieser infusion .. auf alles andere habe ich da keinen wert gelegt ... also nicht erschrecken meine figures.php und die dazugehörige Template Datei zeigt nur die Kategorien und mit klick darauf die Figuren die dahinter stehen bzw zu dieser Kategorie gehören. Die Maufacturer sind nicht zu sehen . Die hätte ich noch gerne "dazwischen" geschalten. Die eigentliche Figuren-Detailseite geht gar nicht. also --> Kategorie --> Hersteller dieser Kategorie --> Alle Figuren des Herstellers --> Detailseite mit allen Daten inklusive den Bildern der Datei.(wie auf den einen Bild zus sehen mit den 10 Bildern) Momentan ist es so: Kategorie --> alle Figuren der Kategorie allerdings ist diese Liste schlimm anzusehen. Ich hänge mal 2 Bilder an die zeigen sollen wie es eigentlich aussehen sollte bzw mal aussah
Catzenjaeger hat folgende Datei angehängt:
|
Information: |
PHP Version: Nicht ausgewählt • MySQL Version: Nicht ausgewählt • PHP-Fusion: Nicht ausgewählt |
|
Springe ins Forum: |