Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Creare un controllo SELECT HTML con una funzione PHP

    Mi stavo chiedendo se non esistesse un qualcosa che permetta di scrivere la funzione genSelect in una forma più semplice.

    La funzione gira bene e anzi ogni volta che la utilizzo mi stupisco di quanto sia performante.

    Codice PHP:
    function genSelect($NomeHTML,$TabDati,$ColID,$ColNome,$Dato 0,$AttOrdine 1,$where ""){
                
    // Nome della select HTML
                // Nome Tabella Origine dati
                // Nome colonna id
                // Nome colonna nome id
                // Dato da query
                // Attivare ordinamento interno select di default è 1 (quindi attivo)
                
        
    if (is_numeric($AttOrdine)) {
        
            If (
    $AttOrdine == 1){ $stringa " ORDER BY ordine ASC"; }
        }
        
        if (
    is_string($AttOrdine)) {
        
            
    $stringa " ORDER BY $AttOrdine ASC";
        }
            
        if (
    $where != "") { $where " WHERE " $where " " ; }
        
        
    $query "SELECT * FROM "$TabDati $where $stringa

        
    $queryformat mysql_query($query); 
        
    $select "<select name='"$NomeHTML ."'>";
        
    $select $select "<option value='0'> Non Impostato </option>";
        while (
    $row_select=mysql_fetch_assoc($queryformat)) {
            if ((
    $Dato != 0) AND ($Dato != NULL)) {
                if (
    $Dato == $row_select[$ColID]){
                    
    $selected  "selected";
                }
            }
            
    $select $select "<option value='"$row_select[$ColID] ."' $selected>"TagliaStringa($row_select[$ColNome],20) ."</option>";
            
    $selected "";
        }
        
    $select $select ."</select>";
        
        return 
    $select;



    Codice PHP:
     echo genSelect ('lvlaccount','lvlaccount','id_lvlaccount','tipo',$viewpermessi['id_lvlaccount'],'id_lvlaccount'); 
    Se ho sbagliato sezione in cui postare mi scuso in anticipo, non era mia intenzione promuovere il mio script ma solamente cercare una soluzione simile più performante.

  2. #2
    anche io uso qualcosa del genere da isnerire negli option, ad esemenere...solo che per rendere il tutto più snello passo alla function che genera il select già una query sql coi dati da visualizzare negli option, ad esempio:

    Codice PHP:
      echo $html->select('nomeSel'$label$rows);

      
    //$html è uan classe con un metodo select
      
    public function select($nome$label$record$size=1$onchange='');
        
    $html '<label for="' $label '">' $label '</label>';
        
    $html .= '<select name="' .  $nome '" id="' $nome '" size="' $size '"';
        if (
    $onchange$html .= ' onchange="' $onchange '"';
        
    $html .= '>';
        foreach (
    $rows as $row)
          
    $html .= '<option value="' $row['ID'] . '">' $row['nome'] . '"</option>";
        $html .= '
    </select>';
        return $html;
      } 

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.