Hmmm..irgendwie komm ich mit dem Script nicht klar..ich habe noch nie mit einer function gearbeitet..habe jetzt zwar nen bißchen drüber gelesen aber durchgestiegen bin ich noch nicht...
also damit ihr euch mehr vorstellen könnt hab ich euch jetzt mal nen codeschipsel drann gehängt...
PHP-Code:
if (isset($_POST[$row[uid]])) //wenn absenden, dann...
{
if($_POST['anzahl'] >= 1) //überprüfen ob eine positive zahl angegeben wurde
{
if($data[$row[uid]][max] > $buildings2[count]) //überprüfen ob schon gebaut wird
{
$build = mysql_query("SELECT Count(*) as count FROM user_builded where nickname= '".$_SESSION['username']."'");
$build2 = mysql_fetch_array($build);
if($build2[count] == 0) //wenn nicht, dann...
{
$count ="select anzahl_building from user_buildings where nickname = '".$_SESSION['username']."' and name_building = '".$row[name]."'";
$count2 = mysql_query($count);
$count3 = mysql_fetch_array($count2); //bereits fertig gestellte gebäude
$max = $count3[anzahl_building] + $_POST['anzahl'];
if($count3[anzahl_building] < $row[max] && $max <= $row[max]) //überprüfen ob vllt die maximale anzahl überschritten wird
{
$kosten = array();
$cost = explode(";",$data[$row[uid]][cost]); //grundkosten
foreach($cost as $cost)
{
$array = explode(":",$cost);
$source = "select holz, stein from user_ressources where nickname= '".$_SESSION['username']."'";
$source2 = mysql_query($source);
$info = mysql_fetch_array($source2); //resourcen
if($array[0] == holz)
{
$gesamt = $_POST['anzahl'] * $array[1];
$holz = $info[holz] - $gesamt;
if($holz < 0) //holz-kosten
{
array_push($kosten, "mistake");
array_push($kosten, "Holz");
}
}
if($array[0] == stein)
{
$gesamt = $_POST['anzahl'] * $array[1];
$stein = $info[stein] - $gesamt;
if($stein < 0) //stein-kosten
{
array_push($kosten, "mistake");
array_push($kosten, "Stein");
}
}
}
if($kosten[0] == mistake)
{
readfile ("fehler/keine-res.php"); // zu wenig resourcen
}
else
{
readfile ("ok/ok.php"); //sonst bauen
$datum = date('U');
$bauzeit = $datum + $data[$row[uid]][zeit];
$building_add = "INSERT INTO user_builded (
nickname,
name_builded,
zeit,
anzahl_builded,
startzeit,
max,
genre,
uid,
type)
VALUES (
'".$_SESSION['username']."',
'".$data[$row[uid]][name]."',
'$bauzeit',
'".$_POST['anzahl']."',
'$datum',
'".$data[$row[uid]][max]."',
'".$data[$row[uid]][genre]."',
'".$data[$row[uid]][id]."',
'building')";
$building_add2 = mysql_query($building_add); //bauvorgang eintragen
$abzug = array();
$take = explode(";",$data[$row[uid]][cost]);
$source3 = "select holz, stein from user_ressources where nickname = '".$_SESSION['username']."'";
$source4 = mysql_query($source3);
$user = mysql_fetch_array($source4);
foreach($take as $take)
{
$cut = explode(":",$take);
if($cut[0] == holz)
{
$gesamt = $_POST['anzahl'] * $cut[1];
$holz = $user[holz] - $gesamt;
$update = "update user_ressources set holz = '$holz' where nickname= '".$_SESSION['username']."'";
$update_add = mysql_query($update);
}
if($cut[0] == stein) //resourcen updaten
{
$gesamt = $_POST['anzahl'] * $cut[1];
$stein = $user[stein] - $gesamt;
$update = "update user_ressources set stein = '$stein' where nickname = '".$_SESSION['username']."'";
$update_add = mysql_query($update);
}
}
}
}
else
{
readfile ("fehler/max-1.php"); //fehler
}
}
else
{
readfile ("fehler/zz-bauen.php"); //fehler
}
}
else
{
readfile ("fehler/max-1.php"); //fehler
}
}
else
{
readfile ("fehler/formular-falsch.php"); //fehler
}
}
ich hoffe ihr könnt mir helfen...
das muss unbedingt laufen, weil so das spiel verfuscht wird...da der user viel zu viele resourcen hat...
gruß, N!tr02k5