Activity Mod auch für gäste

In diesem Forum können Mod-Autoren ihre Mods vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
mirk
Mitglied
Beiträge: 191
Registriert: 03.09.2003 16:32
Kontaktdaten:

Activity Mod auch für gäste

Beitrag von mirk »

ich wollte das bei mir im forum auch gäste spielen dürfen...
jetzt klappt das schon mal soweit... aber jetzt brauch ich hilfe

ich will das ein gast noch seinen namen eingeben kann bevor das highscore in der db gespeichert wird...
also:

Code: Alles auswählen

if (!$userdata['session_logged_in'] && $user_id == ANONYMOUS)
und dannach brauche ich ein eigabe feld für den namen und das ergebnis (highscore) soll dann mit dem eingegebenen namen in der db gespeichert werden... (wie bei spielautomaten...)
mirk
Mitglied
Beiträge: 191
Registriert: 03.09.2003 16:32
Kontaktdaten:

Beitrag von mirk »

also die newscore.php muss bearbeitet werden:

Code: Alles auswählen

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_ACTIVITY);
init_userprefs($userdata);
// End session management

//===========================================================================



if (isset($HTTP_GET_VARS['mode']) || isset($HTTP_POST_VARS['mode']))
{
  $mode = (isset($HTTP_GET_VARS['mode'])) ? $HTTP_GET_VARS['mode'] : $HTTP_POST_VARS['mode'];
}
else 
{
  if( isset($HTTP_POST_VARS['check_score']) )
  {
    $mode = "check_score";
  }
  else if( isset($HTTP_POST_VARS['highscore']) )
  {
    $mode = "highscore";
  }
  else
  {
    $mode = "";
  }
}

if( $mode != "" )
{
  if ($mode == "check_score")
  {
    $name = (!empty($HTTP_POST_VARS['name'])) ? $HTTP_POST_VARS['name'] : $HTTP_GET_VARS['name'];
    $game_name = (!empty($HTTP_POST_VARS['game_name'])) ? $HTTP_POST_VARS['game_name'] : $HTTP_GET_VARS['game_name'];
    $score = (!empty($HTTP_POST_VARS['score'])) ? $HTTP_POST_VARS['score'] : $HTTP_GET_VARS['score'];

    if ($score)
    {
	  if (empty($name)) {
	    $name = $userdata['username'];
	  } 
      $sql = "SELECT * FROM " . iNA_GAMES . "
              WHERE game_name = '" . $game_name . "'";
      if(!$result = $db->sql_query($sql))
      {
        message_die(GENERAL_ERROR, "Couldn't obtain Game data", "", __LINE__, __FILE__, $sql);
      }
      $game_info = $db->sql_fetchrow($result);

      // Check for Highscore
      $sql = "SELECT * FROM " . iNA_SCORES . "
              WHERE game_name = '" . $game_name . "'
              ORDER BY score DESC";
      if(!$result = $db->sql_query($sql))
      {
        message_die(GENERAL_ERROR, "Couldn't obtain Scores data", "", __LINE__, __FILE__, $sql);
      }
      $score_info = $db->sql_fetchrow($result);

      $bonus = 0;
      if ($score > $score_info['score'])
      {
        $bonus = $game_info['game_bonus'];
      }

      // Add to scores list
      $sql = "INSERT INTO " . iNA_SCORES . " (game_name, player, score, date)
              VALUES ('$game_name', '$name', '$score', '" . time() . "')";
      if( !$result = $db->sql_query($sql) )
      {
        message_die(GENERAL_ERROR, "Couldn't insert score", "", __LINE__, __FILE__, $sql);
      }
	  $template->set_filenames(array('body' => 'saved_body.tpl'));

  	  $template->assign_vars(array('SAVED' => "Score Saved",
                               'GAME_NAME' => $game_name,
							   'U_CLOSE' => "javascript:parent.window.close();",
                               'L_CLOSE' => "Close")
      );
	  $gen_simple_header = true;
	  include($phpbb_root_path . 'includes/page_header.'.$phpEx);
      $template->pparse('body');
	  include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
    } else {
      $template->set_filenames(array('body' => 'saved_body.tpl'));

  	  $template->assign_vars(array('SAVED' => "No Score",
                               'GAME_NAME' => $game_name,
							   'U_CLOSE' => "javascript:parent.window.close();",
                               'L_CLOSE' => "Close")
      );
      $gen_simple_header = true;
      include($phpbb_root_path . 'includes/page_header.'.$phpEx);
      $template->pparse('body');
      include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
    }
  }
}
?>

hier muss der php code rein...

nach...

Code: Alles auswählen

//===========================================================================
und vor...

Code: Alles auswählen

if (isset($HTTP_GET_VARS['mode']) || isset($HTTP_POST_VARS['mode']))
{
  $mode = (isset($HTTP_GET_VARS['mode'])) ? $HTTP_GET_VARS
dazwischen kommt die abfrage

Code: Alles auswählen

if (!$userdata['session_logged_in'] && $user_id == ANONYMOUS)
und dann wenn der user anonymous ist soll da noch ein eingabe feld Name: _____ auftauchen und ein ok buttonwenn.... wenn ok geklickt dann weiter im code...
so da ist das erste problem

das zweite... hier:

Code: Alles auswählen

      $sql = "INSERT INTO " . iNA_SCORES . " (game_name, player, score, date)
              VALUES ('$game_name', '$name', '$score', '" . time() . "')";
      if( !$result = $db->sql_query($sql) )
      {
        message_die(GENERAL_ERROR, "Couldn't insert score", "", __LINE__, __FILE__, $sql);
hier muss ich noch den name aus dem feld oben übergeben und in die db speichern...

bin leider nicht so vertraut mit php darum hoffe ich sehr das mir jemand helfen kann...
Benutzeravatar
Sujao
Mitglied
Beiträge: 296
Registriert: 25.12.2003 03:56
Wohnort: Stuttgart
Kontaktdaten:

Beitrag von Sujao »

Wie das geht würde mich auch mal interessieren! Gibt es denn keinen der da weiterhelfen kann ?
There are no passangers on Spaceship Earth, we are all the crew !
Mawuh
Mitglied
Beiträge: 15
Registriert: 21.03.2007 23:03

newscore???

Beitrag von Mawuh »

Hi,

Ich habe ein anderes Flashgame Modul und würde gerne die PHPbb Spiele auch nutzen können!

Da die Spiele über die Newscore.php den score eintragen wollte ich nur mal fragen was der wichtigste teil an der Datei ist da sie etwas groß ist und unübersichtlich!

Ich habe Xoops 2.0.16 und das Modul Flashgames 1.0.1!

Habe schon überall gesucht und finde nichts brauchbares!

Kann man es so umsetzten das es die Scores anderst speichert???

mfg mawuh
Antworten

Zurück zu „phpBB 2.0: Mods in Entwicklung“