SteviesWebsite

Seite speichern Teil1

Code & Blog Logo

Code & Blog Logo

Man kann die Seite unseres CMS bereits bearbeiten, aber was bringt das bearbeiten, wenn wir nicht speichern können? Darum geht es heute. Heute werden das Menü, der Titel und der(oder das??) Alias gespeichert. Im nächsten Teil wird dann auch der Inhalt gespeichert.

Zu erst muss aber noch ein kleiner Bug behoben werden, der mir noch aufgefallen ist. Wenn kein Menü ausgewählt ist, wir auf Seite Bearbeiten immer das erste Menü angezeigt und dieses würde dann auch beim Seite speichern genommen werden. Also fügen wir mal schnell noch einen Eintrag der Liste hinzu(Datei /admin/includes/site-edit.php):

<h2>Seitenmen&uuml;</h2>
    <select name="menu" onchange="document.form.submit();">
      <option value="0">-- Kein Men&uuml; --</option>
      <?PHP

Nun müssen wir auch noch herausfinden, ob das Formular über die Combobox, oder den Submit-Button abgeschickt wurde. Dafür müssen wir einfach den Submit-Button einen Namen geben:

<div style="clear:both;">
  <input name="save" type="submit" value="&Auml;ndern" />
</div>

Beim Speichern wollen wir natürlich schön objektorientiert bleiben. Deswegen weisen wir den $page-Objekt einfach die neuen Daten zu. Danach wird in der save-Methode, welche wir gleich erstellen, der neue Inhalt in die Datenbank gespeichert. Hier erstmal das zuweisen der /admin/includes/site-edit.php:

<?PHP
  $page = new Page();
  $page->loadProperties(mysql_real_escape_string($_GET['site']));
  if($_POST['save']){
    $page->title = mysql_real_escape_string($_POST['title']);
    $page->alias = mysql_real_escape_string($_POST['alias']);
    $page->menu = mysql_real_escape_string($_POST['menu']);
    $page->save();
  }
?>

Da sich auch der alias ändern kann, an welchem aber die Seite erkannt wird, müssen wir statt dem $_GET['site'] im Formular direkt den alias aus dem $page-Objekt übernehmen:

...h1>Seite bearbeiten</h1>
<form name="form" action="/admin/index.php?page=site-edit&site=<?PHP echo $page->alias; ?>" 
      method="post">
  <div style="float:left;width:50%;">

Dann sind wir auch in der site-edit.php für heute fertig. Nun geht’s zur Klasse Page (‘/system/classes/page.php‘). Diese bekommt die neue Methode save:

<?php
function save(){
  global $dbpraefix;
  return mysql_query("UPDATE ".$dbpraefix."pages SET 
                                        title = '".$this->title."',
                                        alias = '".$this->alias."',
                                        menu = '".$this->menu."' 
                      WHERE id = '".$this->id."'");
}
...

Dies ist ein Beitrag aus der Aktion Code & Blog, in der hier ein eigenes CMS erstellt wird.

RSS Feed für Kommentare zu diesem Artikel. TrackBack URL

Keine Kommentare »

Hinterlasse einen Kommentar

Trackbacks/Pingbacks

Facebook LogoOptimiere deine MySQL-Datenbank ohne Änderungen am Server. Du bekommst schnellere Abfragen und sparst Speicher.[mehr...]

Code & Blog LogoErstelle dein eigenes CMS mit PHP. Dieses Tutorial wird dir zeigen wie das geht. Also lies dir es durch und frische deine PHP Kenntnisse auf. [mehr...]

WebanalyseFür die Verbesserung Deiner Seite solltest Du wissen, wie sich die Besucher verhalten. Diese Artikel zeigen Dir wie man das am geschicktesten macht. [mehr...]

Blog Tutorials... helfen dir deinen Blog zu verbessern. Nebenbei gibt es noch nützliche Blog-Tools. [mehr...]

Diskussion starten
  • RSS
  • Blogverzeichnis - Blog Verzeichnis bloggerei.de
Seite speichern Teil1 © SteviesWebsite.de - Kontakt | Impressum