Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 120
Sexo: Masculino

Caixa de combinação

18-08-2013 22:19

Olá!
Não estou conseguindo listar dados que NÃO estão na tabela, tipo uma categoria...
TABELA DESTAQUES:

-- -- Estrutura da tabela `destaques` --   CREATE TABLE `destaques` (   `destaque` VARCHAR(255) COLLATE latin1_general_ci NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;   -- -- Extraindo dados da tabela `destaques` --   INSERT INTO `destaques` VALUES (1); INSERT INTO `destaques` VALUES (2); INSERT INTO `destaques` VALUES (3); INSERT INTO `destaques` VALUES (4); INSERT INTO `destaques` VALUES (5);

Então, quando eu for cadastrar, a combox vai ter a numeração de 1 a 5.
Se eu cadastrar algo e escolher o destaque número 3, no próximo cadastro a combox deve listar somente 1, 2, 4 e 5... até zerar a combox.

Estou fazendo assim, mas não está funfando: rsrs

<?php $sql = "SELECT * FROM destaques INNER JOIN cadastro WHERE destaques.destaque != cadastro.destaque"; $result = mysql_query($sql); echo " <select>"; echo "<option>".Escolha."</option>"; while ($dados = mysql_fetch_array($result)) { echo "<option>" .$dados[destaque]. "</option>"; } echo "</select>";     ?>

Help! Obrigado!
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17636
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Caixa de combinação

18-08-2013 22:24

Você tem uma tabela chamada destaques com 5 linhas cadastradas.

Não seria mais fácil deletar a linha usada da tabela destaques quando usar ela, e exibir somente as que restaram da tabela?
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 120
Sexo: Masculino

Caixa de combinação

19-08-2013 02:05

Mas no formulário de edição, eu vou precisar tirar o destaque de Fulano e para passar para o Ciclano... então eu acho que precisaria da tabela "inteira" rsrs
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17636
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Caixa de combinação

19-08-2013 08:39

Primeiramente, você pode fazer um select múltiplo. Dá uma olhada nesse exemplo

<form action="teste.php" method="post"> <select name="select[]" size="4" multiple> <?php for($i = 1; $i <= 5; $i++) { echo "<option>$i</option>"; } ?> </select> <input type="submit" name="envio"> </form>


<?php if(isset($_POST['envio'])) { echo implode(",", $_POST['select']); } ?>

Os valores vão ser salvos tipo assim: 1,2,4,5

Para exibir os valores selecionados da consulta, você faz assim:

<select name="select[]" size="4" multiple> <?php $base = "1,2,4,5"; $valores = explode(",", $base); for($i = 1; $i <= 5; $i++) { if (in_array($i, $valores)) { echo "<option selected=\"selected\">$i</option>"; } else { echo "<option>$i</option>"; } } ?> </select>

O valor de $base é o valor que foi salvo no banco de dados.

Para as opções já salvas, você pode também ao invés de usar o selected, usar o disabled

echo "<option disabled=\"disabled\">$i</option>"; 

0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 120
Sexo: Masculino

Caixa de combinação

24-09-2013 10:43

RESOLVIDO.
Obrigado web... perdoe-me por demorar responder, pois estava muito apertado em outro projeto.
Abraço!
Deus te ilumine!
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17636
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Caixa de combinação

24-09-2013 11:16

Flw.
0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado