Pagina 6 di 6 primaprima ... 4 5 6
Visualizzazione dei risultati da 51 a 58 su 58
  1. #51
    Utente di HTML.it
    Registrato dal
    Nov 2001
    Messaggi
    81
    Originariamente inviato da daniele_dll
    noi due non ci capiamo

    session_set_save_handler

    SERVE ad impostare con quali funzioni\metodi PHP deve eseguire le varie operazioni sulla sessione...

    e fin qui...siamo d'accordo giusto?
    giusto

    Originariamente inviato da daniele_dll
    ora...

    xche fare

    codice:
    $sessions = &new clsSession();
    session_set_save_handler(......);
    session_start();
    .
    .
    .
    $online_users = $sessions->get_onlineusers();
    non è meglio fare
    codice:
    $sessions = &new clsSession($_COOKIE['s']);
    .
    .
    .
    $online_users = $sessions->get_onlineusers();
    non sembra anche a te + "ordinato"
    E' disordinato perchè non metti tutto in una classe, anche session_set_save_handler, e non usi i metodi di quella classe come argomenti della funzione

    - 2 righe...mi fanno il lavoro di 4
    Dopo aver scritto una 50ina di righe in più per gestirmi la sessione da solo


    - fai fare meno lavoro inutile a php
    E con la classe chi lo fa il lavoro? Non vorrai per caso dire che anche le prestazioni sono migliori?

    - si ci capisce di +
    mah...

    - il primo esempio...è appunto un'esempio di programmazione sconquassata...xche un poco usi i comandi di php x gestire le sessioni ed 1 podo usi la tua classe...quando tra 6 mesi dovrai rileggere il codice...cosa farai? ^^
    Rewind: è disordinato perchè non metti tutto in una classe, anche session_set_save_handler, e non usi i metodi di quella classe come argomenti della funzione

    e tanti, tanti, tanti altri motivi
    a cui gli sviluppatori php non hanno pensato perchè sono tutti cretini

  2. #52
    invece di sparare ***** potresti fermarti 1 minuto a rileggere

    partendo dal fatto che in PHP5 stavano mettendo SQLite x le sessioni...ma a quanto pare non lo faranno + per un problema SPECIFICO di SQLite... (quindi come vedi...anche loro stavano passando alle sessioni su db)...

    caro mio...le prestazioni sono migliori quando il codice è migliore...personalmente preferisco usare le classi...e non hai idea di ciò che ti perdi.

    come ti ho detto...far un uso mischiato delle funzioni di php con altri funzioni\metodi personali fa SOLO confusione nel codice.

    E' disordinato perchè non metti tutto in una classe, anche session_set_save_handler, e non usi i metodi di quella classe come argomenti della funzione
    come ti ho detto su...ti addentri nella programmazione sconquassata usando un po le funzioni di php ed un po i tuoi metodi...

    Dopo aver scritto una 50ina di righe in più per gestirmi la sessione da solo
    non te le devi scrivere lo stesso dato che ti crei il tuo gestore?

    E con la classe chi lo fa il lavoro? Non vorrai per caso dire che anche le prestazioni sono migliori?
    x lavoro inutile parlo di session_set_save_handler e session_start che nella classe sarebbe inglobato nel costruttore

    a cui gli sviluppatori php non hanno pensato perchè sono tutti cretini
    uno degli sviluppatori lo dice proprio su un libro...alla fine...sono molto meglio le sessioni su database

    ---

    tu lo puoi dare un uso mischiato della tua classe e delle funzioni di php...nessuno te lo impedisce...il codice sarà molto + confusionario....

    inoltre sulle prestazioni ti dico vai a guardare...
    http://cmsoft.phpsoft.it

    instanzio la bellezza di 17\18 classi...
    (dopo il primo avvio aggiorna la pagina e guarda il risultato)

    utilizzando le classi ho potuto creare sistemi interni di caching che mi hanno evitato una mega confusione che mi avrebberò creato le singole funzioni.

    per dirla tutta...io le prove le ho fatte...e secondo me le classi sono + performanti sotto TANTI punti di vista.

    (chiediti xche ad esempio JSP(JAVA)...quindi solo programmazione strutturata, ordinata e soprattutto è basata sugli oggetti (classi) va + veloce di php...anche se di poco, col tutto che non gira in REAL TIME...ma in una macchina virtuale non realtime (sui sistemi sun, va in real time...è va moltoooo + veloce!))

    ci sono tanti motivi per cui si usano le classi...e il fatto che te lo stia dicendo io non vuol dire che le uso solo io ^^

    le classi ti permettono di fare cose straordinarie...oltre al fatto che se le crei bene (ad es NIENTE global nelle funzioni, ma passaggio dei parametri) le puoi rimettere dove ti pare e piace ed in qualsiasi condizione ^^

    poi...puoi fare come ti pare e piace...ma quando ti ritroverai a lavorare in gruppo e ti verrà chiesto di scrivere una parte di codice...cosa farai...? userai le funzioni? e se xcaso sai 1 nome uguale ad una var? che succede? ... ^^
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  3. #53
    Utente di HTML.it
    Registrato dal
    Nov 2001
    Messaggi
    81
    Originariamente inviato da daniele_dll
    invece di sparare *****
    grazie

    Originariamente inviato da daniele_dll
    partendo dal fatto che in PHP5 stavano mettendo SQLite x le sessioni...ma a quanto pare non lo faranno + per un problema SPECIFICO di SQLite... (quindi come vedi...anche loro stavano passando alle sessioni su db)...
    E cosa centra? Siamo tutti convinti che sia bene usare il db come luogo in cui memorizzare le sessioni.

    Originariamente inviato da daniele_dll
    caro mio...le prestazioni sono migliori quando il codice è migliore...personalmente preferisco usare le classi...e non hai idea di ciò che ti perdi.
    Anche a me sono simpatiche le classi, pensa che di solito programmo in Java
    Infatti quella che uso è una classe che adopera set_save_handler

    Originariamente inviato da daniele_dll
    come ti ho detto...far un uso mischiato delle funzioni di php con altri funzioni\metodi personali fa SOLO confusione nel codice.


    come ti ho detto su...ti addentri nella programmazione sconquassata usando un po le funzioni di php ed un po i tuoi metodi...
    Devo pensare che tu per capire se una stringa è presente in un altra in un metodo di una classe non usi la funzione predefinita strstr() ma ti crei un metodo privato apposito che controlla carattere per carattere?


    Originariamente inviato da daniele_dll
    non te le devi scrivere lo stesso dato che ti crei il tuo gestore?
    Sì ma posso usare tutte le impostazioni del php.ini come se le sessioni fossero su file di testo per tutte le altre cose

    Originariamente inviato da daniele_dll
    x lavoro inutile parlo di session_set_save_handler e session_start che nella classe sarebbe inglobato nel costruttore
    Non mi sembra una gran fatica vista qual'è l'alternativa

    Originariamente inviato da daniele_dll
    uno degli sviluppatori lo dice proprio su un libro...alla fine...sono molto meglio le sessioni su database
    Siamo d'accordo no? Ma scommetto quello che vuoi che si riferiva al salvare le sessioni sul db rispetto al farlo sui file di testo.


    Originariamente inviato da daniele_dll
    tu lo puoi dare un uso mischiato della tua classe e delle funzioni di php...nessuno te lo impedisce...il codice sarà molto + confusionario....
    rewind: devo pensare che tu per capire se una stringa è presente in un altra in un metodo di una classe non usi la funzione predefinita strstr() ma ti crei un metodo privato apposito che controlla carattere per carattere?


    Originariamente inviato da daniele_dll
    utilizzando le classi ho potuto creare sistemi interni di caching che mi hanno evitato una mega confusione che mi avrebberò creato le singole funzioni.

    per dirla tutta...io le prove le ho fatte...e secondo me le classi sono + performanti sotto TANTI punti di vista.
    rewind: anche a me sono simpatiche le classi, pensa che di solito programmo in Java
    Infatti quella che uso è una classe che si serve di set_save_handler


    Il resto lascio stare perchè è delirio

  4. #54
    vabbene...fai come ti pare

    appena cambiano la struttura di session_set_save_handler...vatti a riscrivere tutto il codice

    Devo pensare che tu per capire se una stringa è presente in un altra in un metodo di una classe non usi la funzione predefinita strstr() ma ti crei un metodo privato apposito che controlla carattere per carattere?
    poi me la spieghi...forse non hai realizzato...che non è che non uso le funzioni di php...ma...non mi piace mischiare il mio codice con la struttura di php...x il semplice fatto che mi limita e mi costringe a usare le impostazioni predefinite del php...
    se io la garbage collection invece di lanciarla a caso...la vorrei usare solo quando si verifica l'evento login non posso...
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  5. #55
    Utente di HTML.it
    Registrato dal
    Nov 2001
    Messaggi
    81
    Originariamente inviato da daniele_dll
    vabbene...fai come ti pare

    appena cambiano la struttura di session_set_save_handler...vatti a riscrivere tutto il codice
    Vabbè che abbiamo appurato che sono cretini, ma non lo saranno mica così tanto da stravolgere le sessioni e rompere la compatibilità all'indietro?

    Comunque ok, mi hai convinto :quipy:

  6. #56
    Originariamente inviato da Baoh
    Vabbè che abbiamo appurato che sono cretini, ma non lo saranno mica così tanto da stravolgere le sessioni e rompere la compatibilità all'indietro?

    Comunque ok, mi hai convinto :quipy:
    neanche rispondo che è meglio
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  7. #57
    Utente bannato
    Registrato dal
    Jan 2002
    Messaggi
    852
    potresti dirmi come ti sembra la mia classe che gestisce le sessioni?

  8. #58
    Utente di HTML.it L'avatar di gasmor
    Registrato dal
    Apr 2004
    Messaggi
    1,768

    una piccola correzione...

    ciao, innanzitutto devo dire cHe gm sei stato grande, funziona tutto egregiamente...

    unica cosa mi sono permesso di fare una "correzione" VVoVe: forse perchè sono un fagiano e non ho capito perfettamente come dovrebbe funzionare

    in pratica, quando si lascia il browser aperto oltre la scadenza della sessione cosa succede:

    la sessione viene eliminata dal database, ma il cookie resta in memoria...

    accedere al sito risulta impossibile e si deve per forza:

    o chiudere il browser e riaprirlo;
    oppure cancellare i cookie;

    a questo punto ho pensato di modificare il codice così:

    Codice PHP:


    function my_session_start() {

         
    $cookie_expire = ($this->session_time 0) ? (time() + $this->session_time) : 0;
         
         if(!isset(
    $_COOKIE['navigazione_session'])) {
         
              
    setcookie('navigazione_session'$this->my_session_id$cookie_expire);
              
              
    #mysql_query("INSERT INTO my_session VALUES('" . $this->my_session_id . "', '', " . time() . ")");
              
          
    } else {
          
             if(
    $this->session_time 0)  setcookie('navigazione_session'$this->my_session_id$cookie_expire);
           
          }
          
          
    ## modifica mia  ##################

           
    $session_query mysql_query("SELECT session_vars FROM my_session

                                         WHERE sessid = '
    {$this->my_session_id}'");
                                         
           if(
    mysql_num_rows($session_query) == 0) {      
           
                  
    mysql_query("INSERT INTO my_session VALUES('" $this->my_session_id "', '', " time() . ")");
           
           }
          
      
    #### FINE MODIFICA  ###################

    ora mi chiedevo: sono un fagiano oppure il problema c'è realmente?
    Hai provato a creare un sito con Jaaxo Cms PHP5? new!

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