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

Escolha De Utilizadores Do Mysql


Rastazituh

Pergunta

Boas ! Bem, este tópico é a continuação do último criado por mim, mas é um assunto diferente. Na minha página editusers.php tenho o seguinte código:

<?php
// Conexão com a Base de Dados
require "comum.php";

// Apresenta os resultados no Menu Pop Up
$resultado = mysql_query("SELECT login FROM users ORDER BY id ASC");

echo "<select name='menueditusers' id='menueditusers' onChange='MM_jumpMenu('parent',this,0)'>";
while ($row_users = mysql_fetch_array($resultado)){
$id=row_users;
$whoIs=$row_users["login"];
echo "<option value=\"$id\">$whoIs</option>";
}
echo "</select>";
?>

Resumidamente, este código faz uma busca no MySQL e retorna, para um menu PopUp, os usernames dos utilizadores. Depois de escolher, o utilizador clicka em Editar (input submit) e é corrida a página de script editusers_bd.php. Agora o meu problema:

Tenho um formulário com caixas de texto em que aparecerão os dados do utilizador escolhido anteriormente para editar, e sei que tenho de fazer um SELECT aos dados desse utilizador, definir variáveis para cada campo e nos values das caixas de texto colocar as tais variáveis. Depois, recorro ao comando UPDATE. O grande problema é: como eu vou fazer o SELECT do utilizador escolhido ? Quero dizer, na página editusers.php escolhi um utilizador, e quero que os dados que apareçam nas caixas de texto, depois do SELECT, sejam os mesmos do utilizador escolhido. Por exemplo:

Pesquisa e escolha no editusers.php:

id login          senha          nome

1  blabla        blabla          BlaBla

2  teste          teste           Teste

----------> escolho o id 2, Teste

Apresentação de dados do utilizador escolhido na editusers_db.php:

Username: [*Caixa de Texto]teste[*/Caixa de Texto]

Password: [*Caixa de Texto]teste[*/Caixa de Texto]

Nome: [*Caixa de Texto]Teste[*/Caixa de Texto]

Expliquei-me bem ? Quero que os dados que apareçam sejam o do utilizador escolhido em editusers.php. Preciso de fazer algum género de require ? E se sim, como ? Obrigado pela atenção.

Link para o comentário
Compartilhar em outros sites

14 respostass a esta questão

Posts Recomendados

  • 0

Cara você pode fazer o seguinte

use isso

<?php
$sql = "SELECT login FROM users WHERE id = '$id'";
$query = mysq_query($sql);
$linha=mysql_fetch_array($query);

//aqui você especifica os campo e coloca a variavel no value dentro do imput


$nome = $linha["nome"];
$senha = $linha["senha"];
$login = $linha["login"];


//ai em baixo você coloca os campo de teste assim
echo '<imput type="text" name="nome" value="'.$nome.'">';
echo '<imput type="text" name="nome" value="'.$senha.'">';
echo '<imput type="text" name="nome" value="'.$login.'">';

?>

há não esqueça de enviar o id do usuario no link

qualquer coisa posta ai biggrin.gif

Link para o comentário
Compartilhar em outros sites

  • 0

OK, tentei uma include e não dá, porque devo estar a fazer algo errado.. Este código:

<?php
  include "$id";
?>

Bem, aparecem as opções, uma mensagem de aviso e o botão Enviar, por essa mesma ordem. O aviso é:

Warning: main(row_users): failed to open stream: No such file or directory in /home/dex/public_html/conteudos/editusers.php on line 87

Warning: main(row_users): failed to open stream: No such file or directory in /home/dex/public_html/conteudos/editusers.php on line 87

Warning: main(): Failed opening 'row_users' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/dex/public_html/conteudos/editusers.php on line 87

E então ? Alguém pode-me ajudar ? Obrigado.

Link para o comentário
Compartilhar em outros sites

  • 0

Cara primeiro não post duas ou mais vezes seguida como fizesse assim.

quando a include ela serve para incluir arquivos ao codigo e não pra passar variaveis

você tem que fazer assim


<?php
// Conexão com a Base de Dados
require "comum.php";

// Apresenta os resultados no Menu Pop Up
$resultado = mysql_query("SELECT login FROM users ORDER BY id ASC");

echo "<select name='menueditusers' id='menueditusers' onChange='MM_jumpMenu('parent',this,0)'>";
while ($row_users = mysql_fetch_array($resultado)){
[COLOR=red]$id = $row_users["id"];[/COLOR]
$whoIs=$row_users["login"];
echo "<option value=\"[COLOR=red]pagina.php?id=$id[/COLOR]\">$whoIs</option>";
}
echo "</select>";
?>

você se isso dar certo agora se você observar onde ta escrito pagina.php é a pagina pra onde vai ser enviado os dados do usuario como tal o id dele

Link para o comentário
Compartilhar em outros sites

  • 0

Bem, o seu código está quase a funcionar. Repare:

editusers.php

<?php
// Conexão com a Base de Dados
require "comum.php";

// Apresenta os resultados no Menu Pop Up
$resultado = mysql_query("SELECT login FROM users ORDER BY id ASC");

echo "<select name='menueditusers' id='menueditusers' onChange='MM_jumpMenu('parent',this,0)'>";
while ($row_users = mysql_fetch_array($resultado)){
$id = $row_users["id"];
$whoIs=$row_users["login"];
echo "<option value=\"editusers_bd.php?id=$id\">$whoIs</option>";
}
echo "</select>";
?>
editusers_bd.php
<?php
$sql = "SELECT login FROM users WHERE id = '$id'";
$query = mysql_query($sql);
$linha=mysql_fetch_array($query);

// Especificar os campos e colocar a variável no value do input

$login = $linha["login"];
$senha = $linha["senha"];
$nome = $linha["nome"];
?>
Exemplo de uma das Caixas de texto:
<?php
    echo '<input type="text" name="nome" value="'.$login.'">';
    ?>
Bem, realmente tudo funciona. Contudo, dentro das caixas de texto, não aparecem os dados! Aparece sempre isto: '..', o que sugere que o ID não está a ser identificado. Das duas uma: ou o ID não está a ser enviado correctamente, ou o PHP não está a reconhecer o ID. Aproveitando a questão: utilizei um sistema de paginação para o meu sistema, cujo código é:
<?php
if (file_exists("$id.php"))  {
  include $_GET['id'] . ".php";
}
?>

E vai incluindo os conteúdos das páginas linkadas para o local onde inseri esse código. Contudo, quando no editusers.php escolho o utilizador em questão, vai buscar a action do form (editusers_bd.php). A página editusers_bd.php já é apresentada numa página nova, e o seu conteúdo não é embebido no local que estipulei no index. Como faço para que apareça nesse local ?

Aguardo resposta. Obrigado.

Link para o comentário
Compartilhar em outros sites

  • 0

Cara no caso do id certifique-se o nome no banco de dados é id mesmo ou certifique-se quando você grava algo no bd se esta gravando o numero do id ou veja se os campos id estão vazio...."já Compliquei que coisa tongue.gif " ate eu já to perdidokkkkkkkkkkkk

Link para o comentário
Compartilhar em outros sites

  • 0

Consegui, eu consegui ! Com a vossa preciosa ajuda ! biggrin.gif

Agora, só aquele pormenor:

Aproveitando a questão: utilizei um sistema de paginação para o meu sistema, cujo código é:

<?php
if (file_exists("$id.php"))  {
 include $_GET['id'] . ".php";
}
?> 

E vai incluindo os conteúdos das páginas linkadas para o local onde inseri esse código. Contudo, quando no editusers.php escolho o utilizador em questão, vai buscar a action do form (editusers_bd.php). A página editusers_bd.php já é apresentada numa página nova, e o seu conteúdo não é embebido no local que estipulei no index. Como faço para que apareça nesse local ?

Alguém pode-me explicar ? Muito Obrigado !!

Link para o comentário
Compartilhar em outros sites

  • 0
Consegui, eu consegui ! Com a vossa preciosa ajuda ! biggrin.gif

Agora, só aquele pormenor:

Aproveitando a questão: utilizei um sistema de paginação para o meu sistema, cujo código é:

<?php
if (file_exists("$id.php"))  {
 include $_GET['id'] . ".php";
}
?> 

E vai incluindo os conteúdos das páginas linkadas para o local onde inseri esse código. Contudo, quando no editusers.php escolho o utilizador em questão, vai buscar a action do form (editusers_bd.php). A página editusers_bd.php já é apresentada numa página nova, e o seu conteúdo não é embebido no local que estipulei no index. Como faço para que apareça nesse local ?

Alguém pode-me explicar ? Muito Obrigado !!

Parece que o tópico foi esquecido.. =( Alguém por aí que me saiba esclarecer esta dúvida ?

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,3k
    • Posts
      652,6k
×
×
  • Criar Novo...