Global benannte Injektionsstellen

Durch die globale Benennung können auch Inhalte für mehrere Seiten verwendet werden. Globale Namen fangen mit einem # an.

Beispiel:

Die Datei angebot.php wird um News erweitert, die auch auf anderen Seiten gezeigt werden sollen:

<?php

include_once($_SERVER['DOCUMENT_ROOT']."/inc/components/header.php");
include_once($_SERVER['DOCUMENT_ROOT']."/cms/m_inj.php");

?>

<div class="top">
<?php cal_inj('#news'); ?>
</div>

<div class="l">
<?php cal_inj('left'); ?>
</div>

<div class="cont">
<?php cal_inj(); ?>
</div>

<div class="r">
<?php cal_inj('right'); ?>
</div>

<?php

include_once(DOCUMENT_ROOT."inc/components/footer.php");

?>

Die Datei jobs.php zeigt auch die News, sonst individuellen Inhalt, hat aber zufällig denselben PHP-Code, den wir deshalb nicht wiederholen.

Es werden damit nun 7 Injektionsstellen verwendet

  • news (global benannt, erscheint auf beiden Seiten),
  • p:/angebot.php,
  • p:/angebot.php|left,
  • p:/angebot.php|right,
  • p:/jobs.php,
  • p:/jobs.php|left und
  • p:/jobs.php|right.