Tom: Übergabewert stimmt nicht

Beitrag lesen

Hello,

Ich versteh immer noch nicht, was Du gemacht hast, und was das Problem ist.

Welches Umfeld?
Einstellungen?

Welche Eingabe, wie, und wo?
Welche Rückgabe, wann und wo?

ich denke du hast ja sicher gesehen das es darum geht ein forum zu bauen

Ok.
Ich sage hier und jetz erst einmal "STOPP"

Das von Henrik programmierte Forum ist augenscheinlich schon etwas älter.
Leider fehlen im Kopf der Fachartikel von SelfHTML ein "Haltbarkeitsdatum" und auch die Angabe der aktuellen Systemumgebung nebst typischer Konfigurationsdateien.

Zeilen wie

if( isset($eintrag))

$BACK_VARS=$HTTP_GET_VARS;

$HTTP_GET_VARS = quote_array($HTTP_GET_VARS);

und die Funktion

magic_quotes_fix.php

unter Berücksichtigung von MySQL >= 3.23.55  (wahrscheinlich auch schon davor)

ermutigen mich zu der Aussage:

BEVOR DIESES FORUM AN WEITERE USER VERTEILT WIRD, MUSS ES DEM STAND DER TECHNIK ANGEPASST WERDEN.

Um hier keinen falschen Eindruck entstehen zu lassen:
Als Henrik das Forum geschrieben hat, mag das alles Stand der technik gewesen sein.
Es bedeutet auch in seinen wesentlichen Punkten immer noch eine enorme Leistung.

Allerdings würde es ungefähr genauso viel Mühe kosten, Dir die notwendigen Einstellungen _und_ _deren_ _Konsequenzen_ für neuere Scripte zu erläutern, wie es kosten würde, dieses Forumsbeispiel auf einen _neueren_ (nicht den neuesten, aber einen gültigen) Stand zu brignen.

Vielleicht lässt sich das über Ostern machen. Ich weiß es nicht.

Du warst mit Deinen Ersetzungen schon auf dem richtigen Weg. Vielleicht machst Du einfach ein Bisschen weiter und mekdest Dich von Zeit zu Zeit?

Stichworte wären

  • register Globals ausschalten
  • alte "globale" Arrays ($HTTP_*_VARS) gegen neue "superglobale" ($_*) austauschen.
  • Global-Deklarationen innerhalb von Funktionen entfernen und durch Übergabeparameter
      oder Refernenzen ersetzen, wenn es nötig ist;
      viele der Global-Deklarationen werden durch Wecchsel zu den neuen "Superglobalen"
      ohnehin unnötig
  • Addsladhes ersetzen durch die zur Datenbank gehörige Funktion (z.B. mysql_real_escape_string() )

Viel Spaß bei Anmarkern der Aufgaben...

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

Tom

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