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

    [PHP + MySQL] altri punti di vista su questo codice

    Buongiorno, vorrei un parere da chi, magari è più esperto di me, non sono sicuro di quello che sto per fare.
    Ho questa tabella:

    ----------------------------------------
    | ITEMS |
    ----------------------------------------
    | id | nome | descrizione | richiede|
    ----------------------------------------

    il campo 'richiede' fa riferimento alla tabella stessa ed avrei bisogno di operatori logici AND e OR per capire quali altri record sono necessari per visualizzare il recor corrente. Per esempio:

    ----------------------------------------------
    | 100 | pippo | strano cane | (1||2)&&3 |
    ----------------------------------------------

    'Pippo' richiede che l'utente abbia già acquistato gli item con id ( 1 o 2 ) e l'item con id 3.
    Per sapere cosa ha acquistato un utente c'è la tabella users_items_map

    ----------------------------------------
    | USERS_ITEMS_MAP |
    ----------------------------------------
    | id | user_id | item_id | dataacq |
    ----------------------------------------

    La domanda: per generare una lista di item 'acquistabili' ho pensato ad una cosa così:
    - carico un array con tutti gli items già acquistati dall'utente
    - per ogni riga della tabella items sostituisco le id richieste con TRUE se sono presenti nell'array dei "già acquistati" e con la funzione EVAL() verifico il risultato dell'operazione logica. Se esce TRUE è acquistabile, se esce false non lo è.

    Dato che ho scoperto che "se la risposta è EVAL() la domanda è sbagliata", avete voi idee su metodi migliori di questo?

    Grazie
    uff...
    uff...

  2. #2
    Utente di HTML.it L'avatar di MySQL
    Registrato dal
    May 2015
    Messaggi
    729
    Questo un po' mi turba
    'Pippo' richiede che l'utente abbia già acquistato gli item con id ( 1 o 2 ) e l'item con id 3.
    Da dove saltano fuori?

  3. #3
    Si possono comprare tutti gli item che non hanno prerequisiti.
    In questo caso gli item con id 1 o 2 e 3 non richiedono altri item e sono già nella tabella USERS_ITEMS_MAP
    uff...
    uff...

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.