Hamurabi 0 Denunciar post Postado Fevereiro 7, 2013 Olá galera, Tenho esse código: $query = mysql_query("SELECT contatos FROM atleta WHERE idAtleta = '1'") or DIE (mysql_error()); $nickname = mysql_result($query, 0); $nick = explode(",", $nickname) ; $tamanho = count($nick); echo '<table id="table_seguindo">'; for ($i =0; $i<$tamanho; $i++){ echo '<tr>'; $buscaImagem = mysql_query("SELECT avatar FROM atleta WHERE nickname = '$nick[$i]'") or DIE (mysql_error()); $caminho = mysql_result($buscaImagem, 0); echo '<td><img src="'. $caminho . '"/></td>'; echo '<td>' . $nick[$i] . $i . '</td>'; echo '</tr>'; } echo '</table>'; Em suma, a cada giro do for ele é pra pegar uma imagem e colocar numa tabela juntamente com o nick de cada contato. Sendo que no meio disso ele exibe esse erro:Warning: mysql_result(): Unable to jump to row 0 on MySQL result index 7 E só exibe a primeira imagem, os nicks vem normalmente só que da segunda imagem em diante não aparecem mais. Alguem pode me dar uma ajuda com esse erro? Desde já agradeço. Compartilhar este post Link para o post Compartilhar em outros sites
rockrgo 138 Denunciar post Postado Fevereiro 7, 2013 tenta usar o mysql_fetch_array no lugar do mysql_result. Compartilhar este post Link para o post Compartilhar em outros sites
Samuel Gomes_148425 19 Denunciar post Postado Fevereiro 7, 2013 http://forum.imasters.com.br/topic/396025-erro-unable-to-jump-to-row-0-on-mysql/ Vê se ajuda Compartilhar este post Link para o post Compartilhar em outros sites
Hamurabi 0 Denunciar post Postado Fevereiro 8, 2013 tenta usar o mysql_fetch_array no lugar do mysql_result. Valeu rockrgo, deu pra resolver ! Compartilhar este post Link para o post Compartilhar em outros sites
rockrgo 138 Denunciar post Postado Fevereiro 8, 2013 :joia: Compartilhar este post Link para o post Compartilhar em outros sites
Hamurabi 0 Denunciar post Postado Fevereiro 9, 2013 O problema com esse warning foi resolvido, só que apareceu um outro erro. =/ Não sei se é isso mesmo, estou fazendo testes, mas ele só faz a primeira consulta do banco, as outras ele nao faz mais. Ai como tá dentro de um laço ele repete o valor da consulta pra todos os outros. if ($nick[0] != ''){ echo '<table id="table_seguindo">'; for ($i =0; $i<$tamanho; $i++){ echo '<tr>'; $buscaImagem = mysql_query("SELECT avatar FROM atleta WHERE nickname = '$nick[$i]'") or DIE (mysql_error()); while ($caminho = mysql_fetch_array($buscaImagem)){ $foto = $caminho['avatar']; echo $foto . ' ' . $nick[$i]; } echo '<td><img src="'. $foto . '"/></td>'; echo '<td>' . $nick[$i] . '</td>'; echo '</tr>'; } echo '</table>'; } Alguém poderia me ajudar??? Até agora nao consegui entender o que estar causando esse erro. Compartilhar este post Link para o post Compartilhar em outros sites
Erick Tarzia 10 Denunciar post Postado Fevereiro 9, 2013 Cara , pq vc não faz tudo junto?? $sql = "select * from atleta where idAtleta=1"; $query = mysql_query($sql) or die (mysql_error()); echo "<table>"; while($row = mysql_fetch_assoc($sql)){ echo "<tr>"; echo "<td>"; echo row['avatar']; echo "</td>"; echo "<td>"; echo row['contatos']; echo "</td>"; echo "</tr>"; } echo "</table>"; Ve se assim resolve.. eu não testei mas não tem erro Compartilhar este post Link para o post Compartilhar em outros sites
rockrgo 138 Denunciar post Postado Fevereiro 9, 2013 Qual o erro que está aperecendo? Quando estiver usando array vc deve utilizar o foreach. Compartilhar este post Link para o post Compartilhar em outros sites
Hamurabi 0 Denunciar post Postado Fevereiro 9, 2013 Cara , pq vc não faz tudo junto?? $sql = "select * from atleta where idAtleta=1"; $query = mysql_query($sql) or die (mysql_error()); echo "<table>"; while($row = mysql_fetch_assoc($sql)){ echo "<tr>"; echo "<td>"; echo row['avatar']; echo "</td>"; echo "<td>"; echo row['contatos']; echo "</td>"; echo "</tr>"; } echo "</table>"; Ve se assim resolve.. eu não testei mas não tem erro Cara assim não resolveu. Continuou do mesmo jeito. Qual o erro que está aperecendo? Quando estiver usando array vc deve utilizar o foreach. O problema não é um erro que aparece, o negócio é que a primeira consulta é feita, mas da segunda em diante não é executada. Por exemplo, de 3 valores retornados na consulta ele faz assim: retorna o primeiro e os outros são repetições do primeiro. Compartilhar este post Link para o post Compartilhar em outros sites
Erick Tarzia 10 Denunciar post Postado Fevereiro 9, 2013 $caminho = $row['avatar']; coloca dentro do laço, e faz um laço só.. Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Fevereiro 9, 2013 não poderia usar join ? Compartilhar este post Link para o post Compartilhar em outros sites
Hamurabi 0 Denunciar post Postado Fevereiro 9, 2013 $caminho = $row['avatar']; coloca dentro do laço, e faz um laço só.. Não foi cara. =S não poderia usar join ? Como eu poderia usar o Join?? não sei como usa-lo Compartilhar este post Link para o post Compartilhar em outros sites
Erick Tarzia 10 Denunciar post Postado Fevereiro 9, 2013 tira o id do atleta se for pra listar todos.. select * from atleta; Compartilhar este post Link para o post Compartilhar em outros sites
Hamurabi 0 Denunciar post Postado Fevereiro 9, 2013 Galera pra ver se ajuda, quando executo aquele código dá essa saída. Cada um dos usuários listados tem um avatar diferente, mas como mostra a linha de teste lá em cima ele só pega o $caminho da primeira consulta, no caso, resulta naquele avatar.Ele mostra o do Luan pq ele eh o primeiro se fosse o 'hamurabiaraujo' a minha imagem seria repetida. tira o id do atleta se for pra listar todos.. select * from atleta; Erick é porque nesse caso eu estou querendo pegar o campo 'avatar' do usuário de id 'x'. Vai ser tipo assim, eu quero pegar o avatar dos meus seguidores. Compartilhar este post Link para o post Compartilhar em outros sites
Erick Tarzia 10 Denunciar post Postado Fevereiro 9, 2013 Cara, pra fazer uma lista, cada um com sua imagem, faz assim: $sql = "select * from atleta"; $query = mysql_query($sql) or die (mysql_error()); echo "<table>"; while($row = mysql_fetch_assoc($sql)){ echo "<tr>"; echo "<td>"; $foto = $row['avatar'];//supondo que a foto seja o avatar echo "<img src='".$foto."'>"; echo "</td>"; echo "<td>"; echo $row['contatos'];// supondo que o nome seja contatos echo "</td>"; echo "</tr>"; } echo "</table>"; então tem duas tabelas, uma onde vc tem os seguidores, com o id do seguido e o id dos seguidores.. certo? Compartilhar este post Link para o post Compartilhar em outros sites
Hamurabi 0 Denunciar post Postado Fevereiro 9, 2013 Eu tenho uma tabela atleta, que tem os campos do tipo texto seguindo e seguidores. Neles vão ter os nicks de respectivos, ai eu uso o explode para separá-los e pô-los em um vetor. Ai eu faço uma consulta pegando o avatar de cada nick que tem no vetor. Entendeu ? Compartilhar este post Link para o post Compartilhar em outros sites
Erick Tarzia 10 Denunciar post Postado Fevereiro 9, 2013 vish.... Separa isso numa tabela, pq se o cara mudar o nick dele um dia vai dar pau.. Cria uma tabela de seguidores.. assim: id int 10 AI not null idSeguido int 10 not null idSeguidor int 10 not null depois vc faz o select assim: $sql = "SELECT s.*, a.idAtleta, a.contatos, a.avatar FROM seguidores s INNER JOIN atletas a ON s.idSeguidores = a.idAtleta WHERE s.idSeguido= 1"; $query = mysql_query($sql) or die ('Erro: ' . mysql_error()); echo "<table>"; while($row = mysql_fetch_assoc($sql)){ echo "<tr>"; echo "<td>"; $foto = $row['avatar'];//supondo que a foto seja o avatar echo "<img src='".$foto."'>"; echo "</td>"; echo "<td>"; echo $row['contatos'];// supondo que o nome seja contatos echo "</td>"; echo "</tr>"; } echo "</table>"; Compartilhar este post Link para o post Compartilhar em outros sites
Hamurabi 0 Denunciar post Postado Fevereiro 9, 2013 Cara é verdade, eu estarei viajando daqui a pouco, assim que puder retorno ao tópico. Mas vc falou uma coisa que eu não tinha pensado. Irei fazer e darei retorno. Compartilhar este post Link para o post Compartilhar em outros sites
Hamurabi 0 Denunciar post Postado Fevereiro 12, 2013 vish.... Separa isso numa tabela, pq se o cara mudar o nick dele um dia vai dar pau.. Cria uma tabela de seguidores.. assim: id int 10 AI not null idSeguido int 10 not null idSeguidor int 10 not null depois vc faz o select assim: $sql = "SELECT s.*, a.idAtleta, a.contatos, a.avatar FROM seguidores s INNER JOIN atletas a ON s.idSeguidores = a.idAtleta WHERE s.idSeguido= 1"; $query = mysql_query($sql) or die ('Erro: ' . mysql_error()); echo "<table>"; while($row = mysql_fetch_assoc($sql)){ echo "<tr>"; echo "<td>"; $foto = $row['avatar'];//supondo que a foto seja o avatar echo "<img src='".$foto."'>"; echo "</td>"; echo "<td>"; echo $row['contatos'];// supondo que o nome seja contatos echo "</td>"; echo "</tr>"; } echo "</table>"; Erick eu consegui fazer de uma maneira mais simples, sem precisar fazer "tantas" mudanças no banco. Não sei o que causava o erro, mas o que mudei foi o seguinte: Botei tudo dentro de um "foreach" e deixei de fazer a pesquisa pelo nickname e passei a fazer pelo ID, o que resolve aquele erro que vc me alertou. Muito obrigado pela ajuda galera! Compartilhar este post Link para o post Compartilhar em outros sites
Erick Tarzia 10 Denunciar post Postado Fevereiro 13, 2013 Mas num futuro, vc pode ter problemas, usuario que se descadastra.. blá blá blá.. o ideal seria separar mesmo.., mas cada um com o seu critério.. rsrsrsrs Compartilhar este post Link para o post Compartilhar em outros sites