Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Micilini Roll

Problemas comandos solicitaçao de amizade

Recommended Posts

aqui esta os codigos:

 

<?
$sql = mysql_query("SELECT columns from solicitacao where field like 'id_solicitacao%'");
	 while($linha = mysql_fetch_array($sql)){
	 $id_solicitacao = $linha['id_solicitacao%'];         
?>

<form id="form1" name="form1" method="post" action="paginas.php?funçao=aceitar">
<input type="submit" name="button" id="button" value="aceitar" />
</form>

<form id="form1" name="form1" method="post" action="paginas.php?funçao=recusar">
<input type="submit" name="button" id="button" value="recusar" />
</form>

<?
	 }
?>

 

na verdade vai funcionar da seguinte forma,acima destes codigos existe um link com a funçao de + amigos,assim que for clicado ira criar uma nova coluna dentro do mysql da pessoa que ira receber a solicitaçao,com o nome de id_solicitaçao,(caso 2 pessoas quererem virar meus amigos ao mesmo tempo sera criado id_solicitaçao1,id_solicitaçao2...)

 

so que quando coloco este codigo pra rodar no apache diz que tem um erro na linha 35.

 

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\soli\paginas.php on line 35

 

o que pode ser?! alguem te a resposta?

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?
$sql = mysql_query("SELECT columns from solicitacao where field like 'id_solicitacao%'");
                while($linha = mysql_fetch_array($sql)){
                $id_solicitacao = $linha['id_solicitacao%'];         
?>

Você selecionou o campo "columns" e embaixo chamou o campo od_solicitacao...

 

"SELECT columns from solicitacao where field like 'id_solicitacao%'"

tente assim

"SELECT columns , id_solicitacao from solicitacao where field like 'id_solicitacao%'"

Compartilhar este post


Link para o post
Compartilhar em outros sites

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\soli\paginas.php on line 35

 

esse erro é retornado quando há alguma coisa de errado com o que está dentro do mysql_fetch_array() q no caso é o mysql_query("...").

 

 

-----------------------------------------------------------------------------------------------

Mudando de assunto... Não teria nada de errado com esse seu codigo não?

 

 

<?
$sql = mysql_query("SELECT columns from solicitacao where field like 'id_solicitacao%'");
                while($linha = mysql_fetch_array($sql)){
                $id_solicitacao = $linha['id_solicitacao%'];         
?>

<form id="form1" name="form1" method="post" action="paginas.php?funçao=aceitar">
<input type="submit" name="button" id="button" value="aceitar" />
</form>

<form id="form1" name="form1" method="post" action="paginas.php?funçao=recusar">
<input type="submit" name="button" id="button" value="recusar" />
</form>

<?
                }
?>

 

Você não tem como saber qual foi o usuário que confirmou ou recusou, não tem nada marcando o ID da solicitação. Eu sugiro um campo hidden ou caso queira mande via _GET na propria URL ficando assim:

 

 

 

<?
$sql = mysql_query("SELECT columns from solicitacao where field like 'id_solicitacao%'");
                while($linha = mysql_fetch_array($sql)){
                $id_solicitacao = $linha['id_solicitacao%'];         
?>

<form id="form1" name="form1" method="post" action="paginas.php?funçao=aceitar&id_solicitacao=<? echo $id_solicitacao; ?>">
<input type="submit" name="button" id="button" value="aceitar" />
</form>

<form id="form1" name="form1" method="post" action="paginas.php?funçao=recusar&id_solicitacao=<? echo $id_solicitacao; ?>">
<input type="submit" name="button" id="button" value="recusar" />
</form>

<?
                }
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

bem pensado cara,mas vamos dizer que na tabela há 4 campos:

 

id_solicitaçao_1

id_solicitaçao_2

id_solicitaçao_3

id_solicitaçao_4

id_solicitaçao_5

 

agora resta saber se o comando

 

$id_solicitacao = $linha['id_solicitacao%'];

?>

 

ira fazer a mesma funçao que eu colocasse dessa forma?

 

$id_solicitaçao_1 = $linha['id_solicitacao_1'];

$id_solicitaçao_2= $linha['id_solicitacao_2'];

$id_solicitaçao_3 = $linha['id_solicitacao_3'];

$id_solicitaçao_4 = $linha['id_solicitacao_4'];

$id_solicitaçao_5 = $linha['id_solicitacao_5'];

 

ou seja se eu estivesse colocando '$id_solicitacao = $linha['id_solicitacao%'];

?>' é como se eu estivesse criando 5 variaveis ao mesmo tempo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não cheguei a testar aqui mas parece que há outro erro... $linha['id_solicitacao_1'] issu que você escreveu, akele (id_solicitacao_1) tem que ser um campo da tabela.

 

Como sua tabela está estruturada?

Compartilhar este post


Link para o post
Compartilhar em outros sites

minha tabela se encontra desta forma:

 

id

nome

login

senha

email

id_solicitacao1

id_solicitacao2

id_solicitacao3

id_solicitacao4

id_amigos1

id_amigos2

id_amigos3

id_amigos4

 

acho que você mesmo pode me ajudar correto!?

 

<div style="background:#C03">

<?

$sql_view = mysql_query("SELECT * FROM solicitacao WHERE id='$id_user'");

while($linha = mysql_fetch_array($sql_view)){

$id_solicitaçao_1 = $linha['id_solicitacao1'];

$id_solicitaçao_2 = $linha['id_solicitacao2'];

$id_solicitaçao_3 = $linha['id_solicitacao3'];

$id_solicitaçao_4 = $linha['id_solicitacao4'];

 

}

if(!empty($id_solicitaçao_1)){

$sql_view_1 = mysql_query("SELECT * FROM solicitacao WHERE id='$id_user'");

while($linha = mysql_fetch_array($sql_view)){

$nome_user = $linha['id_solicitacao1'];

}

echo "$nome_user";

 

}else if(!empty($id_solicitaçao_2)){

$sql_view_1 = mysql_query("SELECT * FROM solicitacao WHERE id_solicitacao='$id_solicitaçao_1'");

while($linha = mysql_fetch_array($sql_view)){

$nome_user = $linha['nome'];

}

}else if(!empty($id_solicitaçao_3)){

$sql_view_1 = mysql_query("SELECT * FROM solicitacao WHERE id='$id_solicitaçao_1'");

while($linha = mysql_fetch_array($sql_view)){

$nome_user = $linha['nome'];

}

}else if(!empty($id_solicitaçao_4)){

$sql_view_1 = mysql_query("SELECT * FROM solicitacao WHERE id='$id_solicitaçao_1'");

while($linha = mysql_fetch_array($sql_view)){

$nome_user = $linha['nome'];

}

}else{

echo "nenhuma solicitaçao de amizade no momento";}

 

?>

 

so de olhar ja da pra perceber o que é que estou fazendo certo!?,so que tem um probleminha eu queria um comando que assim pegasse as informaçoes que existem dentro de uma variavel

 

exemplo:

 

$a=ta armazenando numero 1(que no caso o numero 1 é o id de uma pessoa)

 

o que iria aconteçer iria pegar o numero 1 e apartir dele iria verificar se existe na tabela um id com numero 1 e iria puxar os campos destes id,eae voce sabe?

 

sendo a variavel %id_user,uma variavel pertencente a um projeto que esta incluso neste,sendo que esta variavel puxa junto com a session o id da pessoa que se logou no site :thumbsup:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha cara, vou ser sincero, não cheguei a ler seu codigo todo, só por cima.

Acho que poderia melhora-lo.Primeiro que seu codigo só aceita 4 Solicitações de amizades, correto? e pra cada solicitação você executa uma query puxando todos os resultados da tabela.

 

Caso precise eu posso te ajudar a achar uma logica mais simples pra esse sistema, e que seja mais dinâmica.

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao nao,isso ai é so um pequeno teste.... quando começar a programar meu site vai ter coisas monstruosas,e é praticamente a mesma coisa que criar 3 tabelas,

1-usuario

2-amigos

3-solicitaçao

 

eae você sabe o codigo que eu te pedi?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Seria mais ou menos isso?

 

 

$a=ta armazenando numero 1(que no caso o numero 1 é o id de uma pessoa)

 

Ok vamos lá:

$a = 1;

 

o que iria aconteçer iria pegar o numero 1 e apartir dele iria verificar se existe na tabela um id com numero 1

$a = 1;
$query = mysql_query("Select * From usuario where id='$a'");
$row = mysql_num_rows($query);
if($row>0){
//Existe usuário... aki você pode colocar um while para exibir os dados
}

 

e iria puxar os campos destes id,eae voce sabe?

$a = 1;
$query = mysql_query("Select * From usuario where id='$a'");
$row = mysql_num_rows($query);
if($row>0){
while($dados = mysql_fetch_array($query)){
echo "Usuario:".$dados['nome'];
echo "E-mail:".$dados['email'];
}
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

so um probleminha eu nao tinha dito direito a variavel $a pode estar armazendo os id de 1 á 4,ou seja como na minha tabela tem 4 registros ela pode conter registros com o numero de 1,2,3 e 4 eu queria um comando para mostrar qual numero a variavel esta armazenando para depois jogalo no select para fazer a busca do numero que esta dentro da variavel,esse $a= 1 faz isso?!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Deixa eu ver se entendi... você quer saber em qual campo a $a está?

 

Campo 1 = id_solicitacao1

Campo 2 = id_solicitacao2

Campo 3 = id_solicitacao3

Campo 4 = id_solicitacao4

 

ou você quer fazer um select onde o id = "1 ou 2 ou 3 ou 4"?

Compartilhar este post


Link para o post
Compartilhar em outros sites

ok vamos lá observa esta parcela do codigo

 

<?

$sql_view = mysql_query("SELECT * FROM solicitacao WHERE id='$id_user'");

while($linha = mysql_fetch_array($sql_view)){

$id_solicitaçao_1 = $linha['id_solicitacao1'];

$id_solicitaçao_2 = $linha['id_solicitacao2'];

$id_solicitaçao_3 = $linha['id_solicitacao3'];

$id_solicitaçao_4 = $linha['id_solicitacao4'];

 

}

if(!empty($id_solicitaçao_1)){

 

 

}else if(!empty($id_solicitaçao_2)){

 

 

}else if(!empty($id_solicitaçao_3)){

 

}else if(!empty($id_solicitaçao_4)){

 

}else{

echo "nenhuma solicitaçao de amizade no momento";}

 

?>

 

 

este codigo so ira selecionar somente os campos id_solicitaçao que estiverem no id referente ao usuario que esta logado,devido a variavel %id_user,logo abaixo ira puxar os campos e ira armazenar nas variaveis apartir do while...abaixa estara o comando if que ira verificar se o campo id_solicitaçao esta vazio ou nao,caso estiver cheio o que ele vai fazer,bem

 

1-ele ira atraves de uma variavel mostrar o numero que estiver dentro dele seja o numero 1,2,3 ou 4,depois disso ira fazer um select para puxar o numero que no caso é o numero do id,depois vira um while que ira puxar os campos nome junto a 2 botoes ACEITAR E RECUSAR

 

(sendo que os botoes eu ja sei fazer)

 

exemplo:

 

na variavel id_solicitaçao_1=esta com o numero 3,o php ira pegar o numero que esta dentro da variavel e ira puchar o id referente ao numero 3,e apartir dai vem um while que ira puxar o nome deste usuario referente ao id 3,entendeu

 

ok vamos lá observa esta parcela do codigo

 

<?

$sql_view = mysql_query("SELECT * FROM solicitacao WHERE id='$id_user'");

while($linha = mysql_fetch_array($sql_view)){

$id_solicitaçao_1 = $linha['id_solicitacao1'];

$id_solicitaçao_2 = $linha['id_solicitacao2'];

$id_solicitaçao_3 = $linha['id_solicitacao3'];

$id_solicitaçao_4 = $linha['id_solicitacao4'];

 

}

if(!empty($id_solicitaçao_1)){

 

 

}else if(!empty($id_solicitaçao_2)){

 

 

}else if(!empty($id_solicitaçao_3)){

 

}else if(!empty($id_solicitaçao_4)){

 

}else{

echo "nenhuma solicitaçao de amizade no momento";}

 

?>

 

 

este codigo so ira selecionar somente os campos id_solicitaçao que estiverem no id referente ao usuario que esta logado,devido a variavel %id_user,logo abaixo ira puxar os campos e ira armazenar nas variaveis apartir do while...abaixa estara o comando if que ira verificar se o campo id_solicitaçao esta vazio ou nao,caso estiver cheio o que ele vai fazer,bem

 

1-ele ira atraves de uma variavel mostrar o numero que estiver dentro dele seja o numero 1,2,3 ou 4,depois disso ira fazer um select para puxar o numero que no caso é o numero do id,depois vira um while que ira puxar os campos nome junto a 2 botoes ACEITAR E RECUSAR

 

(sendo que os botoes eu ja sei fazer)

 

exemplo:

 

na variavel id_solicitaçao_1=esta com o numero 3,o php ira pegar o numero que esta dentro da variavel e ira puchar o id referente ao numero 3,e apartir dai vem um while que ira puxar o nome deste usuario referente ao id 3,entendeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.