Visualizzazione risultati 1 fino 3 di 3

Discussione: sostituire array statico con array dinamico

  1. #1
    OMGFRENK non è connesso Utente giovane
    Data registrazione
    22-01-2020
    Messaggi
    30

    Predefinito sostituire array statico con array dinamico

    salve avevo scritto un paio di settimane fa nella sezione php e mi è venuto il dubbio che forse non era la giusta sezione..
    lo ripropongo nella sezione javascript sperando di trovare aiuto..

    in un file.js all interno di una funzione ho un array così composto

    Codice:
    data = {
        players: {
          home: [
            {
              name: 'Pizarro',
              asset: 'bm-pizarro.jpg',
              origin: 'Peru',
              height: '1.84m'
            }
          ]
        }
      }
    in un file.php ho creato un array prendendo i dati dal database
    Codice PHP:
    $data = [
    "players" => [
    "home" => [
    [
    "name" => $rosa[0]['playerName'],
    "asset"=> $rosa[0]['playerID'].'.png',
    "origin" => $rosa[0]['playerState'],
    "height" => $rosa[0]['playerHeight']
    ]
    ]
    ]
    ];
    $dataJS = json_encode($data);
    echo (
    $dataJS);
    il problema è ..Come sostituisco array del file.js con quello che ho nel file.php?

  2. #2
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,752

    Predefinito

    Citazione Originalmente inviato da OMGFRENK Visualizza messaggio
    il problema è ..Come sostituisco array del file.js con quello che ho nel file.php?
    Ci sono vari modi per passare dati da PHP a Javascript.
    Puoi o effettuare una chiamata asincrona (esempio con fetch) e procurarti i dati aggiornati, oppure generare direttamente il file javascript con quella stringa, modificando l'header della pagina. Una cosa del genere:

    Codice PHP:
    <?php
    header
    ('Content-Type: application/javascript');

    //procuri i dati dal db come hai già fatto:
    $dataJS = json_encode($data);


    /*resto del codice js prima della struttura dati*/

    echo 'data = '.$dataJS;

    /*resto del codice js dopo la struttura dati*/
    In quest'ultimo caso però, attenzione alla cache! Probabilmente dovrai includere il file js "dinamico" con una variabile GET random.
    Probabilmente la via più "pulita" è utilizzare fetch.

    Ciao!
    Ultima modifica di alemoppo : 13-12-2021 alle ore 21.23.13

  3. #3
    OMGFRENK non è connesso Utente giovane
    Data registrazione
    22-01-2020
    Messaggi
    30

    Predefinito

    Citazione Originalmente inviato da alemoppo Visualizza messaggio
    Ci sono vari modi per passare dati da PHP a Javascript.
    Puoi o effettuare una chiamata asincrona (esempio con fetch) e procurarti i dati aggiornati, oppure generare direttamente il file javascript con quella stringa, modificando l'header della pagina. Una cosa del genere:

    Codice PHP:
    <?php
    header
    ('Content-Type: application/javascript');

    //procuri i dati dal db come hai già fatto:
    $dataJS = json_encode($data);


    /*resto del codice js prima della struttura dati*/

    echo 'data = '.$dataJS;

    /*resto del codice js dopo la struttura dati*/
    In quest'ultimo caso però, attenzione alla cache! Probabilmente dovrai includere il file js "dinamico" con una variabile GET random.
    Probabilmente la via più "pulita" è utilizzare fetch.

    Ciao!
    Così?

    prima ho messo nel file php dove ho l array
    Codice:
    header("Content-type: application/json");
    funzione fetch nel file javascript
    Codice:
    (async() => {
    	const response = fetch("titolari.php");
    	const data = response.json();
    	console.logo(data.name);
    }
    
    )();
    ma non funziona nulla
    Ultima modifica di OMGFRENK : 14-12-2021 alle ore 04.24.33

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •