[PHP/DIV Layout]: bestimmte Unterseiten per Klick laden - wie?

epic

De Puta Brot :D
ID: 49135
L
1 Mai 2006
155
3
Ich bin PHP-Anfänger und bastle gerade an einer Homepage, die ich mit einem 4-teiligen CSS-Div-Layout gestaltet habe und zwar: Header, Menü links, Contentbereich und Footer.

Was bis jetzt geschehen ist:

Ein Mitarbeiter kann sich einloggen, wenn dies erfolgreich geschehen ist, sieht er im Menü links ein Submenü, wo er verschiedene Menüpunkte auswählen kann und im Contentbereich steht die Meldung: "Sie sind eingeloggt als..." und "Logout". Das habe ich so gelöst, dass je nachdem, ob man eingeloggt ist oder nicht, ein anderer Text im Contentbereich steht (if/else)

Wo ich nun mit meinem Wissen nicht weiter komme und auch nicht weiß, nach was ich da im Internet suchen soll, ist folgendes Problem:

Der eingeloggte Mitarbeiter klickt in seinem Submenü z.B. auf "Kunde suchen"
Danach soll sich die Datei kunde_suchen.php im Contentbereich hineinladen.


Früher mal, als ich noch mit HTML gearbeitet habe, habe ich so etwas immer mit iFrames gemacht, das war einfach *g* Aber ich habe mir sagen lassen, dass man so nicht mehr programmiert und deshalb habe ich mal ein DIV-Layout probiert!

Bitte nun um eure Hilfe!
 
Ich denke das was du suchst ist der INCLUDE befehlt.

Ohne dir zu nah treten zu wollen würde ich dir auf jeden Fall empfehlen an deinem Grundwissen zu arbeiten. Also entweder Einsteiger Tutorials oder ein Einstiegsbuch.

Damit gewöhnt man sich viele Dinge gleich richtig an und braucht nicht später doppelt soviel Zeit um die bereits geschriebenen Scripte zu überarbeiten.
 
Ich denke das was du suchst ist der INCLUDE befehlt.

Ohne dir zu nah treten zu wollen würde ich dir auf jeden Fall empfehlen an deinem Grundwissen zu arbeiten. Also entweder Einsteiger Tutorials oder ein Einstiegsbuch.

Damit gewöhnt man sich viele Dinge gleich richtig an und braucht nicht später doppelt soviel Zeit um die bereits geschriebenen Scripte zu überarbeiten.

Nein, nein du trittst mir nicht zu nahe, ich hab ja eh gesagt, dass ich noch am Anfang stehe und nicht weiß, wonach ich suchen soll.

Gut, dann werde ich mir mal etwas zu include durchlesen.

Danke!


#edit:

Falls jemand auf der selben Suche ist, so geht es:

Code:
<div id="navigation">
<a href="index.php?content=home">Home</a><br />
<a href="index.php?content=info">Info</a><br />
<a href="index.php?content=email">Email</a><br />
</div>
<div id="content">
<? 
if($_REQUEST['content'] == 'home'){
    include('home.htm'); 
}
if($_REQUEST['content'] == 'info'){
    include('info.htm'); 
}
if($_REQUEST['content'] == 'email'){
    include('email.htm'); 
}
?> 
</div>
 
Zuletzt bearbeitet:
Dazu gleich eine Verbesserungsanmerkung :)

Switch statt if:

Code:
switch ($_REQUEST['content']) {
  case "home":
     INCLUDE(...); break;
  case "info":
     INCLUDE(..); break;
  default:
     INCLUDE(...); break;
}
 
XXS is doch schon für die Klamotten-Branche vergeben :ugly:
 
Vielen Dank für die vielen hilfreichen und auch lustigen (gegen Ende hin) Beiträge zu diesem Thema.

Ich wollte noch fragen, wie denn das funktioniert, wenn ich ein Formular habe mit

Code:
<form action='mitarbeiter_suchen.php' method='post'>
<table>
.......
<input name='Suchen' type='submit' value='Suchen'>

und dann auf den Button Suchen klicke dass man hier auch wieder das Design mitläd?

Weil mit den Hinweisen von oben, komm ich nicht drauf bzw. wüsste ich nicht, wo ich im Formular sagen soll, dass er nicht quasi "target=_self" öffnet.

Danke!
 
Da muss in die mitarbeiter_suchen.php auch dein design hinein.

Besser wäre aber wahrschienlich ein Template, in das einfach nur deine jeweilige Datei inkludiert wird...;)
 
Da muss in die mitarbeiter_suchen.php auch dein design hinein.

Besser wäre aber wahrschienlich ein Template, in das einfach nur deine jeweilige Datei inkludiert wird...;)

Ich hab eh ein Template mit div-Containern oder meinst du etwas anderes mit einem Template?

Heißt das jetzt so quasi jede Unterseite muss das komplette Design bekommen? :S Dann war aber der Schritt oben unnötig mit dem includen?
 
Ups:-? Themenverfehlung:LOL:

Also statt auf mitarbeiter_bearbeiten.php zu posten, musst du dann halt auf index.php?content=mitarbeiter_bearbeiten oder ähnlich. Je nachdem wie du das im switch-case gelöst hast;)
 
Genau das hab ich gemeint, so hab ich es gelöst, aber so geht es nicht.

Wenn ich auf index.php?content=ma_suchen poste, dann lädt er im Contentbereich nix rein :(
 
Ja die Mitarbeiter suchen hat ne eigene Switch Case Abfrage mit anderen Content-IDs sonst kann ichs nichtmal aufrufen

Code:
<?php

$kategorie = $_POST['kategorie'];
$variable = $_POST['variable'];
$suche = $_POST['Suchen'];

[B]switch ($_GET['content']) {
                            case "ma_find": include('mitarbeiter_suchen.php'); break;
                            default: echo " "; break; }[/B]




echo "
 
<html>
<body>
<font style='font-size:14pt;'> <b>Mitarbeiter suchen</b></font>

<br><br> 

[B]<form action='index.php?content=ma_find' method='post'>[/B]
<table>

   <tr>
     <td><font>Kategorie:</td>
     <td><select name='kategorie'>
                  <option value='userid'>MitarbeiterID</option>
                  <option value='bname'>Benutzername</option>
                  <option value='vname'>Vorname</option>
                  <option value='nname'>Nachname</option>
                  <option value='funktion'>Funktion</option>
          </select></td>
   </tr>
   <tr>
     <td><font>Suchvariable:</font></td>
     <td><input name='variable' type='text'></td>
   </tr>
   <tr>
     <td></td>
     <td align='center'><div align='left'>
          <input name='Suchen' type='submit' value='Suchen'>
              
          <input name='Reset' type='reset' value='Zurücksetzen'>
		     
		  <input name='Zurück' type='Button' value='Zurück' onClick='history.back()'>
       </div></td>
   </tr>
</table>";



if($suche) {


    if(ereg($kategorie,'userid')) {
        if($variable=='') {
            $result = mysql_query("select MitarbeiterID, Benutzername, Vorname, Nachname, Funktion from Mitarbeiter");
        }
        else {
            $result = mysql_query("select MitarbeiterID, Benutzername, Vorname, Nachname, Funktion from Mitarbeiter where MitarbeiterID =".$variable);
        }

        echo "<tr><td></td></tr>";

        if (mysql_num_rows($result) == 0) {
            echo "<br>";
            echo "Zu Ihrer Suchanfrage wurde kein Ergebnis gefunden!";
        }
        else {
            echo "<table style='text-align:center;             font-size:9pt;'><tr><td></td></tr><tr><td><b>MitarbeiterID</td>
<td><b>Benutzername</td><td><b>Vorname</td><td><b>Nachname</td><td><b>Funktion</td></tr>";
            while ($row = mysql_fetch_assoc($result)) {
                echo "<tr><td>";
                echo $row['MitarbeiterID'];
                echo "</td><td>";
                echo $row['Benutzername'];
                echo "</td><td>";
                echo $row['Vorname'];
                echo "</td><td>";
                echo $row['Nachname'];
                echo "</td><td>";
                echo $row['Funktion'];
                echo "</td></tr>";

            }
        }

        echo "</table>";

    }


    if(ereg($kategorie,'bname')) {
        if($variable=='') {
            $result = mysql_query("select MitarbeiterID, Benutzername, Vorname, Nachname, Funktion from Mitarbeiter");
        }
        else {
            $result = mysql_query("select MitarbeiterID, Benutzername, Vorname, Nachname, Funktion from Mitarbeiter where Benutzername LIKE '%".$variable."%'");
        }

        echo "<tr><td></td></tr>";

        if (mysql_num_rows($result) == 0) {
            echo "<br>";
            echo "Zu Ihrer Suchanfrage wurde kein Ergebnis gefunden!";
        }
        else {
            echo "<table style='text-align:center;             font-size:9pt;'><tr><td></td></tr><tr><td><b>MitarbeiterID</td>
<td><b>Benutzername</td><td><b>Vorname</td><td><b>Nachname</td><td><b>Funktion</td></tr>";
            while ($row = mysql_fetch_assoc($result)) {
                echo "<tr><td>";
                echo $row['MitarbeiterID'];
                echo "</td><td>";
                echo $row['Benutzername'];
                echo "</td><td>";
                echo $row['Vorname'];
                echo "</td><td>";
                echo $row['Nachname'];
                echo "</td><td>";
                echo $row['Funktion'];
                echo "</td></tr>";

            }
        }

        echo "</table>";

    }


    if(ereg($kategorie,'vname')) {
        if($variable=='') {
            $result = mysql_query("select MitarbeiterID, Benutzername, Vorname, Nachname, Funktion from Mitarbeiter");
        }
        else {
            $result = mysql_query("select MitarbeiterID, Benutzername, Vorname, Nachname, Funktion from Mitarbeiter where Vorname LIKE '%".$variable."%'");
        }

        echo "<tr><td></td></tr>";

        if (mysql_num_rows($result) == '') {
            echo "<br>";
            echo "Zu Ihrer Suchanfrage wurde kein Ergebnis gefunden!";
        }
        else {
            echo "<table style='text-align:center;             font-size:9pt;'><tr><td></td></tr><tr><td><b>MitarbeiterID</td>
<td><b>Benutzername</td><td><b>Vorname</td><td><b>Nachname</td><td><b>Funktion</td></tr>";
            while ($row = mysql_fetch_assoc($result)) {
                echo "<tr><td>";
                echo $row['MitarbeiterID'];
                echo "</td><td>";
                echo $row['Benutzername'];
                echo "</td><td>";
                echo $row['Vorname'];
                echo "</td><td>";
                echo $row['Nachname'];
                echo "</td><td>";
                echo $row['Funktion'];
                echo "</td></tr>";

            }
        }

        echo "</table>";

    }


    if(ereg($kategorie,'nname')) {
        if($variable=='') {
            $result = mysql_query("select MitarbeiterID, Benutzername, Vorname, Nachname, Funktion from Mitarbeiter");
        }
        else {
            $result = mysql_query("select MitarbeiterID, Benutzername, Vorname, Nachname, Funktion from Mitarbeiter where Nachname LIKE '%".$variable."%'");
        }

        echo "<tr><td></td></tr>";

        if (mysql_num_rows($result) == 0) {
            echo "<br>";
            echo "Zu Ihrer Suchanfrage wurde kein Ergebnis gefunden!";
        }
        else {
            echo "<table style='text-align:center;             font-size:9pt;'><tr><td></td></tr><tr><td><b>MitarbeiterID</td>
<td><b>Benutzername</td><td><b>Vorname</td><td><b>Nachname</td><td><b>Funktion</td></tr>";
            while ($row = mysql_fetch_assoc($result)) {
                echo "<tr><td>";
                echo $row['MitarbeiterID'];
                echo "</td><td>";
                echo $row['Benutzername'];
                echo "</td><td>";
                echo $row['Vorname'];
                echo "</td><td>";
                echo $row['Nachname'];
                echo "</td><td>";
                echo $row['Funktion'];
                echo "</td></tr>";

            }
        }

        echo "</table>";

    }


    if(ereg($kategorie,'funktion')) {
        if($variable=='') {
            $result = mysql_query("select MitarbeiterID, Benutzername, Vorname, Nachname, Funktion from Mitarbeiter");
        }
        else {
            $result = mysql_query("select MitarbeiterID, Benutzername, Vorname, Nachname, Funktion from Mitarbeiter where Funktion LIKE '%".$variable."%'");
        }

        echo "<tr><td></td></tr>";

        if (mysql_num_rows($result) == 0) {
            echo "<br>";
            echo "Zu Ihrer Suchanfrage wurde kein Ergebnis gefunden!";
        }
        else {
            echo "<table style='text-align:center;             font-size:9pt;'><tr><td></td></tr><tr><td><b>MitarbeiterID</td>
<td><b>Benutzername</td><td><b>Vorname</td><td><b>Nachname</td><td><b>Funktion</td></tr>";
            while ($row = mysql_fetch_assoc($result)) {
                echo "<tr><td>";
                echo $row['MitarbeiterID'];
                echo "</td><td>";
                echo $row['Benutzername'];
                echo "</td><td>";
                echo $row['Vorname'];
                echo "</td><td>";
                echo $row['Nachname'];
                echo "</td><td>";
                echo $row['Funktion'];
                echo "</td></tr>";

            }
        }

        echo "</table>";

    }




    echo"</form>";

    ?>
 
PHP:
<div id="navigation">
<a href="index.php?content=home">Home</a><br />
<a href="index.php?content=info">Info</a><br />
<a href="index.php?content=email">Email</a><br />
</div>
<div id="content">
<? 
if($_REQUEST['content'] == 'home'){
    include('home.htm'); 
}
if($_REQUEST['content'] == 'info'){
    include('info.htm'); 
}
if($_REQUEST['content'] == 'email'){
    include('email.htm'); 
}
?> 
</div>

Da gehörts eigentlich rein;)