Hallo liebes Forum,
ich muss für ein Webprojekt eine Pflegeschnittstelle realisieren, über die sich mehrere Bereiche (News, Veranstaltungen, Mitarbeiter, ...) der Website pflegen lassen.
Die Inhalte der Bereiche sind alle im Artikelstiel:
z.B. News:
Newstitel
Newsdatum
Newstext
Verfasser
Bild
---------
Newstitel
Newsdatum
Newstext
Verfasser
Bild
---------
Newstitel
Newsdatum
Newstext
Verfasser
Bild
---------
[usw]
Jeder Bereich enthält jedoch etwas unterschiedliche Felder.
Veranstaltungen enthält z.B.
Veranstaltungstitel
Veranstaltungsdatum
Veranstaltungsort
Bild
---------
Veranstaltungstitel
Veranstaltungsdatum
Veranstaltungsort
Bild
---------
[usw]
Zu Verfügung habe ich Php und eine MySQL Datenbank.
Ich habe das ganz enun so realisiert:
folgende MySQL Tabelle angelegt:
CREATE TABLE inhalt
(
id
int( 11 ) NOT NULL AUTO_INCREMENT ,
b
varchar( 8 ) NOT NULL default '',
i1
int( 11 ) NOT NULL default '0',
i2
int( 11 ) NOT NULL default '0',
i3
int( 11 ) NOT NULL default '0',
v1
varchar( 255 ) NOT NULL default '',
v2
varchar( 255 ) NOT NULL default '',
v3
varchar( 255 ) NOT NULL default '',
t1
text NOT NULL ,
t2
text NOT NULL ,
t3
text NOT NULL ,
f1
varchar( 255 ) NOT NULL default '',
f2
varchar( 255 ) NOT NULL default '',
f3
varchar( 255 ) NOT NULL default '',
f4
varchar( 255 ) NOT NULL default '',
d1
date NOT NULL default '0000-00-00',
d2
date NOT NULL default '0000-00-00',
PRIMARY KEY ( id
)
) TYPE = MYISAM
und ein Script geschrieben, welches auf jeder Pflegeseite includiert wird:
// Speichern
if (isset($_REQUEST["speichern"])) {
(isset($_REQUEST["id"])) ? $query .= "UPDATE inhalt " : $query .= "INSERT INTO inhalt ";
$query .= "SET b='$b', i1='".$_POST["i1"]."', i2='".$_POST["i2"]."', i3='".$_POST["i3"]."', v1='".$_POST["v1"]."', v2='".$_POST["v2"]."', v3='".$_POST["v3"]."', t1='".$_POST["t1"]."', t2='".$_POST["t2"]."', t3='".$_POST["t3"]."', d1='".$_POST["d1"]."', d2='".$_POST["d2"]."' ";
if (isset($_REQUEST["id"])) {
$query .= "WHERE id = ".$_REQUEST["id"];
$mysql_insert_id = $_REQUEST["id"];
}
mysql_query($query);
if (!isset($mysql_insert_id))
$mysql_insert_id = mysql_insert_id();
for ($i = 1; $i <= 4; $i++) {
// Dateiupload
if (strlen($_FILES["f".$i]["name"]) > 0) {
$pfad = "../../upload/".$mysql_insert_id;
@mkdir($pfad);
// Kopieren der Datei auf dem Server
if (move_uploaded_file($_FILES["f".$i]["tmp_name"], $pfad."/".$_FILES["f".$i]["name"]) == true) {
// Eintragen des Dateinamen in Datenbank
mysql_query("
UPDATE inhalt
SET f$i = '".$_FILES["f".$i]["name"]."'
WHERE id = $mysql_insert_id
;");
}
}
}
}
// Löschen
if (isset($_GET["del"])) {
mysql_query("
DELETE
FROM inhalt
WHERE id = '".$_REQUEST["del"]."'
;");
deldir("../../upload/".$_GET["del"]);
}
// Daten zum editieren abfragen
if (isset($_REQUEST["edit"])) {
$query_return = mysql_query("
SELECT *
FROM inhalt
WHERE id='".$_REQUEST["edit"]."'
LIMIT 1
;");
$query_array = mysql_fetch_array($query_return);
echo '<input type="hidden" name="id" value="'.$query_array["id"].'">';
}
Das Ganze erscheint mir jedoch etwas zu umständlich!
Frage: gibt es da einfachere/bessere Alternativen. Wichtig ist, dass sich das Ganze schnell um ein paar Pflegebereiche erweitern lassen kann.
Kennt jemand ein gutes Tutorial hierzu?
Vielen Dank für euere Hilfe
MAresa