anpera.net

anpera.net

experimental server @home
Aktuelle Zeit: Mo 20 Nov, 2017 01:21

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 11 Beiträge ] 
Autor Nachricht
BeitragVerfasst: Sa 02 Sep, 2017 04:27 
Offline
Profi
Profi

Registriert: Do 22 Mai, 2008 09:08
Beiträge: 103
Geschlecht: Weiblich
LoGD: http://www.zumhexenkessel.de/LotgD
Hallo zusammen,

einiges hab ich schon gefunden um zumindest Startseitentechnisch diese Version ans Laufen zu bekommen, nach dem Login bekomme ich 3 Fehlermeldungen:

Warning: Illegal string offset 'name' in /www/htdocs/w009ae80/Hexenkessel/logd/login.php on line 4

Warning: Illegal string offset 'op' in /www/htdocs/w009ae80/Hexenkessel/logd/login.php on line 136

Warning: Cannot modify header information - headers already sent by (output started at /www/htdocs/w009ae80/Hexenkessel/logd/login.php:4) in /www/htdocs/w009ae80/Hexenkessel/logd/common.php on line 955
index.phpRedirected to index.php from login.php.

Trotz SuFu konnte ich nicht das passende finden was weiterhilft. Ich hoffe ihr habt einen Tip
Die Adresse ist:
http://www.zumhexenkessel.de/logd

Danke schonmal

_________________
Gruß Wiebke


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Sa 02 Sep, 2017 08:08 
Offline
Eingeweihter
Eingeweihter
Benutzeravatar

Registriert: Mo 01 Sep, 2008 10:29
Beiträge: 95
Wohnort: Niedersachsen
Geschlecht: Männlich
LoGD: http://www.sotbd.de/about.php?op=source
Moin,

es wäre sehr hilfreich zu erfahren, welche PHP Version bei dir auf dem Webserver seinen Dienst verrichtet.
Unabhängig davon, solltest du jedoch noch einige Anpassungen machen.

Suche [in ALLEN Dateien] und ersetze:
$HTTP_SERVER_VARS mit $_SERVER
$HTTP_GET_VARS mit $_GET
$HTTP_POST_VARS mit $_POST
$HTTP_COOKIE_VARS mit $_COOKIE

Deine Fehlermeldungen klingen für mich nach:
https://stackoverflow.com/questions/9869150/illegal-string-offset-warning-php

Was heißt das nun konkret ?
LoGD hat sich früher nicht um die korrekte Angabe von Arrayschlüsseln gekümmert, weshalb PHP früher nach einer Konstante gesucht hat, die den Namen des verwendeten Schlüssels trägt um deren Wert als Schlüssel zu verwenden und erst dann, wenn es keine passende gefunden hatte dazu überging den übergebenen Namen auch tatsächlich als Schlüssel zu verwenden. Du solltest daher dazu übergehen die Schlüssel ganz klar als Strings zu definieren, was sie ja letzten Endes sind. Sorry wenn das nu verwirrend klingt, aber es ist noch früh am Morgen ... Ich weiß nicht ob PHP das Verhalten in neueren Versionen angepasst hat, konkret bedeutet das folgendes:

Beispiel an deiner login.php
Code:
if ($HTTP_POST_VARS[name]!=""){
    if ($session[loggedin]){
[...]
}else if ($HTTP_GET_VARS[op]=="logout"){
   if ($session[user][loggedin]){


Sollte am Ende zu:
Code:
if ($_GET['name']!=""){
    if ($session['loggedin']){
[...]
}else if ($_GET['op']=="logout"){
   if ($session['user']['loggedin']){

werden.

Auffällig ist auch, dass sowohl das veraltete $HTTP_GET_VARS wie auch das neuere $_GET gleichzeitig zum Einsatz kommen, dass kann auch zu ziemlichen Problemen führen, denn laut Dokumentation handelt es sich dabei NICHT um die gleiche Variable.

Achja, was mir so aus dem Stegreif noch einfällt: In der lodge.php wäre $this durch $key oder einen anderen Variablennamen zu ersetzen. Das Ersetzen des Parameters in der date() Funktion hast du ja, soweit ich gesehen habe, schon vorgenommen.


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Sa 02 Sep, 2017 09:18 
Offline
Profi
Profi

Registriert: Do 22 Mai, 2008 09:08
Beiträge: 103
Geschlecht: Weiblich
LoGD: http://www.zumhexenkessel.de/LotgD
Vielen Dank - da hab ich ja zu tun :D
Es ist php 7 wenn ich mich nicht ganz täusche...
Wenn ich diese änderungen nun vornehme:

"$HTTP_SERVER_VARS mit $_SERVERersetzen"

dann läuft es? Hab ich das richtig verstanden?

Ich bin schon seit ein paar Tagen auf der Suche nach Lösungen und bin natürlich auch auf den ein oder andern Post bzgl php Uptates gestossen. Hab sicher noch nicht alles gemacht, aber einiges schon. Und arbeite weiter dran in der Hoffnung diese Version wieder ans Laufen zu bekommen. Aber woanders läuft sie ja auch noch - muss also möglich sein :)

_________________
Gruß Wiebke


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Sa 02 Sep, 2017 11:07 
Offline
Freak
Freak
Benutzeravatar

Registriert: Sa 16 Jul, 2005 22:40
Beiträge: 693
Wohnort: /var/server/home/castle
Geschlecht: Männlich
LoGD: http://www.kokoto.de/
Skype: Apfelschokowodkakekskuchen
Hallo,

natürlich ist es möglich aber es sind schon sehr sehr viele sachen ;) manche sind auch server abhängig :)

Du solltest auf jedenfall das komplette Changeslog hier bei anpera abarbeiten, dann alle Änderungen die du zu PHP 5.5/5.6 finden kannst. Da wären dann auch die Sachen dabei die oben genannt wurden mit den $_ Variablen.

Shaddar hat schon recht, dass man normalerweise alle ['user'] und sowas mit Single Quotes versehen sollte, aber man kann auch einfach die Warnung abschalten, wenn man das Error reporting anpasst denn sonst bist du alleine damit, wirklich lange beschäftigt.

Ich habe es früher so gemacht: wann immer ich an welchen vorbei kam wo es gefehlt hat, habe ich es hinzugefügt - also immer mal wieder ein paar eingefügt wenn ich grad an der Stelle / Datei was geändert habe :)

Allerdings habe ich es selbst noch nicht auf PHP 7 installiert, daher kann ich dir nicht sagen, was da evtl. noch für Probleme auftauchen die ich noch nicht lösen musste ;)

Grüße


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Sa 02 Sep, 2017 11:10 
Offline
Profi
Profi

Registriert: Do 22 Mai, 2008 09:08
Beiträge: 103
Geschlecht: Weiblich
LoGD: http://www.zumhexenkessel.de/LotgD
Also theoretisch kann ich mich einloggen - aber nu spinnt die session geschichte *seuftz* Sobald ich auf einloggen klicke kommt: Deine Sessionzeit ist abgelaufen. Bitte neu einloggen.
Hab ich hier auch schon nach gesucht - aber komme nicht weiter - da hänge ich nu auch schon ne Weile dran.
Ich mach das auch immer nach und nach wenn es irgendwo hapert das ich da dann dran arbeite, aber grundsätzlich muss ich ja erstmal reinkommen :D

_________________
Gruß Wiebke


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Sa 02 Sep, 2017 11:27 
Offline
Freak
Freak
Benutzeravatar

Registriert: Sa 16 Jul, 2005 22:40
Beiträge: 693
Wohnort: /var/server/home/castle
Geschlecht: Männlich
LoGD: http://www.kokoto.de/
Skype: Apfelschokowodkakekskuchen
Hallo,

vermutlich hast du die änderungen bezüglich Sessions mit Name und session start usw. nicht gemacht ;)

Das wäre eigentlich auch irgendwo in den änderungen zu php 5.5 zu finden, du solltest wirklich erstmal nochmal alles überprüfen vom changeslog und den php änderungen sonst wirds immer wieder rätselraten was du schon gemacht hast und was nicht.. oder du wendest dich einfach an jemanden, der eine lauffähige 0.9.7 hat :P


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Sa 02 Sep, 2017 11:46 
Offline
Profi
Profi

Registriert: Do 22 Mai, 2008 09:08
Beiträge: 103
Geschlecht: Weiblich
LoGD: http://www.zumhexenkessel.de/LotgD
Hm, meinst du in der common.php?
Code:
...
session_name("session");
session_set_cookie_params(0, dirname($_SERVER['PHP_SELF']), $_SERVER['HTTP_HOST']);
session_start();
$_SESSION["session"] = array();
function register_global(&$var){
    @reset($var);
    while (list($key,$val)=@each($var)){
        global $$key;
        $$key = $val;
...

_________________
Gruß Wiebke


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Sa 02 Sep, 2017 11:53 
Offline
Freak
Freak
Benutzeravatar

Registriert: Sa 16 Jul, 2005 22:40
Beiträge: 693
Wohnort: /var/server/home/castle
Geschlecht: Männlich
LoGD: http://www.kokoto.de/
Skype: Apfelschokowodkakekskuchen
Ich hab grad mal dein logd angeschaut (hab vorher immer nur den link angeklickt im profil der nicht ging ^^"), scheint als hättest du noch viel mehr probleme z. B. mit den Umaluten, der Kodierung usw...
Evtl. könnte dass dann damit zusammen hängen, aber im prinzip ja, diese änderungen meinte ich, allerdings solltest du deine Session nicht unbedingt "session" nennen sondern besser "hexenkessel" ;)

EDIT: apropo wieso machst du das: $_SESSION["session"] = array(); ... das leert ja die Session, das könnte also das problem sein, wieso du ausgeloggt wirst, ich habe diese passage dort nicht.


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Sa 02 Sep, 2017 12:06 
Offline
Profi
Profi

Registriert: Do 22 Mai, 2008 09:08
Beiträge: 103
Geschlecht: Weiblich
LoGD: http://www.zumhexenkessel.de/LotgD
Huhu, hm - die hab ich mein ich hier irgendwo gefunden...
Ich nehm sie mal raus...

_________________
Gruß Wiebke


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Sa 02 Sep, 2017 12:09 
Offline
Profi
Profi

Registriert: Do 22 Mai, 2008 09:08
Beiträge: 103
Geschlecht: Weiblich
LoGD: http://www.zumhexenkessel.de/LotgD
Vielleicht hatte ich es auch aus einem "scheinbar" funktionierenden Lotgd aus der Source *schäm*

_________________
Gruß Wiebke


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Sa 02 Sep, 2017 12:14 
Offline
Profi
Profi

Registriert: Do 22 Mai, 2008 09:08
Beiträge: 103
Geschlecht: Weiblich
LoGD: http://www.zumhexenkessel.de/LotgD
Tidus hat geschrieben:

EDIT: apropo wieso machst du das: $_SESSION["session"] = array(); ... das leert ja die Session, das könnte also das problem sein, wieso du ausgeloggt wirst, ich habe diese passage dort nicht.


Das war übrigens tatsächlich der Übeltäter :D Danke :) Manchmal schnallt man gar nix mehr :D

_________________
Gruß Wiebke


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 11 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast


Du darfst keine neuen Themen in diesem Forum erstellen
Du darfst keine Antworten zu Themen in diesem Forum erstellen
Du darfst deine Beiträge in diesem Forum nicht ändern
Du darfst deine Beiträge in diesem Forum nicht löschen
Du darfst keine Dateianhänge in diesem Forum erstellen

Suche nach:
Gehe zu:  
cron
POWERED_BY
Deutsche Übersetzung durch phpBB.de
anpera.net - Impressum