Seite 1 von 1

Probleme beim umsetzen einiger Features im eigenen ACP Modul

Verfasst: 17.02.2010 04:49
von mystique
Hallo zusammen,

ich hoffe ich bin in diesen Unterforum richtig.

Hier eine kurze Beschreibung was das Modul machen soll:

Ich habe eine DB-Tabelle mit den Namen "modules" in dieser Tabelle werden verschiedene Module verwaltet & diese Module will ich jetzt im ACP managen können.

Jetzt zu den Problem wo ich net weiterkomme:

Das auslesen & darstellen der Tabelle mit ausgewählten Spalten & deren Datensätze Inhalte hab ich hinbekommen doch was ich nicht hinbekomme habe sind folgende Sachen:
1. Das ein-/ausschalten der einzelnen Module via Aktivieren/Deaktivieren-Button so wie im ACP bei den Styles
2. Habe mir wie bei der Smiley-Verwaltung im ACP eine Spalte "Option" angelegt mit 6 Icons (bearbeiten,löschen,hoch,runter,rechts & links), dort bekomme ich leider auch nicht die Funktion hinter den Buttons hin. Die Button sollen folgende Funktionen haben, der 1. soll wie bei änderen Modulen im ACP den kompletten Datensätz bearbeiten können, der 2. soll diesen löschen können, der 3. & 4. soll den Wert in der Spalte "module_cols" jeweils um eins erhöhen/verringern (Wert-Bereich von 0-xxx) & die Button 5 & 6 sollen den Wert in der Spalte "module_rows" verändern (Wert-Bereich: left, center, right, leer).
3. Hab einen Button "Neues Modul hinzufügen" unter der Tabelle angelegt & diese Funktion dahinter bekomme ich auch net hin.

Kann mir einer von euch da ein paar Tips geben wie ich das umsetzten kann. Mit PHP beschäftige ich mich erst seit ein paar Wochen & wie ich bis jetzt herausgefunden habe benötigt man für diese Funktionen auch noch JavaScript & davon hab garkeine Ahnung, daher wahrscheinlich auch mein im Kreis gedrehe beim lösen der Probleme. :roll: Und bitte keine Post mit "SuFu benutzen" oder so, wenn dann gleich Schlagwörter mitposten. Hab die Suche natürlich schon benutzt & auch schon x Seiten im WWW durchforstet, aber ohne Erfolg. Habe mir auch schon die verschiedenen Module im ACP angeschaut aber die Codes konnte ich leider net auf mein Modul umsetzen.

Wenn noch mehr Infos benötigt werden einfach bescheid geben.

Hier noch paar Infos zur Tabelle in der DB & im ACP:

Code: Alles auswählen

--
-- Tabellenstruktur für Tabelle `modules`
--

CREATE TABLE IF NOT EXISTS `modules` (
  `module_id` mediumint(8) unsigned NOT NULL auto_increment,
  `module_description` varchar(255) collate utf8_bin NOT NULL default '',
  `module_type` varchar(6) collate utf8_bin NOT NULL default 'Extern',
  `module_enabled` tinyint(1) NOT NULL default '0',
  `module_display_portal` tinyint(1) NOT NULL default '0',
  `module_display_index` tinyint(1) NOT NULL default '0',
  `module_rows` varchar(6) collate utf8_bin NOT NULL default '',
  `module_cols` tinyint(2) NOT NULL default '0',
  `module_path` varchar(255) collate utf8_bin NOT NULL default '',
  `module_template_name` varchar(255) collate utf8_bin NOT NULL default '',
  `module_script_name` varchar(255) collate utf8_bin NOT NULL default '',
  `module_icon` varchar(255) collate utf8_bin NOT NULL default '',
  `module_lang` varchar(255) collate utf8_bin NOT NULL default '',
  PRIMARY KEY  (`module_id`),
  KEY `module_enabled` (`module_enabled`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=39 ;
[ externes Bild ]


Gruß
Mystique

Re: Probleme beim umsetzen einiger Features im eigenen ACP M

Verfasst: 17.02.2010 19:21
von Pyramide
Im Prinzip brauchst du dir ja nur ein vorhandenes ACP Modul angucken und es dann genauso machen - so eine Oberfläche wie auf deinem Screenshot gibt es ja bereits an vielen Stellen.

Woran genau scheitert es denn bei dir? KB:programmierfragen

Re: Probleme beim umsetzen einiger Features im eigenen ACP M

Verfasst: 18.02.2010 00:05
von mystique
Ich habe bevor ich mein 1. Post geschrieben habe mit den Rank Modul rumexperimentiert & zwar hab ich ich mir die Switch-Case-Anweisung & die General Vars rauskopiert & in mein Modul eingefügt, da ich davon ausgehe, dass diese für die Bearbeitung & Löschung zuständig ist. Weiterhin habe ich mir aus der Template davon den <script>...</script> & <form>...</form> geholt. Ob ich jetzt den Script-Tag brauche weiß ich net genau.

Jetzt bin ich schonmal soweit, dass ich meine Tabelle sehe (Habe den letzten Teil der Switch-Case rausgenommen & mein Teil eingefügt, das müsste dann der Default-Teil sein der Anweisung) & wenn ich auf Bearbeiten klicke, die Ranks bearbeiten kann & wahrscheinlich auch löschen.

Als nächstes wollte ich erstmal überflüssige Sachen wie den ganzen Image-Kram & die Update-Abfrage der User Tabelle aus der Switch-Case werfen, da ich diesen ja net benötigte, aber was gehört alles dazu ?

Zu der Update-Abfrage sollte nur das sein:

Code: Alles auswählen

$sql = 'UPDATE ' . USERS_TABLE . "
						SET user_rank = 0
						WHERE user_rank = $rank_id";
					$db->sql_query($sql);
Wenn ich soweit wäre, müsste ich ja eigentich nur noch die restliche Anweisung an meiner Tabelle anpassen oder ?

Und noch eine Frage zu allgeim zu der verwendetet Switch-Case-Anweisung. Wenn ich den Aufbau dieser Anweisung richtig verstanden habe sieht diese ja wie folgt aus:

Code: Alles auswählen

switch ($action)
        {
                case 'save':
                break;

		case 'delete':
                break;

                case 'edit':
		case 'add':
                return;
                break;
         }

SQL-Abfrage für die Darstellung meiner Tabelle
Jetzt ist noch meine Frage was macht der Save-Block genau ? Ich vermute folgendes:
1. IF-Schleife: Bringt eine Fehlermeldung, wenn z.B. die Session abgelaufen ist & man das Formular mit einer anderen Session abschickt wird
2. IF-Schleife: Bringt eine Fehlermeldung, wenn man den Titel vergessen hat
3. IF-Schleife: Macht ein Log Eintrag wenn ein Rang geupdatet wurde
Else : Macht ein Log Eintrag wenn ein Rang hinzugefügt wurde

Ist das richtig ?

Und wenn ich jetzt mit eurer Hilfe die Edit,Del & Add-Funktion hinbekomme, brauch ich ja für die anderen Funktionen ja nur jeweils eine weiteren Case-Block einfügen oder ? Wenn das so ist benötige ich für die Funktion hoch/runter 1 oder 2 Case-Blocke ?

Noch eine Frage zur den Sprachvariablen: Wenn ich in meiner Datei in der Übersetzung z.B. ein Umlaut schreibe zeigt er mir ein kl. 2 zeiliges Bild an wo draufsteht FF/FD wenn ich z.B. anstatt Ü &Uuml; schreibe zeigt er mir das im ACP richtig an, aber die anderen Sprachdateien haben die Umlaute & so ganz normal drin. Wodran liegt das ?