Jump to content
Fórum Script Brasil
  • 0

Botões com nomes diferentes.


AlexArt5

Question

Olá amigos!

Sou inexperiente na linguagem PHP e preciso de ajuda em uma questão.

O objetivo é criar botões com nomes de strings presentes em um banco de dados (values) cujos nomes "repetidos" sejam ignorados.

Em outras palavras, se houver nomes (strings ) repetidas (iguais entre si em nome e tamanho) ele cria um botão com apenas uma ocorrência.

EX.: se houver dez strings com o nome:"Variável", o código deve criar apenas um botâo com o nome "Variável".

<?php
// Conexão com o banco de dados
$conn = @mysql_connect("localhost", "root", "") or die("Não foi possível a conexão com o Banco");
// Selecionando banco
$db = @mysql_select_db("comp7", $conn) or die("Não foi possível selecionar o Banco");

    //Criamos a fila
    $sql = mysql_query("SELECT * FROM tabela ");
    // Descobrimos o total de registros encontrados
    $numRegistros = mysql_num_rows($sql);
    
    // Criamos um array que receberá as strings
    $comparar=array();
        // Criamos uma variável simples para controle
    $passo=0;
    
        // carraga dados do banco
        while ($produto = mysql_fetch_row($sql)) {

        // aloca somente a primeira palavra da string
        $sa= explode(" ", $produto[1]);

        // insere espaços em ambos os lados da nova string
        $sb= array(str_pad($sa[0], 18,"_", STR_PAD_BOTH));

        // array que aloca todas as strings convertidas
        $comparar[]=$sb[0];
                // quando não houver mais dados
                if(!$produto){
                    $passo=1;
                }
            
            
        }//while

        // começa a comparação
        if($passo=1){
            for($c=0; $c<370; $c++){

            // se os dados do indice do array $comparar[$c] for diferente dos dados do indice do array $comparar[$c+1]
                if ( @$comparar[$c+1] !== @$comparar[$c]) {

                // crie um botão com o nome da string em $comparar[$c]
                    echo '<input type="submit"  value="'.$comparar[$c].'" />';
                }//if
                
            } //for
    
        }//if $passo    

?>

Lembrando que a tabela possui três campos:

id Auto

texto varchar(255)

preço float

formato MyIsam.

Vale resaltar que a tabela possui dezenas de nomes repetidos, os quais, se não forem tratado, criará botões com nomes repetidos.

Esse código funciona perfeitamente! Pelo menos aqui funciona.

Mas eu ainda não consegui fazer com que os botões tenham o mesmo tamanho. Dá seempre uma diferença de espaços.

Há uma solução melhor para esse caso?

Alguém pode me ajudar?

Desde já , obrigado!

Edited by AlexArt5
Link to comment
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...