Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. backinblack
    3. Post
    B

    backinblack

    @backinblack

    • Profilo
    • Chi segue 0
    • Da chi è seguito 0
    • Discussioni 1
    • Post 26
    • Migliore 0
    • Gruppi 0
    Iscrizione Ultimo Accesso
    Località Minturno Età 35
    0
    Reputazione
    26
    Post
    0
    Visite al profilo
    0
    Da chi è seguito
    0
    Chi segue
    User

    Post creati da backinblack

    • RE: Logout + Cancellazione

      Ti suggerisco allora di aggiungere un ulteriore campo alla tabella dei presenti, che puoi chiamare ad esempio "last_active" e lo definisci datetime.

      Ogni volta che un utente connesso apre una pagina del sito aggiorni quel campo correlato alla riga dell'utente in questione a NOW().

      Successivamente imposti una query in cui elimini tutti i record dove "DATE_ADD(last_active, INTERVAL 30 MINUTE) <= NOW()".

      Praticamente funziona così: ogni volta che un utente si muove nel sito viene marcato come attivo, nel momento in cui è inattivo da 30 minuti o più il primo utente che aggiorna la pagina manda in esecuzione la seconda query cancellando quindi tutti gli inattivi dal sito.

      In questo modo però devi anche prevedere chi magari si ferma 30 minuti su una pagina e poi riprende a navigare sul sito sempre da connesso, ma la soluzione più facile è chiudergli la sessione dopo 30 minuti.

      postato in Coding
      B
      backinblack
    • RE: Logout + Cancellazione

      @infosicurezza said:

      Restituisce 1 Tabella 'user' sconosciuta in MULTI DELETE
      se la query è una cosa del genere
      1 sarebbe l'id che ho fatto stampare.
      [php]
      $query = "DELETE user FROM utenti_online WHERE id='$id'";
      mysql_query($query)or die(mysql_error());
      [/php]
      mentre stampa questo errore
      Errore di sintassi nella query SQL vicino a '* FROM utenti_online WHERE id='1'' linea 1
      se la query è questa
      [php]
      $query = "DELETE * FROM utenti_online WHERE id='$id'";
      mysql_query($query)or die(mysql_error());
      [/php]:?

      Me ne sono accorto ora che avevi sbagliato nuovmente la sintassi della query SQL, scrivi così:
      [php]$query = "DELETE FROM utenti_online WHERE id='$id'";
      mysql_query($query)or die(mysql_error());[/php]

      postato in Coding
      B
      backinblack
    • RE: Logout + Cancellazione

      Prova a fare un echo della query nella variabile, a naso ho il sospetto che non venga valorizzato $id correttamente.

      Altrimenti, sistema il mysql_query nel seguente modo.
      [PHP]mysql_query($query)or die(mysql_error());[/PHP]

      postato in Coding
      B
      backinblack
    • RE: Caricamento file Ajax

      No, nessuno.

      XmlHttpRequest non può ancora processare il trasferimento dei files da una finestra di dialogo, pertanto le uniche soluzioni possibili sono la classica, trasferendo cioè con il target del form puntato a self, o asincronomamente utilizzando un iframe, con la possibilità così facendo di eseguire ulteriori operazioni durante l'upload.

      postato in Coding
      B
      backinblack
    • RE: Logout + Cancellazione

      E' sbagliata la sintassi della query in primis, devi eliminare il *.
      Secondariamente devi mandare in esecuzione la query con un mysql_query() se non lo hai fatto 😉

      postato in Coding
      B
      backinblack
    • RE: Ciclo While, e immagine a coppie di 2

      @supercapocc said:

      In pratica dovresti fare qualcosa del genere :

      [php]
      // imposti un contatore
      $i = 0;
      while($row = mysql_fetch_assoc($result))
      {
      echo $row['img'];
      // il contatore aumentata di un intero ad ogni iterazione
      $i++;
      // quando il contatore arriva a 2 vado a capo e lo azzero
      if($i == 2)
      {
      echo '<br />';
      $i = 0;
      }
      }
      [/php]Puoi impostare anche un modulo nella condizione del gestore del flusso :
      [php]
      if($i % 2) echo '<br />';
      [/php]In questo modo non lo devi neanche azzerare.

      Sicuramente è una soluzione, ma personalmente trovo che sia la meno elegante in quanto fa fare a php lavoro inutile che sarebbe bene lasciare alle tecnologie di markup lato client tanto per risparmiare in termini prestazionali quanto per praticizzare la futura riformattazione del layout.

      Io suggerirei pertanto una soluzione (prendendo come assunto ipotetico che le tue immagini sono 100x100) come la seguente.

      Da CSS:

      div#imgContainer{
      width:200px;
      }
      
      div#imgContainer img{
      display:block;
      float:left;
      width:100px;
      height:100px;
      }
      

      Da HTML/PHP
      [PHP]<div id="imgContainer">

      <?php

      while (condizione di scorrimento tua delle immagini)
      {

      echo "<img src="$url_immagine" alt="Immagine" />";

      }

      ?>

      </div>[/PHP]

      postato in Coding
      B
      backinblack
    • RE: PHP sessioni, con database per sessioni

      L'uso di una tabella sul database per gestire le sessioni è necessario quando bisogna fare alcune operazioni sulle sessioni stesse.

      Può essere utile per ricordarle salvando identificativi univoci da abbinare ai cookie che non abbiano niente a che vedere con le credenziali d'accesso.

      Può essere utile per mantenere tempi prolungati di connessione anche restando fermi su una singola pagina per più di 15 minuti e così via.

      Ad ogni modo, per l'uso che ne hai descritto tu, non serve che ti complichi poi tanto la vita, usa tranquillamente le funzionalità offerte da php per gestirle e non dovresti avere problemi 😉

      postato in Coding
      B
      backinblack
    • RE: phpGraphLib in modalità dinamica non funziona

      Ciao 🙂

      A prima vista direi che c'è un errore di sintassi sull'array $data nell'assegnazione dinamica da te esposta:
      @prinzart said:

      [php]
      $data[$row_grafico['id_art_articolo']=>$row_grafico['contatore']];[/php]

      Ti consiglio di provare così:
      [PHP]$data[$row_grafico['id_art_articolo']] = $row_grafico['contatore'];[/PHP]

      Fammi sapere come va 😉

      postato in Coding
      B
      backinblack
    • RE: Leggere file XML

      Ciao 🙂

      @felino said:

      Devo essere memorizzati anche i tag xml, cioè una vera e propria stampa del file xml nella variabile php.

      Prova ad avvalerti dell'uso di file_get_contents(), legge il contenuto del file specificato e lo ritorna, dovrebbe fare al caso tuo 😉

      In alternativa, se non era quello che ti serviva, dai un occhio ai moduli simpleXML e DOMDocument di PHP.

      postato in Coding
      B
      backinblack
    • RE: Quale Scoperta vi appassiona di più? Dì la tua!

      La mia personalissima classifica:

      1. Gli Esopianeti sono un argomento che ha rapito la mia fantasia al punto che ho seguito con interesse la vicenda e tutt'ora m'aspetto da un momento all'altro la rilevazione di un pianeta simile al nostro.

      2. Acqua nello spazio, la presenza attuale di acqua allo stato liquido sotto la superficie ghiacciata di europa (una delle lune di giove).

      3. La teoria della seminazione spaziale secondo cui gli elementi fondamentali per la vita, a cui gli amminoacidi possano aver legato per dar forma ad intelligenze complesse, siano stati portati sulla terra attraverso gli asteroidi.

      4. Materia, Energia Oscura e il destino dell'universo, queste forze regolatrici invisibili ma presenti che regolano l'evolversi dell'universo in cui viviamo, il "più grande errore di einstein".

      5. Cellule riprogrammabili che potranno consentirci di dar vita a nuove cure mediche o nuovi modi biomeccanici per far interagire l'uomo con le macchine.

      Il seguente è di qualche anno più vecchiotto ma merita sempre in una mia classifica

      1. Internet che ha dato modo al singolo di poter sfruttare al meglio il potere più grande che gli si possa concedere e di diffonderla: la parola. Il nostro mondo è cambiato grazie a questa rivoluzione, così come le nostre vite e probabilmente non ne potremo sempre più fare a meno.
      postato in GT Fetish Cafè
      B
      backinblack
    • RE: Div Espandibile - Tipo Collapsibile

      @Porretz said:

      Per una questione grafica, l'altezza del div che contiene a sua volta il div nascondibile è settata ad auto, e quindi nel momento in cui il div è chiuso tutto va bene..
      Quando apro il div pero', nel caso il cotenuto nascosto sia molto, finisco fuori dallo spazio disponibile..

      Se finisci fuori dallo spazio disponibile allora l'altezza non è settata ad auto poiché, se così fosse, il div principale che ti contiene questo espansibile si estenderebbe a seconda dell'altezza di quest'ultimo una volta comparso.

      Controlla bene con firebug o simili, forse c'è uno stile da qualche parte che ti fissa l'altezza del contenitore superiore 😉

      postato in Coding
      B
      backinblack
    • RE: [MySQL] Come organizzare una struttura utenti di diverse tipologie ?

      @rambco said:

      hai ragione, cmq rapportarsi con gli altri serve anche a capire le varie metodologie con cui affrontare il problema no 😉

      Motivo per cui è stata mia premura esprimere il precedente concetto, magari arriva qualcuno che mi smentisce/corregge e mi apre un mondo nuovo.

      Se mi sono posto lasciando intender male, ti chiedo scusa 🙂

      postato in Coding
      B
      backinblack
    • RE: [MySQL] Come organizzare una struttura utenti di diverse tipologie ?

      Chiaro che tutto dipende dall'applicazione che si intende sviluppare.
      A seconda del contesto alcune logiche ridondanti possono essere più performanti su numeri sconfinati mentre in medio-piccole applicazioni non conviene in quanto il numero "esiguo" di record non comporta problemi prestazionali risultando spesso invece il metodo più rapido per gestire la cosa.

      Sta all'abilità di chi struttura il database prevedere in base alla vastità dell'applicazione, e al numero di record che si aspetta di immagazzinare, di creare una determinata logica di archiviazione relazionale, al posto di un altra, al fine di poterne ottimizzare al meglio le operazioni sui dati ivi archiviati.

      postato in Coding
      B
      backinblack
    • RE: Div Espandibile - Tipo Collapsibile

      Da foglio di stile:

      div.hideContent{display:none;}
      div.showContent{display:block;}
      ```Da Javascript (a fondo pagina, prima della chiusura del body)
      
      [php]function switchVisBox(box)
      {
      var obj = document.getElementById(box);
      obj.className = (obj.className == 'hideContent')? 'showContent' : 'hideContent';
      }[/php]
      
      Da HTML
      [html]<a href="javascript:switchVisBox('hiddenContent');">Mostra/Nascondi Contenuto</a>
      <div id="hiddenContent" class="hideContent">Hello World!</div>[/html]
      
      Gli stili da css definiscono lo stato visibile o invisibile del div nella pagina, il contenuto di esso rimane insito nel markup per cui perfettamente in vista per bot di motori di ricerca (almeno, non ho mai avuto personalmente problemi con tal metodo)
      
      La funzione javascript ha l'unico scopo di sostituire il class del div, agendo on the fly, tramite click sul link costruito ad hoc che, come è facile intuire, individua quel div preciso mediante il parametro che passa alla funzione javascript, il quale corrisponde all'attributo id del div.
      
      Spero possa esserti stato d'aiuto :)
      postato in Coding
      B
      backinblack
    • RE: [MySQL] Come organizzare una struttura utenti di diverse tipologie ?

      @rambco said:

      eccomi ritorno ehehe

      allora altro dubbio.... il software deve gestire dei pagamenti.. ovvero gli utenti devono eseguire un tesseramento per poi poter richiedere delle autoriazioni....

      io avevo in mente di fare un'unica tabella pagamenti da agganciare poi con due tabelle, alle tabella Tesseramenti e Autorizzazioni

      Tabelle : Tesseramenti, Autorizzazioni, Pagamenti
      Tabella di collegamento :

      • Associazione_Tesseramenti : che collega l'id della tessera al pagamento sulla tabella pagamenti

      • Associazione_Autorizzazioni : che collega l'id dell'autorizzazione al pagamento sulla tabella pagamenti

      Un approccio del genere è giusto ? Suggerimenti ?

      Ciao, l'approccio è ideologicamente corretto, tuttavia è ridondante fare 2 tabelle per gestire gli abbinamenti, ne basta una strutturata ipoteticamente così come segue.

      **id | tipo | id_assoc | pagamento**
      ```Dove:
      
      - **id **è l'identificativo univoco della riga;
      - **tipo **identifica la tipologia di abbinazione (tesseramento/autorizzazione);
      - **id_assoc **è l'id da abbinare del tesseramento/autorizzazione in questione;
      - **pagamento **è l'id associato al pagamento in questione.
      
      
      Spero sia abbastanza chiaro ;-)
      postato in Coding
      B
      backinblack
    • RE: IE7, problemi di padding ecc...

      Prova a dare allo stile del suddetto link le seguenti proprietà:
      [HTML]display:block;
      width:auto;
      height:auto;[/HTML]

      Lo scopo è rendere <a> un elemento blocco e farlo automaticamente espandere fino a quanto il <li> consente. A tal proposito se il <li> presenta margini interni (padding) sarebbe bene azzerarli.

      Per IE6 non si tratta più di una questione di retrocompatibilità/accessibilità ma di miglioramento sia per quel che riguarda gli standard del web che per la sicurezza degli utenti. Le più importanti piattaforme odierne (es: facebook) rilevando IE6 te ne sconsigliano l'uso in quanto non si possono più scrivere markup ad hoc per far funzionare un browser obsoleto.

      Ad ogni modo, fammi sapere come va per il menù 😉

      postato in Coding
      B
      backinblack
    • RE: Problema con l'invio delle mail in locale (usando quindi easy php)

      Per poter inviare le mail devi specificare il server SMTP del tuo email provider.
      In alternativa devi installare un server SMTP in locale sul computer.

      Googlando è possibile trovare sia un elenco degli smtp provider che di software freeware per SMTP server.

      postato in Coding
      B
      backinblack
    • RE: Statistiche

      Se non ti servono impressioni uniche puoi fare lato php con un controllo sullo user agent; quelle dei bot dei vari motori di ricerca son note e basta realizzare un pattern per escluderle.

      In alternativa puoi anche usare javascript per mandare una richiesta di memorizzazione ad una pagina apposita una volta caricato il documento, se non sbaglio si può escludere dall'indicizzazione il contenuto degli script inserendoli o come fogli esterni o adoperando le tag commento di html all'interno dell'area di scripting.

      postato in Coding
      B
      backinblack
    • RE: Problema strano con str_replace

      Ciao, posso provare a suggerirti di usare una sostituzione con regular expression per tagliare la testa al toro e vedere se funziona ?

      [PHP]$MioContenuto = preg_replace("#src[ ]?=[ ]?"[ /]*?images#is", "src="http .. miosito ../gestione/images", $MioContenuto);[/PHP]

      Ho specificato un pattern di ricerca più elastico, nel qual caso vi sia qualche spazio o altro che sballa il matching dello str_replace, ricorda di sostituire l'url giusta dove ho scritto "http .. miosito .." 😉

      Fammi sapere come va 🙂

      postato in Coding
      B
      backinblack
    • RE: Problema data corrente

      @Samyorn said:

      Per fare questo dovresti sostituire l'attuale campo in datetime con un campo INT convertendo le date in timestamp, riadattando ovviamente anche il codice in modo che i prossimi dati verranno inseriti in timestamp.

      Una volta che avrai i dati in formato timestamp significa che lavorerai con dei numeri interi quindi con i semplicissimi <= otterrai il risultato che cerchi. 😉

      time(); per ottenere il timestamp attuale e quindi confronti tale valore con il contenuto del Db
      [PHP]$time=time();
      $sql="SELECT * FROM table WHERE campodata >= '$time'";[/PHP]
      😉

      Non occorre trasformare tutto in timestamp: anche con i datetime si possono fare questo tipo di confronti, il dbms lo consente senza problemi, l'unica differenza è che si risparmiano 2byte in archiviazione se non ricordo male, inoltre se ha un db pieno zeppo di record dovrebbe riconvertire tutto.

      es:
      [PHP]$sql = "SELECT * FROM table WHERE datefield >= NOW()";[/PHP]

      postato in Coding
      B
      backinblack