Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di Kahm
    Registrato dal
    Dec 2004
    residenza
    Rome
    Messaggi
    3,580

    consiglio differenziare richieste

    salve a tutti
    ho una pagina PHP che deve restituire dei valori a seconda del JSON passato
    quindi se passo
    codice:
    {"Login":{"username":"user","password":"pass"}}
    deve fare il login
    altrimenti
    codice HTML:
    {"ListReception":[{"IdReception":"1","OrderNum":null,"Visit":null,"StartTARV":null}]}
    esegue e fa altre operazioni
    fin qui tutto OK

    il problema è come organizzare lato PHP le richieste
    nel senso: io per ora ho fatto tanti IF del tipo:
    Codice PHP:
    $data json_decode(file_get_contents('php://input'), true);

    if(
    $data["username"]!="" && $data["password"]!="") {......}

    if(
    $data["IdReception"]!="") {...} 
    i quali vanno a vedere il contenuto del JSON ed eseguo la IF corrispondente
    non mi sembra molto corretto ne professionale
    qualche suggerimento per gestire il tutto?
    grazie
    NN vi diro mai chi sono in realta,
    tutti i miei 3D sono orfani, non insistete per farmi rispondere ai 3D aperti da me

  2. #2
    Utente di HTML.it L'avatar di Kahm
    Registrato dal
    Dec 2004
    residenza
    Rome
    Messaggi
    3,580
    c'è un problema con la modifica del post
    in realtà il json ha solo questi dati:
    codice:
    {"IdReception":"1","OrderNum":null,"Visit":null,"StartTARV":null}
    NN vi diro mai chi sono in realta,
    tutti i miei 3D sono orfani, non insistete per farmi rispondere ai 3D aperti da me

  3. #3
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Ma non puoi differenziare gli url per i vari servizi? che so:

    tuo_url/login.php -> passi il json per il login
    tuo_url/reception.php ->passi altro json
    etc

  4. #4
    Utente di HTML.it L'avatar di Kahm
    Registrato dal
    Dec 2004
    residenza
    Rome
    Messaggi
    3,580
    Quote Originariamente inviata da boots Visualizza il messaggio
    Ma non puoi differenziare gli url per i vari servizi? che so:

    tuo_url/login.php -> passi il json per il login
    tuo_url/reception.php ->passi altro json
    etc
    il capo vuole tutto in un unico file
    NN vi diro mai chi sono in realta,
    tutti i miei 3D sono orfani, non insistete per farmi rispondere ai 3D aperti da me

  5. #5
    Puoi variare i dati passati, introducendo un parametro che ti indica il tipo di richiesta?!

  6. #6
    Utente di HTML.it L'avatar di Kahm
    Registrato dal
    Dec 2004
    residenza
    Rome
    Messaggi
    3,580
    Quote Originariamente inviata da countzero999 Visualizza il messaggio
    Puoi variare i dati passati, introducendo un parametro che ti indica il tipo di richiesta?!
    uhm grazie
    NN vi diro mai chi sono in realta,
    tutti i miei 3D sono orfani, non insistete per farmi rispondere ai 3D aperti da me

  7. #7
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Se vuole un unico file, non credo puoi fare diversamente
    Io forse avrei fatto a mo di Interfaccia: ti crei le classi che gestiscono la logica delle varie richieste (login, reception, etc) ed una funzione che istanzia la classe giusta in base al json ricevuto. una roba del tipo:
    Codice PHP:
    //file login.php
    class Login{
        function 
    Login($json){
          ...
        }
        public function 
    run(){
           
    // logica per il login
        
    }
    }

    //file reception.php
    class Reception{
        function 
    Reception($json){
          ...
        }
        public function 
    run(){
           
    // logica per il servizio
        
    }
    }

    //file servizi.php
    function getService($json){
       if(isset(
    $json->Login)){
          return new 
    Login($json);
       }

       if(isset(
    $json->ListReception)){
          return new 
    Reception($json);
       }
    }

    // nel tuo file principale

    $data json_decode(...);
    $app getService($data);
    $app->run(); 
    PS: Ovviamente, sarebbe meglio creare l'interfaccia...ma il concetto è quello

    PS2: magari aspetta qualcuno con un idea miglio

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.