• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Nach Bestätigung wieder zurück

Status
Für weitere Antworten geschlossen.

FireDuck

Neues Mitglied
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&auml;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&auml;ude ist schon Stufe 0!");
}

if($userdata['usesize']==0) {
error_page("Die genutze Baufl&auml;che entspricht schon 0, ein weiterer Abriß ist nicht m&ouml;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
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&ouml;ße: $userdata[usesize] / $userdata[size]</span></td>
 </tr>
</table>
$footer
BUILT_BIT.HTML
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&szlig;[/url]</span></p>
--------------------------------------------------------------------------------------
 </td>
</tr>
TIME_PAGE.HTML
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>
[/php:1:2153ea0372]
 
Werbung:
Also,

Wenn ich beim Baumenü etwas baue kommt der Countdown auf einer leeren Seite, ich möchte aber das der Countdown im Baumenü selber ausgeführt wird und man den Rest dann eben sehen kann.
 
Werbung:
dann pack da doch einfach eine if abfrage rein:
[php:1:19e979af55]<?php
if($building) //Die variable habe ich mir ausgedacht
{
?>
<span class="normalfont">Bauen
Abri&szlig;</span>
<?php
}
else
{
?>
<span class="normalfont">ZeitZeitZeitZeit</span>
<?php
}
?>[/php:1:19e979af55]

gleiches geht natürlich auch mit echo...
 
Werbung:
Status
Für weitere Antworten geschlossen.
Zurück
Oben