Maresa P.: Contentpflege leicht gemacht?!

Beitrag lesen

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