Seite 3 von 4
Verfasst: 29.05.2006 15:30
von YoOoOoOo
Wow vielen Dank erstmal!
Nur zum nachprüfen, ist das hier okay?
Code: Alles auswählen
//
// Wert nicht unter 0
//
if ($row['user_goldmine'] && $row['user_steingrube'] && $row['user_saegewerk'] < 0)
{
'Deine Arbeiter müssen zuerst mehr Ressourcen abbauen';
}
Und ist es hier eigentlich nicht möglich, das auch irgendwie als Variable ausgeben zu können anstatt via echo, sodass dann der Text an beliebiger Stelle im Text eingefügt werden..?
Code: Alles auswählen
$dein_wert = 10;
$dein_array = array(
10 => 'Apfel',
20 => 'Banane',
30 => 'Kirsche',
[..]);
if ($dein_wert >= 5)
{
echo $dein_array[$dein_wert]; // eine Varibale draus kreiren ..?
}
Verfasst: 29.05.2006 16:20
von S2B
zum 1.: Nein, das musst du ausschreiben:
Code: Alles auswählen
if ($row['user_goldmine'] < 0 && $row['user_steingrube'] < 0 && $row['user_saegewerk'] < 0)
zum 2.: $dein_array[$dein_wert] kannst du an jeder x-beliebigen Stelle einfügen, du kannst es aber auch in eine neue Variable speichern:
Verfasst: 29.05.2006 17:06
von YoOoOoOo
So weit, so gut.
Code: Alles auswählen
$burg_1 = $burg_array[$row['user_burg']];
$row['user_burg'] = 10;
$burg_array = array(
10 => 'Burg',
15 => 'Festung',
20 => 'Schloss');
if ($row['user_goldmine'] >= 10)
{
echo $burg_array[$row['user_burg']]; // gibt Apfel aus
}
Was ist denn daran noch falsch.
Wird ausgegeben als
Code: Alles auswählen
$template->assign_vars(array(
.
.
.
.
'BURG_1' => $burg_1)
Im .tpl steht dann {BURG_1}, aber dort wird dann nichts angezeigt - wo ist der Fehler?
Verfasst: 29.05.2006 18:05
von S2B
Äh, wie willst du einer Variable einen Wert zuweisen, den es noch gar nicht gibt?
Verfasst: 29.05.2006 18:57
von YoOoOoOo
Kannst du mir das näher erklären bzw. konkreter Löungsvorschläge notieren bitte?
Ich beherrsche PHP leider noch nicht allzugut ^^"
Verfasst: 29.05.2006 19:06
von S2B
Code: Alles auswählen
// $burg_array und $row{'user_burg'] existieren hier noch nicht!
$burg_1 = $burg_array[$row['user_burg']];
$row['user_burg'] = 10;
$burg_array = array(
10 => 'Burg',
15 => 'Festung',
20 => 'Schloss');
// hier existieren sie ;-)
$burg_1 = $burg_array[$row['user_burg']];
Verfasst: 29.05.2006 20:53
von YoOoOoOo
Gut, alles klar.
Nun zurück zum Button - wie lese ich die USER ID heraus?
So funktioniert es leider nicht ...
Code: Alles auswählen
<?php
define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
//
// End session management
//
if(!$userdata['session_logged_in'])
{
redirect(append_sid("login.$phpEx?redirect=buildings.$phpEx", true));
}
$is_auth_ary = array();
$is_auth_ary = auth(AUTH_VIEW, AUTH_LIST_ALL, $userdata, $forum_data);
//
// Start output of page
//
define('SHOW_ONLINE', true);
$page_title = $lang['Index'];
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
$template->set_filenames(array(
'body' => 'buildings_body.tpl')
);
/// Auslesen der User ID
$this_userdata = get_userdata($user_id);
$user_id = $this_userdata['user_id'];
///
/// Anweisung zum Updaten der Datenbank
///
if(!empty($buttom)){
echo("Buttom gedrückt");
$db_query = "UPDATE phpbb_users
SET user_posts = user_posts + 4,
user_cash = user_cash - 500,
user_holz = user_holz - 300,
user_stein = user_stein - 500,
user_church = user_church + 1
WHERE user_id = $user_id";
}
//
// Generate the page
//
$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
?>
.tpl-Datei:
Code: Alles auswählen
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="forumline">
<tr>
<td class="row1" align="left" width="1%">...
</td><td class="row1" align="left" width="50%"><span class="gensmall">Kirche
</td><td class="row1" align="right" width="50%">
<form name="form1" method="post" action="buildings.php?buttom=1"><input type="submit" name="Buttom" value="Buttom"></td></form>
</tr>
</table>
Verfasst: 29.05.2006 21:11
von S2B
Sehe ich das richtig, dass du einfach die Daten vom aktuell eingeloggten Benutzer aktualisieren willst? Wenn ja, dann musst du die User-ID nicht mehr auslesen, die steht schon im $userdata-Array:
Code: Alles auswählen
///
/// Anweisung zum Updaten der Datenbank
///
if (!empty($buttom))
{
echo("Buttom gedrückt");
$db_query = "UPDATE phpbb_users
SET user_posts = user_posts + 4,
user_cash = user_cash - 500,
user_holz = user_holz - 300,
user_stein = user_stein - 500,
user_church = user_church + 1
WHERE user_id = " . $userdata['user_id'];
if (!$db->sql_query($db_query))
{
message_die(GENERAL_ERROR, 'Could not update userdata', '', __LINE__, __FILE__, $db_query);
}
}
Verfasst: 30.05.2006 12:41
von YoOoOoOo
Willst du mal Zugang zum FTP um das Problem näher anzusehen?
Es funktioniert nämlich immer noch nicht ganz ...
Meld dich einfach mal PN ...
YoOoOoOoOo
Verfasst: 30.05.2006 13:54
von S2B
Naja, deinen Fehler kannst du ruhig selbst reparieren, dann lernst du nämlich auch noch was dabei.
Was funktioniert denn nicht? Antworte doch mal auf meine Frage...