Ir para conteúdo
Fórum Script Brasil
  • 0

O que há de errado com minha função?


guw

Pergunta

Quando eu vou usar a função, nada aparece na tela, nem o que há em seeguida a função. O que está errado?

Obrigado desde já.

//função para pegar os dados do usuario no banco de dados a partir do nick da sessão

function pega_user_dados($nick) {
  //dados do usuario
  $u="SELECT * FROM pg WHERE nick='$nick'";
  $q=mysql_query($u) or die(mysql_error());
  $fetch=mysql_fetch_array($q) or die(mysql_error());
  $uid=$fetch['uid'];
  $nome=$fetch['nome'];
  $sobrenome=$fetch['sobrenome'];
  $nick=$fetch['nick'];
  $email=$fetch['email'];
  $senha=$fetch['senha'];
  $numpokemons=$fetch['numpokemons'];
  $numinsg=$fetch['numinsg'];
  //fim dados do usuario

  //dados dos pokemons do usuario
  $num=1;
  for($num=1;$num<=6;$num++) {
    $u="SELECT * FROM upk WHERE uid='$uid' AND numpk='$num'";
    $q=mysql_query($u) or die(mysql_error());
    $fetch=mysql_fetch_array($q) or die(mysql_error());
    switch($num) {
      case 1:
        $pkid=$fetch['pkid'];
        $lvl=$fetch['lvl'];
        $atk=$fetch['atk'];
        $def=$fetch['def'];
        $spd=$fetch['spd'];
        break;
      case 2:
        $pkid2=$fetch['pkid'];
        $lvl2=$fetch['lvl'];
        $atk2=$fetch['atk'];
        $def2=$fetch['def'];
        $spd2=$fetch['spd'];
        break;
      case 3:
        $pkid3=$fetch['pkid'];
        $lvl3=$fetch['lvl'];
        $atk3=$fetch['atk'];
        $def3=$fetch['def'];
        $spd3=$fetch['spd'];
        break;
      case 4:
        $pkid4=$fetch['pkid'];
        $lvl4=$fetch['lvl'];
        $atk4=$fetch['atk'];
        $def4=$fetch['def'];
        $spd4=$fetch['spd'];
        break;
      case 5:
        $pkid5=$fetch['pkid'];
        $lvl5=$fetch['lvl'];
        $atk5=$fetch['atk'];
        $def5=$fetch['def'];
        $spd5=$fetch['spd'];
        break;
      case 6:
        $pkid6=$fetch['pkid'];
        $lvl6=$fetch['lvl'];
        $atk6=$fetch['atk'];
        $def6=$fetch['def'];
        $spd6=$fetch['spd'];
        break;
      default:
        echo "Erro Usuario Pokémon";
        break;
    }
  }
  //fim dados dos pokemons do usuario

  //dados das insignias dos usuarios
  $num=1;
  for($num=1;$num<=6;$num++) {
    $u="SELECT * FROM uinsg WHERE uid='$uid' AND numinsg='$num'";
    $q=mysql_query($u) or die(mysql_error());
    $fetch=mysql_fetch_array($q) or die(mysql_error());
    $insgid=$fetch['insgid'];
    switch($num) {
      case 1:
        $insgid=$fetch['insgid'];
        break;
      case 2:
        $insgid2=$fetch['insgid'];
        break;
      case 3:
        $insgid3=$fetch['insgid'];
        break;
      case 4:
        $insgid4=$fetch['insgid'];
        break;
      case 5:
        $insgid5=$fetch['insgid'];
        break;
      case 6:
        $insgid6=$fetch['insgid'];
        break;
      default:
        echo "Erro Usuario Insignea";
        break;
    }
  }
  //fim dados das insignias do usuario

  return array($uid, $nome, $sobrenome, $nick, $email, $senha, $numpokemons, $numinsg, $pkid, $lvl, $atk, $def, $spd, $pkid2, $lvl2, $atk2, $def2, $spd2, $pkid3, $lvl3, $atk3, $def3, $spd3, $pkid4, $lvl4, $atk4, $def4, $spd4, $pkid5, $lvl5, $atk5, $def5, $spd5, $pkid6, $lvl6, $atk6, $def6, $spd6, $insgid, $insgid2, $insgid3, $insgid4, $insgid5, $insgid6);
}

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Cara...

Aparentemente não há inconsistência no código, mas sugiro que você distribua alguns "echo's" nas linhas do código, pra identificar onde tá rolando o erro.

O que poderia ajudar também é habilitar os reportings adicionando esta linha no início da função:

error_reporting(E_ALL);

...

Editado por Gigabyte
Link para o comentário
Compartilhar em outros sites

  • 0

Olha o problema pode estar no array do RETURN. não tive tempo p olhar query por query, mais se as queryes estiverem corretas faz o seguinte:

return array("uid"=>"$uid", "nome"=>"$nome", "sobrenome"=>"$sobrenome", "nick"=>"$nick", "email"=>"$email", "senha"=>"$senha", "numpokemons"=>"$numpokemons", "numinsg"=>"$numinsg", "pkid"=>"$pkid", "lvl"=>"$lvl", "atk"=>"$atk", "def"=>"$def", "spd"=>"$spd", "pkid2"=>"$pkid2", "lvl2"=>"$lvl2", "atk2"=>"$atk2", "def2"=>"$def2", "spd2"=>"$spd2", "pkid3"=>"$pkid3", "lvl3"=>"$lvl3", "atk3"=>"$atk3", "def3"=>"$def3", "spd3"=>"$spd3", "pkid4"=>"$pkid4", "lvl4"=>"$lvl4", "atk4"=>"$atk4", "def4"=>"$def4", "spd4"=>"$spd4", "pkid5"=>"$pkid5", "lvl5"=>"$lvl5", "atk5"=>"$atk5", "def5"=>"$def5", "spd5"=>"$spd5", "pkid6"=>"$pkid6", "lvl6"=>"$lvl6", "atk6"=>"$atk6", "def6"=>"$def6", "spd6"=>"$spd6", "insgid"=>"$insgid", "insgid2"=>"$insgid2", "insgid3"=>"$insgid3", "insgid4"=>"$insgid4", "insgid5"=>"$insgid5", "insgid6"=>"$insgid6");

acho q vai resolver. Para pegar os dados retornados da funcao você vai usar:

$dados = pega_user_dados($nick);

$uid = $dados["uid"];

$nome = $dados["nome"];

$sobrenome = $dados["sobrenome"];

e assim vai seguindo.. Desculpe se tiver algum erro pois estou postando com pressa.. Vlw espero ter ajudado

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...