Nach Bestätigung wieder zurück
HiHo,
Jetzt mal einen dicke Knackwurst, den das was ich wissen möchte ich unter Garantie nicht einfach...
In dem folgenden Code wird ein Gebäude gebaut ,(built.html + built.php) wenn dieses Gebäude gebaut wird wird die Bauliste nicht mehr angezeigt, sondern ein leeres Fenster mit dem Countdown und dem abbrechen Button (der nur für 1 sek da ist). Ich möchte aber, das genau dies danach passiert, und der Countdown (time_page.html) einfach nur in dem Kästchen steht wo vorher der Bauen und Abriß Button (Built_bit.html) war.
Ich habe dies mit ----- gekennzeichnet, nach der Reiehnfolge wie sie oben in Frame stehen und mit einigen Klammern (Siehe Oben) gekennzeichnet damit der Code besser zu verstehen ist.
Da dies einige Stufen zu hoch für mich ist hoffe ich auf Hilfe
Fangen wir an mit den Cods:
BUILT.PHP
[php:1:2153ea0372]<?PHP
$filename="build.php";
require("./global.php");
if(isset($_REQUEST['action'])) $action=$_REQUEST['action'];
else $action="main";
if(!isset($_SESSION['userid'])) error_page("Bitte logge dich ein!");
/** check option active/deactive **/
if($op_build_active==0) {
error_page("Das Bauen wurde von dem Administrator deaktiviert!");
exit();
}
if($action=="main") {
$requesttime=$userdata['buildtime']-time();
if($requesttime>0) {
time_page("Auftrag",getRassenName("b".$userdata['bid'])." im Auftrag",$requesttime,"build");
}
elseif($requesttime<=0 && $userdata['bid']!=0) {
$result=$db->query("SELECT * FROM cc".$n."_buildings WHERE bid='".$userdata['bid']."'");
$row=$db->fetch_array($result);
$db->query("UPDATE cc".$n."_countries SET ".$row['table']."=".$row['table']."+'1', bid='0' WHERE islandid='".$userdata['islandid']."'");
header("LOCATION: build.php?cxid=$sid");
exit();
}
$result=$db->query("SELECT * FROM cc".$n."_buildings ORDER BY p ASC");
while($row=$db->fetch_array($result)) {
$time2build=btime(($row['time']*($userdata[$row['table']]+1)));
$size=$userdata[$row['table']];
$row['gold']=$row['gold']*($userdata[$row['table']]+1);
$row['stone']=$row['stone']*($userdata[$row['table']]+1);
$row['exp']=$row['exp']*($userdata[$row['table']]+1);
$row['oil']=$row['oil']*($userdata[$row['table']]+1);
$row['name']=getRassenName("b".$row['bid']);
$time02=($size+1)*$row['time'];
$time2=date("H:i:s", $time02);
eval ("\$build_bit .= \"".$tpl->get("build_bit")."\";");
}
eval("\$tpl->output(\"".$tpl->get("build")."\");");
exit();
}
if($action=="build") {
$bid=intval($_GET['bid']);
if(!$bid) {
error_page("Fehlerhaftes Gebäde!");
exit();
}
$result=$db->query("SELECT * FROM cc".$n."_buildings WHERE bid='$bid'");
$row=$db->fetch_array($result);
if($row['size']>$userdata['size']-$userdata['usesize']) {
error_page("Auf dem Land ist kein Platz mehr vorhanden!");
exit();
}
if($userdata['towncenter']<$row['require1'] || $userdata['pub']<$row['require2']) {
error_page("Du kannst dieses Gebäude noch nicht bauen!");
exit();
}
$gold=$row['gold']*($userdata[$row['table']]+1);
$stone=$row['stone']*($userdata[$row['table']]+1);
$exp=$row['exp']*($userdata[$row['table']]+1);
$oil=$row['oil']*($userdata[$row['table']]+1);
$btime=time()+($row['time']*($userdata[$row['table']]+1));
if($userdata['gold']>=$gold && $userdata['stone']>=$stone && $userdata['exp']>=$exp && $userdata['oil']>=$oil && $userdata['bid']==0) {
$db->query("UPDATE cc".$n."_countries SET bid='$bid', gold=gold-'$gold', stone=stone-'$stone', oil=oil-'$oil', exp=exp-'$exp', buildtime='$btime', isbuilding='1', usesize=usesize+'$row[size]' WHERE islandid='".$userdata['activeid']."'");
header("LOCATION: build.php?cxid=$sid");
exit();
}
error_page("nicht genug Ressource vorhanden!");
exit();
}
if($action=="remove") {
$bid = intval($_REQUEST['bid']);
if(!$bid) {
error_page("Fehlerhafter Seitenaufruf!");
}
$result=$db->query("SELECT * FROM cc".$n."_buildings WHERE bid='$bid'");
$row=$db->fetch_array($result);
if($userdata[$row['table']]==0) {
error_page("Dieses Gebäude ist schon Stufe 0!");
}
if($userdata['usesize']==0) {
error_page("Die genutze Baufläche entspricht schon 0, ein weiterer Abriß ist nicht möglich!");
}
$db->query("UPDATE cc".$n."_countries SET usesize=usesize-'".$row['size']."', $row
=$row
-'1' WHERE islandid='".$userdata['activeid']."'");
header("LOCATION: build.php");
exit();
}
if($action=="del") {
$bid=intval($_GET['bid']);
$result=$db->query("SELECT * FROM cc".$n."_buildings WHERE bid='$bid'");
$row=$db->fetch_array($result);
$gold=($row['gold']*($userdata[$row['table']]+1))/3;
$stone=($row['stone']*($userdata[$row['table']]+1))/3;
$exp=($row['exp']*($userdata[$row['table']]+1))/3;
$oil=($row['oil']*($userdata[$row['table']]+1))/3;
$db->query("UPDATE cc".$n."_countries SET bid='0', gold=gold+'$gold', stone=stone+'$stone', oil=oil+'$oil', exp=exp+'$exp', buildtime='0' WHERE islandid='".$userdata['activeid']."'");
header("LOCATION: build.php$SID_1");
exit();
}
?>
BUILT.HTML
BUILT_BIT.HTML
TIME_PAGE.HTML
[/php:1:2153ea0372]
HiHo,
Jetzt mal einen dicke Knackwurst, den das was ich wissen möchte ich unter Garantie nicht einfach...
In dem folgenden Code wird ein Gebäude gebaut ,(built.html + built.php) wenn dieses Gebäude gebaut wird wird die Bauliste nicht mehr angezeigt, sondern ein leeres Fenster mit dem Countdown und dem abbrechen Button (der nur für 1 sek da ist). Ich möchte aber, das genau dies danach passiert, und der Countdown (time_page.html) einfach nur in dem Kästchen steht wo vorher der Bauen und Abriß Button (Built_bit.html) war.
Ich habe dies mit ----- gekennzeichnet, nach der Reiehnfolge wie sie oben in Frame stehen und mit einigen Klammern (Siehe Oben) gekennzeichnet damit der Code besser zu verstehen ist.
Da dies einige Stufen zu hoch für mich ist hoffe ich auf Hilfe
Fangen wir an mit den Cods:
BUILT.PHP
[php:1:2153ea0372]<?PHP
$filename="build.php";
require("./global.php");
if(isset($_REQUEST['action'])) $action=$_REQUEST['action'];
else $action="main";
if(!isset($_SESSION['userid'])) error_page("Bitte logge dich ein!");
/** check option active/deactive **/
if($op_build_active==0) {
error_page("Das Bauen wurde von dem Administrator deaktiviert!");
exit();
}
if($action=="main") {
$requesttime=$userdata['buildtime']-time();
if($requesttime>0) {
time_page("Auftrag",getRassenName("b".$userdata['bid'])." im Auftrag",$requesttime,"build");
}
elseif($requesttime<=0 && $userdata['bid']!=0) {
$result=$db->query("SELECT * FROM cc".$n."_buildings WHERE bid='".$userdata['bid']."'");
$row=$db->fetch_array($result);
$db->query("UPDATE cc".$n."_countries SET ".$row['table']."=".$row['table']."+'1', bid='0' WHERE islandid='".$userdata['islandid']."'");
header("LOCATION: build.php?cxid=$sid");
exit();
}
$result=$db->query("SELECT * FROM cc".$n."_buildings ORDER BY p ASC");
while($row=$db->fetch_array($result)) {
$time2build=btime(($row['time']*($userdata[$row['table']]+1)));
$size=$userdata[$row['table']];
$row['gold']=$row['gold']*($userdata[$row['table']]+1);
$row['stone']=$row['stone']*($userdata[$row['table']]+1);
$row['exp']=$row['exp']*($userdata[$row['table']]+1);
$row['oil']=$row['oil']*($userdata[$row['table']]+1);
$row['name']=getRassenName("b".$row['bid']);
$time02=($size+1)*$row['time'];
$time2=date("H:i:s", $time02);
eval ("\$build_bit .= \"".$tpl->get("build_bit")."\";");
}
eval("\$tpl->output(\"".$tpl->get("build")."\");");
exit();
}
if($action=="build") {
$bid=intval($_GET['bid']);
if(!$bid) {
error_page("Fehlerhaftes Gebäde!");
exit();
}
$result=$db->query("SELECT * FROM cc".$n."_buildings WHERE bid='$bid'");
$row=$db->fetch_array($result);
if($row['size']>$userdata['size']-$userdata['usesize']) {
error_page("Auf dem Land ist kein Platz mehr vorhanden!");
exit();
}
if($userdata['towncenter']<$row['require1'] || $userdata['pub']<$row['require2']) {
error_page("Du kannst dieses Gebäude noch nicht bauen!");
exit();
}
$gold=$row['gold']*($userdata[$row['table']]+1);
$stone=$row['stone']*($userdata[$row['table']]+1);
$exp=$row['exp']*($userdata[$row['table']]+1);
$oil=$row['oil']*($userdata[$row['table']]+1);
$btime=time()+($row['time']*($userdata[$row['table']]+1));
if($userdata['gold']>=$gold && $userdata['stone']>=$stone && $userdata['exp']>=$exp && $userdata['oil']>=$oil && $userdata['bid']==0) {
$db->query("UPDATE cc".$n."_countries SET bid='$bid', gold=gold-'$gold', stone=stone-'$stone', oil=oil-'$oil', exp=exp-'$exp', buildtime='$btime', isbuilding='1', usesize=usesize+'$row[size]' WHERE islandid='".$userdata['activeid']."'");
header("LOCATION: build.php?cxid=$sid");
exit();
}
error_page("nicht genug Ressource vorhanden!");
exit();
}
if($action=="remove") {
$bid = intval($_REQUEST['bid']);
if(!$bid) {
error_page("Fehlerhafter Seitenaufruf!");
}
$result=$db->query("SELECT * FROM cc".$n."_buildings WHERE bid='$bid'");
$row=$db->fetch_array($result);
if($userdata[$row['table']]==0) {
error_page("Dieses Gebäude ist schon Stufe 0!");
}
if($userdata['usesize']==0) {
error_page("Die genutze Baufläche entspricht schon 0, ein weiterer Abriß ist nicht möglich!");
}
$db->query("UPDATE cc".$n."_countries SET usesize=usesize-'".$row['size']."', $row
header("LOCATION: build.php");
exit();
}
if($action=="del") {
$bid=intval($_GET['bid']);
$result=$db->query("SELECT * FROM cc".$n."_buildings WHERE bid='$bid'");
$row=$db->fetch_array($result);
$gold=($row['gold']*($userdata[$row['table']]+1))/3;
$stone=($row['stone']*($userdata[$row['table']]+1))/3;
$exp=($row['exp']*($userdata[$row['table']]+1))/3;
$oil=($row['oil']*($userdata[$row['table']]+1))/3;
$db->query("UPDATE cc".$n."_countries SET bid='0', gold=gold+'$gold', stone=stone+'$stone', oil=oil+'$oil', exp=exp+'$exp', buildtime='0' WHERE islandid='".$userdata['activeid']."'");
header("LOCATION: build.php$SID_1");
exit();
}
?>
BUILT.HTML
PHP:
$header
<table bgcolor="#000000" width="80%" align="center">
<tr>
<td class="tdw" style="background-image:url('./images/bit.png');" width="25%">
<p align="center"><span class="normalfont">[b]Name des Gebäudes[/b]</span></p>
</td>
<td class="tdw" style="background-image:url('./images/bit.png');" width="5%">
<p align="center"><span class="normalfont">[b]$op_set_n_res1 [/b]</span></p>
</td>
<td class="tdw" style="background-image:url('./images/bit.png');" width="5%">
<p align="center"><span class="normalfont">[b]$op_set_n_res2 [/b]</span></p>
</td>
<td class="tdw" style="background-image:url('./images/bit.png');" width="5%">
<p align="center"><span class="normalfont">[b]$op_set_n_res3 [/b]</span></p>
</td>
<td class="tdw" style="background-image:url('./images/bit.png');" width="15%">
<p align="center"><span class="normalfont">[b]Dauer[/b]</span></p>
</td>
<td class="tdw" style="background-image:url('./images/bit.png');" width="15%">
<p align="center"><span class="normalfont">[b]Aktion[/b]</span></p>
</td>
</tr>
$build_bit
<tr>
<td class="tdw" colspan="6"><span class="normalfont">Planetengröße: $userdata[usesize] / $userdata[size]</span></td>
</tr>
</table>
$footer
PHP:
<table>
<tr>
<td class="tdw" width="25%"><span class="normalfont">[b]<u>$row[name] ($size)[/b]</u></span>
<font face="VERDANA,ARIAL,HELVETICA" size="-2">[i]$row[description][/i]<if($userdata['towncenter']<$row['require1'] || $userdata['pub']<$row['require2'])><then>
[b]Erfordert
<lang>b2</lang> $row[require1]
<lang>b11</lang> $row[require2]</then><else></else></if></span></td>
<td class="tdw" width="5%"><span class="normalfont"><center>$row[gold]</center></span></td>
<td class="tdw" width="5%"><span class="normalfont"><center>$row[stone]</center></span></td>
<td class="tdw" width="5%"><span class="normalfont"><center>$row[oil]</center></span></td>
<td class="tdw" width="5%"><span class="normalfont"><center>$time2</center></span></td>
<td class="tdw" width="10%">
--------------------------------------------------------------------------------------
<p align="center"><span class="normalfont">[url="build.php?bid=$row[bid]&action=build&cxid=$sid"]Bauen[/url]
[url="build.php?action=remove&bid=$row[bid]$SID_2"]Abriß[/url]</span></p>
--------------------------------------------------------------------------------------
</td>
</tr>
PHP:
<script type="text/javascript">
var NS6 = (!document.all && document.getElementById) ? true : false;
var NS = document.layers ? 1:0;
var IE = document.all ? 1:0;
var gecko = document.getElementById ? 1:0;
var wielang=$time;
var target="test";
function countdown()
{
sekunden=wielang;
stunden=Math.floor(sekunden/3600);
sekunden-=stunden*3600;
minuten=Math.floor(sekunden/60);
sekunden-=minuten*60;
text=+stunden+" Stunden "+minuten+" Minuten "+sekunden+" Sekunden";
if (NS)
{
x = document.layers[target];
text2 = '
' + text + '</p>';
x.document.open();
x.document.write(text2);
x.document.close();
}
else if (IE)
{
x = document.all[target];
x.innerHTML = text;
}
else if (gecko)
{
x = document.getElementById(target);
x.innerHTML = text;
}
wielang--;
if (wielang>0)
window.setTimeout("countdown();",1000)
else
parent.location.href='$target.php?cxid=$sid';
}
</script>
<tr>
$text
------------------------------------------------------------------------------------------
<font face="COURIER NEW" size="-1" id="test"><script type="text/javascript">countdown();</script>
[url="$target.php?$tname=$lname&action=del"]Abbrechen[/url]
------------------------------------------------------------------------------------------
</tr>
</table>