xampp und 4images ( bilder gallery)

Irgendwelche Probleme mit XAMPP für Windows? Dann ist hier genau der richtige Ort um nachzufragen.

xampp und 4images ( bilder gallery)

Postby Hawker » 30. May 2016 17:25

hallo habe mir vor ein paar tagen xampp zugelegt um meine homepage vorab zu bearbeiten
jetzt habe ich ein kleines / großes problem
immer wenn ich mich auf der hp versuche einzuloggen bekomme ich diese fehlermeldung
Fehler: Beschädigte Inhalte
Die Seite, die Sie anzusehen versuchen, kann nicht angezeigt werden, da ein Fehler in der Datenübertragung festgestellt wurde.
Die Seite, die Sie anzusehen versuchen, kann nicht angezeigt werden, da ein Fehler in der Datenübertragung festgestellt wurde.
Bitte kontaktieren Sie die Website-Betreiber, um sie über dieses Problem zu verständigen.

habe schon versucht herrauszufinden woran dies liegen könnte und denke das es an dem redirect in den php files liegt

login.php
Code: Select all
<?php

$main_template = 0;

$nozip = 1;
define('ROOT_PATH', './');
include(ROOT_PATH.'global.php');
require(ROOT_PATH.'includes/sessions.php');

$error = 0;
if ($user_info['user_level'] != GUEST || empty($HTTP_POST_VARS['user_name']) || empty($HTTP_POST_VARS['user_password'])) {
  if (!preg_match("/index\.php/", $url) && !preg_match("/login\.php/", $url) && !preg_match("/register\.php/", $url) && !preg_match("/member\.php/", $url)) {
    redirect($url);
  }
  else {
    redirect("index.php");
  }
}
else {
  $user_name = trim($HTTP_POST_VARS['user_name']);
  $user_password = trim($HTTP_POST_VARS['user_password']);
  $auto_login = (isset($HTTP_POST_VARS['auto_login']) && $HTTP_POST_VARS['auto_login'] == 1) ? 1 : 0;

  if ($site_sess->login($user_name, $user_password, $auto_login)) {
    if (!preg_match("/index\.php/", $url) && !preg_match("/login\.php/", $url) && !preg_match("/register\.php/", $url) && !preg_match("/member\.php/", $url)) {
      redirect($url);
    }
    else {
      redirect("index.php");
    }
  }
  else {
    $error = $lang['invalid_login'];
  }
}
if ($error) {
  $main_template = "error";
  include(ROOT_PATH.'includes/page_header.php');
  show_error_page($error);
}
?>

includes/funktions.php (ausschnitt)
Code: Select all
function redirect($url) {
  global $script_url, $site_sess;
  if (strpos($url, '://') === false) {
    $url = $script_url.'/'.$url;
  }
  $location = @preg_match('/Microsoft|WebSTAR|Xitami/', getenv('SERVER_SOFTWARE')) ? 'Refresh: 0; URL=' : 'Location: ';
  if (is_object($site_sess)) {
    $url = $site_sess->url($url, "&");
  }
  header($location.$url);
  exit;
}


meine frage ist jetzt eigentlich ob ich noch irgend was in apache einstellen muss damit dieser redirect ohne probleme funktionier
denn auf dem eigentlichen web server klappt das ohne probleme
danke schonmal an alle die versuchen zu helfen
Hawker
 
Posts: 2
Joined: 30. May 2016 17:10
XAMPP version: 3.2.2
Operating System: win 10

Re: xampp und 4images ( bilder gallery)

Postby Nobbie » 31. May 2016 10:09

Hawker wrote:meine frage ist jetzt eigentlich ob ich noch irgend was in apache einstellen muss damit dieser redirect ohne probleme funktionier


Nein, genau genommen führt der Browser den Redirect durch, Apache schickt nur die entsprechenden Headerdaten an den Browser.

Mir fällt wohl auf Anhieb auf, dass das Script uralt ist und mit den Variablen HTTP_POST_VARS arbeitet, die werden schon seit Ewigkeiten nicht mehr benutzt, ob PHP die überhaupt noch pflegt (eine Zeit lang gab es irgendeinen Parameter in php.ini, mit dem man das steuern konnte), weiß ich nicht, das ist so wahnsinnig lange her, dass ich das ad hoc nicht sagen kann. Schreib mal ein Testscript oder schreibe direkt in das obige Script einen echo-Befehl, der die Inhalte der Variablen ausgibt, ob da überhaupt etwas ankommt. Bzw. gib das mal in Google ein (HTTP_POST_VARS PHP5 oder auch PHP7), was dazu im Internet steht.
Nobbie
 
Posts: 8772
Joined: 09. March 2008 13:04

Re: xampp und 4images ( bilder gallery)

Postby Hawker » 31. May 2016 11:25

hallo habe die variablen mal geänder brachte aber keinen erfolg
habe mich natürlich im netz weiter schlau gemacht und habe nun dieses hier gefunden
header("Location: index.php");
header("Location: $url");
Code: Select all
<?php

$main_template = 0;

$nozip = 1;
define('ROOT_PATH', './');
include(ROOT_PATH.'global.php');
require(ROOT_PATH.'includes/sessions.php');

$error = 0;
if ($user_info['user_level'] != GUEST || empty($_POST['user_name']) || empty($_POST['user_password'])) {
  if (!preg_match("/index\.php/", $url) && !preg_match("/login\.php/", $url) && !preg_match("/register\.php/", $url) && !preg_match("/member\.php/", $url)) {
    header("Location: $url");
  }
  else {
    header("Location: index.php");
  }
}
else {
  $user_name = trim($_POST['user_name']);
  $user_password = trim($_POST['user_password']);
  $auto_login = (isset($_POST['auto_login']) && $_POST['auto_login'] == 1) ? 1 : 0;

  if ($site_sess->login($user_name, $user_password, $auto_login)) {
    if (!preg_match("/index\.php/", $url) && !preg_match("/login\.php/", $url) && !preg_match("/register\.php/", $url) && !preg_match("/member\.php/", $url)) {
      header("Location: $url");
    }
    else {
    header("Location: index.php");
    }
  }
  else {
    $error = $lang['invalid_login'];
  }
}
if ($error) {
  $main_template = "error";
  include(ROOT_PATH.'includes/page_header.php');
  show_error_page($error);
}
?>

habe jetzt gerade in die global.php reingeschaut was er da so alles aden tut
Code: Select all
if (!isset($HTTP_GET_VARS)) {
  $HTTP_GET_VARS    = &$_GET;
  $HTTP_POST_VARS   = &$_POST;
  $HTTP_COOKIE_VARS = &$_COOKIE;
  $HTTP_POST_FILES  = &$_FILES;
  $HTTP_SERVER_VARS = &$_SERVER;
  $HTTP_ENV_VARS    = &$_ENV;
}
... und weiter unten
@include_once(ROOT_PATH.'lang/english/main.php');
include_once(ROOT_PATH.'includes/constants.php');
include_once(ROOT_PATH.'includes/functions.php');


so funktioniert der login wieder jetzt stellt sich mir aber die frage warum muss ich das so in der testumgebung machen ?
anscheinend greif die login.php nicht auf die functions.php zu

das funktionier aber auf dem online server bei (strato) ohne probleme
Hawker
 
Posts: 2
Joined: 30. May 2016 17:10
XAMPP version: 3.2.2
Operating System: win 10

Re: xampp und 4images ( bilder gallery)

Postby Nobbie » 31. May 2016 12:07

Hawker wrote:so funktioniert der login wieder jetzt stellt sich mir aber die frage warum muss ich das so in der testumgebung machen ?
anscheinend greif die login.php nicht auf die functions.php zu

das funktionier aber auf dem online server bei (strato) ohne probleme


Weil wahrscheinlich bei Strato eine andere (ältere?!) PHP Version installiert ist und außerdem sicherlich eine andere Konfiguration (php.ini) benutzt wird als bei Xampp. Das müßte man ziemlich tiefgreifend analysieren um zu ermitteln, was genau die Unterschiede sind und welche Auswirkungen das hat. Dazu kommen möglicherweise noch andere Pfadnamen sowieso Domainnamen, ich finde es wenig überraschend, dass sich die Serverumgebungen entsprechend unterschiedlich verhalten.
Nobbie
 
Posts: 8772
Joined: 09. March 2008 13:04

Re: xampp und 4images ( bilder gallery)

Postby Altrea » 31. May 2016 12:32

Die HTTP_ Variablen sind aber auch uralt.
Seit PHP 4.1 wird empfohlen die Superglobalen Variablen $_POST und $_GET zu verwenden.
We don't provide any support via personal channels like PM, email, Skype, TeamViewer!

It's like porn for programmers 8)
User avatar
Altrea
AF Moderator
 
Posts: 8294
Joined: 17. August 2009 13:05
XAMPP version: several
Operating System: Windows 10 Pro x64


Return to XAMPP für Windows

Who is online

Users browsing this forum: No registered users and 8 guests