Tom: session_register() beseitigen

Hello,

nun knabber ich hier immer noch an der Umstellung und Ergänzung einer vorhandenen Applikation.
Die wurde mit Session_Register = on erstellt. Das soll nicht so bleiben. An den diversen Stellen sind die Scripte injizierbar.

Außerdem wurde zur Definition von Grundvariablen mit Classes gearbeitet.
Die ganze Klasse (enthält nur einen "Record", also nuir Eigenschaften) wird dann mittels session_register(instanz) zur Speicherung angemeldet.

Wenn ich jetzt an einer Stelle was anfasse, stürzt das ganze Kartenhaus zusammen.
Was passiert, wenn ich die alten session_register() fürs Erste drin stehen lasse, und für die Ergänzugen trotzdem mit $_SESSION arbeite?

Hat von Euch schon mal jemand so einen ekligen Fall bearbeitet, um mir sagen zu können, was ich keinesfalls tun sollte und warum nicht?

Ich ahne ja schon Schreckliches!

Harzliche Grüße aus http://www.annerschbarrich.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau
  1. Hallo Tom,

    ich fürchte es wird Dir nichts anderes übrig bleiben, als per File-Search den ganzen alten Code ausfindig zu machen und mit den neuen Methoden zu ersetzen. Die Config-Klasse finde ich gar nicht so schlimm - die kann man mit den neuen PHP5 getter / setter Methoden gut aufwerten. Wenn alle Änderungen drin sind wird es sehr anstrengend mit nem Debugger alles zum Laufen zu bringen...

    Falls es eine größere Applikation ist, wäre evtl eine Testsuite hilfreich, die alle Funktionen checkt - sollte man natürlich vorher schreiben und an der alten Version testen ;)

    Viele Grüße,
    Michael

    PS: Hatte dich mal zu OpenBC eingeladen, aber es kam keine Reaktion :( Ich will in Braunschweig eine PHP User Group gründen - hast Du evtl Interesse? Auch andere Braunschweiger sind natürlich herzlich eingeladen :) Internetaddy ist: www.phpug-braunschweig.de - ist aber noch nix drauf ;)

    --

    <img src="http://www.nailware.de/images/nailware_logo.jpg" border="0" alt="">
    --
    <img src="http://www.nailware.de/images/no_epatents.gif" border="0" alt="">
    Online Petitionen gegen Software Patente:
    http://petition.eurolinux.org/index_html?LANG=de
    1. Hello,

      ich fürchte es wird Dir nichts anderes übrig bleiben, als per File-Search den ganzen alten Code ausfindig zu machen und mit den neuen Methoden zu ersetzen. Die Config-Klasse finde ich gar nicht so schlimm - die kann man mit den neuen PHP5 getter / setter Methoden gut aufwerten. Wenn alle Änderungen drin sind wird es sehr anstrengend mit nem Debugger alles zum Laufen zu bringen...

      Ich befürchte das auch.
      Vor allem, weil von einem Include ins andere verzweigt wird, und die Aufrufe der Module alle mit Get-Parametern geschehen.
      Und dann finde ich in Funktionen auch noch solche netten Sachen wie

      if($id == standard)        # Eine Konstante dieses Namens ist nirgendwo definiert
        {
          # ...
           $GLOBALS["project"]->id = $p->projectid;
          # ...
        }

      Kann ich da wohl bedenkenlos

      $_SESSION['project']->id = $p->projectid;

      draus machen?
      Ich habe das Objekt 'project' schon in $_SESSION verfrachet.

      PS: Hatte dich mal zu OpenBC eingeladen, aber es kam keine Reaktion :( Ich will in Braunschweig eine PHP User Group gründen - hast Du evtl Interesse? Auch andere Braunschweiger sind natürlich herzlich eingeladen :) Internetaddy ist: www.phpug-braunschweig.de - ist aber noch nix drauf ;)

      Das habe ich gelesen, finde ich auch sehr gut. Aber ich sitze ja nun hier im Harz und komme nur selten nach Braunschweig runter. Wir könnten das aber auch hier in der Firma machen. Da wird sowieso ein Schulungsraum eingereichtet, der dazu zur Verfügung steht. Und billige Unterkünft gibt es hier zu Hauf. Dann könnte man mal ein Wochenende draus machen.

      Mich würde im Moment besonders das Thema "OOP unter PHP 5" interessieren. Da kann ich etwas Training und Gedankenaustausch noch gebrauchen.

      Harzliche Grüße aus http://www.annerschbarrich.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      Nur selber lernen macht schlau