Seite 1 von 1

Warum? -> Script auf ohost.de geht, woander nicht...

Verfasst: 09.01.2007 23:28
von slaindevil
Hey ihr,

ich habe mir ein paar kleine Scripts mit Zugriff auf eine MySQL Datenbank geschrieben. Die PHP Scripts lesen nur Daten aus und Schreiben sie wieder hin, ein paar if's und n paar while.

Nichts großes oder rechenaufwendiges.

Das Ganze hatte ich auf OHost.de gehostet, da lief es problemlos.

Jetzt habe ich es bei Sysprovide.de hochgeladen, aber die Scripts funktionieren nicht mehr richtig. Eine Submitform gibt beim Submit Drücken die Daten nicht mehr weiter usw...

Woran kann das liegen? An der PHP Version? Bei Ohost.de wars 4.4.4 wenn ich mich nicht irre.

Sysprovide hat ne neuere Version, 5.1. irgendwas, man kann aber auf 4.4.4. umstellen, was nichts gebracht hat :(

Kann mir jemand helfen?

Viele Grüße,

Edit: Hier mal ein Beispiel für einen Form Code:

Code: Alles auswählen

<form method="post" action="addlocation.php">
<P>Möchtest du noch eine Beschreibung zu dir abgeben?</p>
<P><input type="text" id="usertext" name="usertext" maxlength="60" size="70">
<input type="hidden" value="384" name="posx"><input type="hidden" value="288" name="posy">
<input type="hidden" value="2" name="userid"><input type="hidden" value="spider" name="username">
<P><input type="submit" name="Send" value="Ab damit!"></P>
</form>
Die Datei wo der Code drin steht ist addlocation.php. Also der submit Button lädt die Seite neu. Vor der Form wird überprüft von posx und posy größer 0 sind und falls ja, wird die Form nicht dargestellt, sondern die Werte ausgewertet. Wie gesagt, bei Ohost hat das tadellose funktioniert :(

Da die Daten posx und posy, aber auch username nicht weitergegeben werden, wird das Formular immer wieder angezeigt, und nichts ausgewertet....

Verfasst: 10.01.2007 00:33
von Pyramide
Glaskugel sagt es liegt an unsauberer Programmierung in Kombination mit einer unterschiedlichen register_globals Einstellung.

Alternativ wäre der PHP-Code hilfreich (KB:datei).

Verfasst: 10.01.2007 00:57
von slaindevil
Mh... Danke das du die Glaskugel hast Sprechen lassen.

Eine unsaubere Programmierung ist es wirklich, weil ich das Script nur so schnell runtergeschrieben hab und es ganz toll fand, das es ging ;)

Ich hab den Kram aber mal bereitgestellt:

Diese Datei wird gestartet und leitet per href an die andere PHP weiter.
Die Werte die per .php?x&y weitergegeben werden, werden auch empfangen:
http://members.tripod.de/slaindevil/usermap.php.txt

Die andere PHP:
http://members.tripod.de/slaindevil/addlocation.php.txt

Grüße an dich, die Community und natürlich die Glaskugel...

Verfasst: 10.01.2007 12:53
von Banger
Es liegt, wie Pyramide schon richtig geraten hat, an einer anderen Einstellung für "register_globals" - nein, eigentlich nicht daran, sondern am sehr schlechten Code.

Tasks:
  1. Du willst Dich mit $_GET, $_POST bzw. $_REQUEST auseinandersetzen.
  2. Du willst von außen übergebene Daten validieren, bevor Du sie ungeprüft in einem SQL-Statement verwendest.

Verfasst: 10.01.2007 16:08
von slaindevil
Ist der Code wirklich so unterirdisch? :((

Was ist denn, genau, so extrem schlecht? :(

Ok, also ich soll mir $_GET, $_POST und $_REQUEST angucken und die übergebene Daten validieren... Hab ich das richtig verstanden?

Verfasst: 10.01.2007 16:29
von Jan500
slaindevil hat geschrieben: Ok, also ich soll mir $_GET, $_POST und $_REQUEST angucken und die übergebene Daten validieren... Hab ich das richtig verstanden?
ja...wieso nutzt du nicht das phpbb template system, wenn du schon die sachen includest?

Jan

Verfasst: 10.01.2007 16:54
von slaindevil
Weil ich mich damit noch nicht auseinander gesetzt hatte.

Die Scripts werden in einem Javascript Popup angezeigt. Das Einzige was ich in die Templates eingefügt hab, waren die Links zu den Popups...

Dann schreib ich mir mal ein Template dafür. Naja, ob das was wird, ich glaubs net :(

Aber wenn ich das Ganze doch als Template hinkriegen sollte, also wenn ich es dem phpBB System nachproggen, dann hab ich ne größere Chance, das es läuft?

Verfasst: 10.01.2007 17:28
von Jan500
nö das nicht... das template hat ja nichts mit php zutun... das ist einfach sauberer php und tpl getrennt ( und wenn du schon die ganzen phpbb dateien includest und das session system nutzt kannste das ja gleich so machen :D ...guck dazu mal KB:phpbb_seite )

das es net läuft hat mit dem php code zutun.. wie gesagt mach dich schlau in den sachen $_GET, $_POST usw...

Jan

Verfasst: 11.01.2007 16:49
von slaindevil
Okay! Danke für die Hilfe!