语法错误,意外':'

时间:2015-04-28 07:54:53

标签: php mysql function

我有下面的代码,当我加载它时,我总是得到这个错误..

function newPlayer($wallet) {
  generate_: {
    $hash=generateHash(32);
    }
  if (mysql_num_rows(mysql_query("SELECT `id` FROM `players` WHERE `hash`='$hash' LIMIT 1"))!=0) goto generate_;
      $alias='Player_';
      $alias_i=mysql_fetch_array(mysql_query("SELECT `autoalias_increment` AS `data` FROM `system` LIMIT 1"));
      $alias_i=$alias_i['data'];
      mysql_query("UPDATE `system` SET `autoalias_increment`=`autoalias_increment`+1 LIMIT 1");
      mysql_query("INSERT INTO `players` (`hash`,`alias`,`time_last_active`,`server_seed`) VALUES ('$hash','".$alias.$alias_i."',NOW(),'".generateServerSeed()."')");
      header('Location: ./?unique='.$hash.'# Do Not Share This URL!');
      exit();
}

错误:

Parse error: syntax error, unexpected ':' in /home/a1180044/public_html/inc/functions.php on line 49

第49行生成_:

1 个答案:

答案 0 :(得分:1)

尽量不要使用goto。

通过使用goto,您将在自己的代码中丢失,因为您必须每次搜索goto所指向的位置。

在这里,你可以通过写作来做你想做的事:

if (mysql_num_rows(mysql_query("SELECT `id` FROM `players` WHERE `hash`='$hash' LIMIT 1"))!=0) {
    $hash=generateHash(32);
}