ich hab folgendes Problem:
ich weiß, dass im folgenden PHP Script was nicht richtig funktioniert,
allerdings kann ich den Fehler nicht selbst suchen, da dieser nur auf nem anderen Server auftritt (auf dem läuft PHP5!)
Hier mal der PHP-Code:
Ihr müsst den jetzt nicht verstehen, oder so.
Ihr solltet mir nur folgende Fragen beantworten:
Könnte es sein, dass der Script wegen irgendwas in PHP5 nicht läuft, denn ich hab den selbst bisher nur auf PHP4 getestet?
Oder könnte es eine php.ini Einstellung sein, die einen Fehler in diesem Script verursachen könnte?
Wie gesagt auf meinem Server läufts eben.
Schnelle Hilfe wäre extrem wichtig.
Danke.
ich weiß, dass im folgenden PHP Script was nicht richtig funktioniert,
allerdings kann ich den Fehler nicht selbst suchen, da dieser nur auf nem anderen Server auftritt (auf dem läuft PHP5!)
Hier mal der PHP-Code:
PHP-Code:
<?php
function decrypt($result_id, $id2, $step) {
return $result_id-$id2+$step;
}
require_once("config.php");
mysql_connect($GLOBALS["mysql_server_adress"], $GLOBALS["mysql_user"], $GLOBALS["mysql_password"]);
mysql_select_db($GLOBALS["mysql_databasename"]);
if(isset($_POST["time"])) {
$num = mysql_num_rows(mysql_query("SELECT step FROM game_session WHERE time='".$_POST["time"]."'"));
if($num == 1) {
$session_object = mysql_fetch_object(mysql_query("SELECT * FROM game_session WHERE time='".$_POST["time"]."'"));
if($session_object->step < $GLOBALS["needed_requests"]) {
if(isset($_POST["session_id"])) {
if(decrypt($_POST["session_id"], $session_object->new_id, $session_object->step) == $session_object->session_id) {
mt_srand((double)microtime()*1000000);
$new_id = mt_rand(100000, 999999);
$new_step = $session_object->step + 1;
mysql_query("UPDATE game_session SET step='".$new_step."', session_id='".$_POST["session_id"]."', new_id='".$new_id."' WHERE time='".$_POST["time"]."'");
echo "result=ok&new_id=".$new_id;
}
else {
echo "result=nok";
}
}
else {
echo "result=nok";
}
}
else {
if(isset($_POST["session_id"]) && isset($_POST["points"]) && isset($_POST["nick"]) && isset($_POST["email"])) {
$_POST["points"] = decrypt($_POST["points"], $session_object->new_id, $GLOBALS["needed_requests"]);
mysql_query("INSERT INTO highscore (nick, points, email, time) VALUES ('".$_POST["nick"]."', '".$_POST["points"]."', '".$_POST["email"]."', UNIX_TIMESTAMP())");
}
else {
echo "result=nok";
}
}
}
else {
echo "result=nok";
}
}
else {
echo "result=nok";
}
?>
Ihr solltet mir nur folgende Fragen beantworten:
Könnte es sein, dass der Script wegen irgendwas in PHP5 nicht läuft, denn ich hab den selbst bisher nur auf PHP4 getestet?
Oder könnte es eine php.ini Einstellung sein, die einen Fehler in diesem Script verursachen könnte?
Wie gesagt auf meinem Server läufts eben.
Schnelle Hilfe wäre extrem wichtig.
Danke.
Kommentar