BlackBoard (http://www.black-board.net/index.php)
- Design, Programmierung & Entwicklung (http://www.black-board.net/board.php?boardid=55)
-- Webdesign (http://www.black-board.net/board.php?boardid=19)
--- Includen .... (http://www.black-board.net/thread.php?threadid=15960)


Geschrieben von eotbc am 15.02.2004 um 21:01:

 

Zitat:
für was steht case?? die ID?


h3h3 , ich kann Php auch nur ein klein bisschen... großes Grinsen

einfach immer wieder diese Zeile :

code:
1:
case 1: include("downloads.html"); break;



benutzen und nur die Zahl (hier 1) und die Datei ändern....

-> Und natürlich den Link an die gegebene Zahl ändern Augenzwinkern


MfG.
eotbc



Geschrieben von assasine am 16.02.2004 um 15:49:

 

wo muss ich das denn eintragen??

<?php
switch ($_GET['id'])
{
case 1: include("downloads.html"); break;
case 2: include("links.html"); break;
case 3: include("guestbook.html"); break;
default: include("home.html"); break;
}
?>

wo kommt der code hin?? in head die tabelle wo es erscheinen soll?? oder wo sonst??



Geschrieben von eotbc am 16.02.2004 um 19:04:

 

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
<?php
switch ($_GET['id'])
{
case 1: include("downloads.html"); break;
case 2: include("links.html"); break;
case 3: include("guestbook.html"); break;
default: include("home.html"); break;
}
?>


-> Das hier gehört dahin (<body>) wo die Includete Datei
(also Deine Tabelle) erscheinen soll! Augenzwinkern



Geschrieben von inde am 19.02.2004 um 21:13:

 

Zitat:
Original von LX
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
[massig HTML Quellcode]
<!-- Beginn der Navigation -->
<a href="index.php?id=0">Home</a><br>
<a href="index.php?id=1">Downloads</a><br>
<a href="index.php?id=2">Links</a><br>
<a href="index.php?id=3">Gätebuch</a><br>
<!-- Ende Navigation -->

[noch mehr HTML]

<!-- Beginn Content-Bereich -->
<?php
switch ($_GET['id'])
{
  case 1: include("downloads.html"); break;
  case 2: include("links.html"); break;
  case 3: include("guestbook.html"); break;
  default: include("home.html"); break;
}
?>
<!-- Ende Content-Bereich -->

[restlicher HTML-Code]




Aber ist es jetzt nicht sehr umständlich? Ich meine die Linkliste könnte man mithilfe eines Arrays ausgeben lassen

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
<?php
$menu = array ( "Home""Impressum""Bilder""Links");
);


for ($i=0;$i<count($menu);$i++) {
echo "<a href=\"$SELF?id=$i\">".$menu[$i]."</a><br>\n";
}
?>


Nur wäre doch jetzt eine gewisse "steifheit" in der Navigation gegeben, das Array $menu müsste für immer so bleiben wie es ist, da sonst, würde man die Reihenfolge ändern, sich die jeweilige ID ändert!
Falls man auf einer Unterseite (z.B. home.php) nun einen Link auf "bilder.php" setzen müsste...
code:
1:
<a href="index.php?id=2">Bilder</a>

würde sich das Ziel des Links verschieben, wenn man nun später zwischen "Home" und "Impressum" eine neue Seite einfügen wollte!
Unsre anfangs dynamische Seite ist undynamisch geworden! Wie ist dieses Problem zu lösen?

Anders würde sich die Sache darstellen wenn man anstatt einer Zahl einen String benutzen würde und diesen in das $menu Array einbauen würde:

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
<?php
$menu = array (
 array ("Home""home"),
 array ("Über diese Seite""about"),
 array ("Impressum""impr")
);

for ($i=0;$i<count($menu);$i++) {
echo "<a href=\"$SELF?p=".$menu[$i][1]."\">".$menu[$i][0]."</a>";
}

// viel HTML

include ($_GET['p'].".php"); // Die Datei wird eingefügt

?>


Ist jetzt aber wieder die anfangs angesprochene Sicherheitslücke gegeben?

Und noch etwas:
Die switch anweisung habe ich nicht ganz gecheckt:
Ich versuche mal zu erklären wie ich sie verstanden habe:
Für $id=1 wird case 1: angewandt;
Für $id=2 wird case 2: angewandt;
...
Für $id=n wird case n: angewandt;
Für !$id wird default: angewandt;

*EDIT*

Switchanweisung ist verstanden...



Geschrieben von max1mus am 20.02.2004 um 21:34:

 

Jo alles ganz nett, ich mache das meistens so;

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:

<?php
if(!$inc)
  $inc = "news";
  $inc = "./".$inc.".php";
include($inc);
?>



Geschrieben von inde am 21.02.2004 um 10:23:

 

Sorry, aber des versteh ich jetzt echt net ganz? Wo liegt da die Lösung des Problems?

Falls $inc leer ist, wird es auf "news" gesetzt, dann in nen anderen String eingebunden der dann mit include(); eingefügt wird...

wo ist da der Sinn?



Geschrieben von max1mus am 21.02.2004 um 12:43:

 

ganz einfach...

wenn du z.b. nur index.php aurufst willst du vielleicht auch was includen..
wenn das der Fall ist, wird $inc auf news gesetzt.

Falls aber $inc einen wert annimmt, z.b. index.php?inc=blub , dann wird

blub.php eingebunden.



Geschrieben von eotbc am 02.08.2004 um 12:58:

 

Tach!

Hab noch eine Frage zu folgendem Script:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
<?php
switch ($_GET['id'])
{
  case 1: include("downloads.html"); break;
  case 2: include("links.html"); break;
  case 3: include("guestbook.html"); break;
  default: include("home.html"); break;
}
?>


Wenn man hier zum Beispiel die ID 8 verwendet , die nicht defeniert ist wird ja die Default-Seite includet.
Was muss man noch hinzufügen, dass bei Eingabe einer falschen bzw. nicht definierten ID eine Art "ID-404-Seite" großes Grinsen Includet wird ?

Thx



Geschrieben von LX am 02.08.2004 um 13:32:

Achtung

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
<?php
switch ($_GET['id'])
{
  case 1: include("downloads.html"); break;
  case 2: include("links.html"); break;
  case 3: include("guestbook.html"); break;
  case 4: include("home.html"); break;
  default: include("id404.html"); break;
}
?>



Geschrieben von eotbc am 02.08.2004 um 13:47:

 

Tach!

Ne sowas meine ich nicht.
Die Default Sache muss so bleiben, damit wenn jemand keine ID eingibt auch die news geladen wird.

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
<?php
switch ($_GET['id'])
{
  default: include("news.html"); break;
  case 1: include("news.html"); break;
  case 2: include("links.html"); break;
  case 3: include("guestbook.html"); break;
}
?>



Geschrieben von LX am 02.08.2004 um 13:49:

Achtung

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
<?php
switch ($_GET['id'])
{
  case '': include("news.html"); break;
  case 1: include("news.html"); break;
  case 2: include("links.html"); break;
  case 3: include("guestbook.html"); break;
  default: include("id404.html"); break;
}
?>



Geschrieben von eotbc am 02.08.2004 um 15:53:

 

Tach!

Yo klappt wunderbar fröhlich

Danke Augenzwinkern


Forensoftware: Burning Board 2.3.6, entwickelt von WoltLab GmbH