Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 24

Discussione: classe per datagrid

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    1,773

    classe per datagrid

    buongiorno ragazzi vi chiedo cortesemente aiuto , devo implementare una classe che ho trovato sul web per il datagrid , ma ho bisogno del vostro prezioso aiuto perfavore capisco che e una rogna ma mi serve grazie
    Codice PHP:

    class DataGrid
    {
        var 
    $gridcontents = array();
        var 
    $limit;
        var 
    $offset;
        var 
    $sortby;
        var 
    $sortdir;
        var 
    $selfLink;

    function 
    gridstart($name$title,$selectquery$fields,$options/*,$selectquery, $countquery, $searchquery, $fields,$options*/)
    {
      global 
    $dbcore ,$settings ;
    ob_start();
    if (!empty(
    $_REQUEST["limit"]) && is_numeric($_REQUEST["limit"])){
                
    $limit $_REQUEST["limit"];
    }else{
                
    $limit $options["limit"];
    }
    if (!empty(
    $_REQUEST["offset"]) && is_numeric($_REQUEST["offset"])){
                
    $offset $_REQUEST["offset"];
    }else{
                
    $offset "0";
    }
    if (!empty(
    $_REQUEST["sortby"])){
                
    $this->sortby = isset($_REQUEST["sortby"])?$_REQUEST["sortby"]:'';
                
    $this->sortdir iff(strtolower($_REQUEST["sortdir"])=="desc""DESC""ASC");
                
    $updategrid true;
    } else if (!empty(
    $this->sortby)) {
                
    $this->sortby $this->sortby;
                
    $this->sortdir $this->sortdir;
    }else{
                
    $this->sortby =  isset($options["sortby"])?$options["sortby"]:'';
                
    $this->sortdir = isset($options["sortdir"])?$options["sortdir"]:'';
    }
    $sortstatement iff($this->sortby" ORDER BY "$dbcore->escape($this->sortby) .iff(strtolower($this->sortdir)=="desc"" DESC"" ASC"));
     
    for (
    $xx=0$xx<count($fields); $xx++){    
    $this->imgFilePath $settings['pathcms'].'templates/admin_default/images/img_template/';
    $tdC_width   = isset($fields[$xx]['width']) ? 'width = "'.$fields[$xx]['width'].'"'      '';
    $tdC_height  = isset($fields[$xx]['height'])? 'height = "'.$fields[$xx]['height'].'"'    '';
    $tdC_align   = isset($fields[$xx]['align']) ? 'align = "'.$fields[$xx]['align'].'"'      '';
    $tdC_valign  = isset($fields[$xx]['valign'])? 'valign = "'.$fields[$xx]['valign'].'"'    '';
    $tdC_colspan = isset($fields[$xx]['colspan'])? 'colspan = "'.$fields[$xx]['colspan'].'"' '';
    $fielddata .= '<td class="tabletitlerow" '.$tdC_width $tdC_height$tdC_align .$tdC_valign.'" nowrap>';
    if(
    $this->sortby == $fields[$xx]["name"])
    {
    $fielddata .= '&nbsp;<a href="index.php?_n='.$_GET['_n'].'&_s='.$_GET['_s'].'&rows='.$limit.'&offset='.$offset.'&sortby='.urlencode($fields[$xx]["name"]).'&sortdir='.iff(strtolower($this->sortdir)=="asc""desc""asc").'">'$fields[$xx]["name"].'&nbsp;<img src="'.$this->imgFilePath .iff(strtolower($this->sortdir)=="asc""asc""desc").'.gif" border="0" /></a>';
    } else if (isset(
    $fields[$xx]["type"]) and $fields[$xx]["type"] == "custom") {
    $fielddata .= '&nbsp;'.$fields[$xx]["title"];
          
    $norenderoptions true;
    }else{
    $fielddata .= '&nbsp;<a href="index.php?_n='.$_GET['_n'].'&_s='.$_GET['_s'].'&rows='.$limit.'&offset='.$offset.'&sortby='.urlencode($fields[$xx]["name"]).'&sortdir='.iff(strtolower($this->sortdir)=="asc""desc""asc").'">'$fields[$xx]["title"].'</a>';
    }
    $row  .= '<td colspan="'$tdC_colspan .'" width="'$tdC_width  .'" align="'$tdC_align  .'" valign="'$tdC_valign .'">['$fields[$xx]["name"] .'] </td>'.CMS_CRLF;
    $fielddata .= '</td>';
    }
    $istabs false;
    echo 
    '<table cellpadding="0" cellspacing="0" border="0" width="100%" class="tborder" style="float: left; position: relative;">'.CMS_CRLF;
      if (!
    $istabs){
    echo 
    '<thead>'.CMS_CRLF.'<tr>'.CMS_CRLF;
    echo 
    '<td class="tcat" width="1" align="left" nowrap>
    <img src="'
    .$settings['pathcms'].'templates/admin_default/images/img_template/space.gif" width="1" height="21" border = "0"></td>';
    echo 
    '<td class="tcat" width="100%" colspan="" align="left" nowrap>'$title .'</td>'.CMS_CRLF;
    echo 
    '</tr>'.CMS_CRLF.'</thead>'.CMS_CRLF;
            }
    echo 
    '<tbody><tr><td class="contenttableborder" colspan="2"><table border="0" cellpadding="3" cellspacing="1" width="100%">';
    echo 
    '<tr>';
    echo 
    $fielddata;
    unset(
    $fielddata);
    echo 
    '</tr>';
                
    $count 0;
                
    $sortjoin $sortstatement." LIMIT "$dbcore->escape($offset) .", "$dbcore->escape($limit) .";";
                eval(
    "\$queryexec = \""$selectquery ."\";");
                
    $result $dbcore->getlist($queryexec)or die(mysql_error());
                
            foreach(
    $result  as $rowfields)    {
                
    $count++;
                
    $getBgcolor getBgcolor();
                if (!
    $options["idname"]){
                          
    $id $count;
                }else{
                          
    $id $rowfields[$options["idname"]];
                }
                echo 
    '<tr id="cms'$id .'" class="'$getBgcolor .'">'.CMS_CRLF;
                if (
    $options['calluser']){
                          
    $rowresult = @call_user_func($options["calluser"], array($rowfields$fields));
                } else {
                          
    $rowresult $rowfields;
                }
                echo  @
    preg_replace_callback("/\[(.*)\]/e""\$rowresult['\\1']"$row);
                echo 
    '</tr>';
            }
            
    printTableFotterContent();    
            
    $this->gridcontents[$name] = ob_get_contents();
            
    ob_end_clean();
    }
    function 
    displaygrid($name)
    {
            echo 
    $this->gridcontents[$name];
    }
    }

    function 
    getBgcolor($bgcolor false)
    {
            global 
    $RCW ;
     
            if(
    $bgcolor == "columright"
            {
             if(
    $bgcolor == false)
             {
                     
    $bgcolor "columleft";            
             }else{
                     
    $bgcolor "columright";            
             }
              return 
    "columright";
            }else{
             if(
    $bgcolor == false)
             {
                     
    $bgcolor "columright";            
             }else{
                     
    $bgcolor "columleft";            
             }
              return 
    "columleft";
            }

    permetto che instanziando la classe e facendo un print_r mi stampa ma non estrae i risultati della query grazie
    Non è tanto importante saper fare,quanto ad avere voglia d imparare .

  2. #2
    Utente di HTML.it L'avatar di Fractals87
    Registrato dal
    Apr 2008
    Messaggi
    1,202
    questa classe non lavora da sola.
    Ha bisogno di un oggetto dbcore che si occupa della connessione e delle interrogazioni.
    Questo oggetto è settato correttamente?
    La connessione al db avviare correttamente?
    Sql che tu lanci, è sintatticamente corretta?

    Sono tante le possibili causa del fatto che non ti stampi i risultati della query... nessun errore a video?
    Che mestiere difficile.....essere da soli ancora di più

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    1,773
    Si mi da che non è definita la variabile fieldset se la setto sposta i campi ! Comunque la connessione c e aiutami per favore
    Non è tanto importante saper fare,quanto ad avere voglia d imparare .

  4. #4
    Utente di HTML.it L'avatar di Fractals87
    Registrato dal
    Apr 2008
    Messaggi
    1,202
    fai un po di debug e vedi cosa ti tira fuori

    $result = $dbcore->getlist($queryexec)or die(mysql_error());
    print_r($result);
    foreach($result as $rowfields)...

    inserisci un bel print li
    Che mestiere difficile.....essere da soli ancora di più

  5. #5
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,448
    Ma perché non studi PHP invece di prendere roba a caso in giro e chiedere agli altri di fartela far funzionare?

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    1,773
    sto studiando e devo dire che mi piace tanto
    Non è tanto importante saper fare,quanto ad avere voglia d imparare .

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    1,773
    con il print_r non mi stampa niente
    Non è tanto importante saper fare,quanto ad avere voglia d imparare .

  8. #8
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,448
    Quote Originariamente inviata da rocco.mod Visualizza il messaggio
    sto studiando e devo dire che mi piace tanto
    Mi fa piacere che ti piaccia, ma vuoi fare più di quanto tu sia pronto a fare visti i problemi che proponi.
    Le cose si imparano con calma e per gradi.

  9. #9
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    1,773
    Ragazzi datemi una mano per favore si che già avete i vostri di problemi
    Non è tanto importante saper fare,quanto ad avere voglia d imparare .

  10. #10
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,448
    Ma nel frattempo tu che stai facendo? Hai fatto altre prove o aspetti che qualcuno ti dica cosa devi fare?

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 © 2024 vBulletin Solutions, Inc. All rights reserved.