Bir if, else if, else deyimi oluşturma

1 Cevap
/* Errors exist, have user correct them */
    if($form->num_errors > 0)
    {
         return 1;  //Errors with form
    }
     /* No errors, add the new account to the */
    else if($database->addLeagueInformation($subname, $subformat, $subgame, $subseason, $subwindow, $subadmin, $subchampion, $subtype))
    {
        $database->addLeagueTable();
        $_SESSION['players'] == $subplayers;
        $comp_name == '$format_$game_$name_$season';
        $_SESSION['comp_name'] == $comp_name;
        return 0;  //New user added succesfully
    }
    else
    {
        return 2;  //Registration attempt failed
    }

Şu anda bu herhangi bunlar \ yapmıyor:

$database->addLeagueTable();
    $_SESSION['players'] == $subplayers;
    $comp_name == '$format_$game_$name_$season';
    $_SESSION['comp_name'] == $comp_name;

Bunu yapmak için daha iyi bir yolu var mı?

Düzenleme!

$comp_name = "$subformat_$subgame_$subname_$subseason";
        $_SESSION['comp_name'] = $comp_name;

This code is only generating whats in $subseason? Is there an obvious reason for this?

Ek düzenleme!

else if($database->addLeagueInformation($subname, $subformat, $subgame, $subseason, $subwindow, $subadmin, $subchampion, $subtype))
    {
        $_SESSION['players'] = $subplayers;
        $comp_name = "$subformat_$subgame_$subname_$subseason";
        $_SESSION['comp_name'] = $comp_name;
        $database->addLeagueTable();
        return 0;  //New user added succesfully
    }

Ve fonksiyon addLeagueTable ()

function addLeagueTable() {
   $q = "CREATE TABLE `$_SESSION[comp_name]` (
     `user` VARCHAR( 30 ) NOT NULL ,
        `team` VARCHAR( 40 ) NOT NULL ,
        `home_games_played` INT( 3 ) NULL DEFAULT '0',
        `home_wins` INT( 3 ) NULL DEFAULT '0',
        `home_draws` INT( 3 ) NULL DEFAULT '0',
        `home_losses` INT( 3 ) NULL DEFAULT '0',
        `home_points` INT( 3 ) NULL DEFAULT '0',
        `home_goals_for` INT( 3 ) NULL DEFAULT '0',
        `home_goals_against` INT( 3 ) NULL DEFAULT '0',
        `away_games_played` INT( 3 ) NULL DEFAULT '0',
        `away_wins` INT( 3 ) NULL DEFAULT '0',
        `away_draws` INT( 3 ) NULL DEFAULT '0',
        `away_losses` INT( 3 ) NULL DEFAULT '0',
        `away_points` INT( 3 ) NULL DEFAULT '0',
        `away_goals_for` INT( 3 ) NULL DEFAULT '0',
        `away_goals_against` INT( 3 )  NULL DEFAULT '0'
        )";
   return mysql_query($q, $this->connection);
}

herhangi bir fikir?

I nasıl geçtiğini ..

      $retval = $session->createLeague($_POST['name'], $_POST['players'], $_POST['format'], $_POST['game'], $_POST['season'], $_POST['window'], $_POST['admin'], $_POST['champion'], $_POST['type']);

Ve bu addLeagueInformation gönderilir fonksiyona gönderir!

1 Cevap

Bunu yapmak için daha iyi bir yolu var mı?

Aslında atamaları gerçekleştirmek?

$_SESSION['players'] = $subplayers;
// ------------------^ one '=' instead of two '==' (which is for comparison).
$comp_name = "{$format}_{$game}_{$name}_{$season}";
// double quotes to allow substitution,
// {...} to avoid interpreting the variable name as `$format_`.
$_SESSION['comp_name'] = $comp_name;

Onları idam beklediğiniz Ve eğer testinde emin addLeagueInformation gerçekten olmayan bir false değerini döndürecek olun.