Includes?

fiseke

B1G-Software-Kunde
Hi liebe Leuts,
ich habe da ein Kleines Problem und zwar ist es so das ich mit PHP und Includes arbeite, nach nem Server-Wechsel meines Hosters habe ich
ein Problem mit folgenden Include, er macht nicht mehr das was er soll.
vllt. habt ihr ein Rat oder könnt mir ein anderen Include vorschlagen. wäre Klasse:

Code:
<?php 
if (!isset($action)) { 
$action = "start.php"; 
} 
include($action); 
?>

für die Verlinkung nurze ist dort

Code:
index.php?action=seite.php

Vorher hat alles so geklappt.

Hoffe mir kann jemand helfen oder nen Tipp geben.

lg
Frank
 
Wenn du so was machst, kann jeder Spinner Code auf deinem Webspace ausführen und deine ganze Webseite löschen... Man kann z.B. ?action=http://url/code.txt machen und schon wird code.txt auf deinem Server ausgeführt...

Mache es also so, dann sollte es auch klappen:

PHP:
<?php 
$action = ereg_replace("([^a-zA-Z]*)", "", $_REQUEST['action']);
if (!isset($action)) { 
$action = "start.php"; 
} 
include($action); 
?>
 
Stimmt, wen du es also unbedingt so machen willst solltes du des eher so machen:
PHP:
<?php 
$action = ereg_replace("([^a-zA-Z]*)", "", $_REQUEST['action']); 
if ($_REQUEST['action']!= (login.php || mail.php || was halt sonst noch)) { 
$action = "start.php"; 
} 
include($action); 
?>
 
danke für die beiden Tipps.

Lerne gerade gaaaanz langsam PHP. hab hier zwar so nen tolles Buch aber um das alles zu verstehen muss ich es glaube ich 3 mal lesen lol

Bin aber guter Hoffnung alles soweit hinzubekommen.

lg
Frank

[EDIT]
Habe es gerade mit dem oben ausprobiert, zum verlinken bleibt doch

Code:
index.php?acrion=seite.php

oder muss ich hier auch was ändern?
 
Last edited:
funtax said:
Stimmt, wen du es also unbedingt so machen willst solltes du des eher so machen:
PHP:
<?php 
$action = ereg_replace("([^a-zA-Z]*)", "", $_REQUEST['action']); 
if ($_REQUEST['action']!= (login.php || mail.php || was halt sonst noch)) { 
$action = "start.php"; 
} 
include($action); 
?>
Mal ein ähnlicher Code:
PHP:
<?
$page = $_REQUEST['page'];
if($page = "home") {
include('/home/www/web2/html/portal/home.php');
}
elseif($page = "downloads") {
include('/home/www/web2/html/portal/downloads.php');
}
else {
include('/home/www/web2/html/portal/home2.php');
}
?>
wenn ich jetzt "index.php?page=downloads" aufrufe, sollte ja eigentlich /home/www/web2/html/portal/downloads.php includiert werden... wird aber nicht! Egal was ich eingebe, der macht immer "include('/home/www/web2/html/portal/home.php');" :(
 
Wenn du zwei Variablen vergleichst, musst du '==' nehmen, nicht '=', das wäre eine Zuweisung.
 
patrick said:
Wenn du zwei Variablen vergleichst, musst du '==' nehmen, nicht '=', das wäre eine Zuweisung.
Ok, Danke :]
Habs jetzt mal so behoben:
PHP:
<?
$page = $_REQUEST['page'];
@include('/home/www/web2/html/portal/config.inc.php');
mysql_connect($_4U_DBCONFIG['server'], $_4U_DBCONFIG['user'], $_4U_DBCONFIG['password']) or die ("Keine Verbindung moeglich");
mysql_select_db($_4U_DBCONFIG['database']);
$abfrage = "SELECT titel FROM 4u_titel WHERE site = '" . $page. "'";
$get = @mysql_query($abfrage);
$titel = @mysql_result($get, 0);
if($titel == "0") {
$titel = "Home";
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
 <head>
  <title><? echo "UNC4you - " . $titel; ?></title>
  <link href="templates/newDESIGN/style.css" rel="stylesheet" type="text/css" />
  <link rel="SHORTCUT ICON" href="http://www.emailpoint.de/favicon.ico" type="image/ico" />
  <script src="lib/common.js" language="javascript" type="text/javascript"></script>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
 </head>
<body>
<?php
  if (!isset($_GET["page"]))
  {
    $page = "home";
  } else {
    $page = $_GET["page"] . ".php";
  }
  
  $page = basename($page); //Diese Zeile sorgt dafür, dass Pfadangaben entfernt werden

  if(!file_exists("$page"))
  {
    include('/home/www/web2/html/portal/fehler.php');
  } else {
    include('/home/www/web2/html/portal/' . $page);
  }
?>
 
Sowas finde ich scheeen...
wie bei mir ganz am Anfang.. und dann weiß man immer mehr..und mehr..und mehr *g* :tongue:
 
Back
Top