Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: Problema php e json

  1. #1

    Problema php e json

    Buongiorno
    Ragazzi ho un piccolo script che si collega ad una tabella del database e mi inserisci tutti i record in un file json

    codice:
    <?php
    header("Content-Type: application/json; charset=UTF-8");
    $obj = json_decode($_GET["x"], false);
    
    $conn = new mysqli("localhost", "usernae", "pass", "nomedb");
    $stmt = $conn->prepare("SELECT ordine, dataOrdine, totalePagato, tipoPagamento FROM portale_credito ");
    $stmt->bind_param("s",$obj->table);
    $stmt->execute();
    $result = $stmt->get_result();
    $outp = $result->fetch_all(MYSQLI_ASSOC);
    
    echo json_encode($outp);
    //echo json_encode($user);
    $json_data = json_encode($outp);
    file_put_contents('data.json', $json_data);
    ?>
    Lo script in realtà funziona ma appena metto nella select anche clienti (che contiene nome e cognome del cliente, e il campo corrieri), non produce più l'array , si interrompe,
    Non riesco a capire più, i campi clienti sono varchar(85) come i campi tipo pagamento,
    Sto impazzendo cosa interrompe lo script

    In attesa di una risposta vi ringrazio anticipatamente

  2. #2
    Il problema sono è, à , tutte le parole accentate , senza modificarle dal db, come faccio a fare in modo che quando genera json le accentate non gli provocano errore?
    Ultima modifica di Shitan77; 30-10-2019 a 13:23

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2016
    Messaggi
    689
    sul db con quale charset sono salvati i nomi dei clienti? verifica che sia utf-8 ed in caso non lo fosse correggilo se puoi.

    Json non dovrebbe avere problemi con le accentate, ammesso che siano codificate in utf-8.

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    11,670
    Ciao, leggi la discussione in evidenza sui caratteri strani, dovrebbe essere risolutiva anche al tuo caso.

  5. #5
    Il database è in utf-8 general_ci, problema presiste

  6. #6
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    11,670
    Quote Originariamente inviata da Shitan77 Visualizza il messaggio
    Il database è in utf-8 general_ci, problema presiste
    Non devi verificare solo il db, hai letto la discussione che ti ho indicato?

  7. #7
    Quote Originariamente inviata da Alhazred Visualizza il messaggio
    Non devi verificare solo il db, hai letto la discussione che ti ho indicato?
    Si fatto, ho aggiunto questo
    $mysqli->set_charset("utf8");

    ma niente

  8. #8
    Quote Originariamente inviata da Shitan77 Visualizza il messaggio
    Si fatto, ho aggiunto questo
    $mysqli->set_charset("utf8");

    ma niente
    Ho risolto, grazie per il supporto

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2016
    Messaggi
    689
    Ci puoi dire come?

  10. #10
    Certo
    Questo è lo script corretto e funzionante, server ad estrarre dati da una tabella e scriverli in un file json, utilizzabile poi per js.
    codice:
    <?php
    header("Content-Type: application/json; charset=UTF-8");
    $obj = json_decode($_GET["x"], false);
    
    $conn = new mysqli("localhost", "username", "password", "nomedb");
    $conn->set_charset("utf8");
    $stmt = $conn->prepare("SELECT ordine, cliente, dataOrdine,  totalePagato, tipoPagamento, piattaforma, dataPagamento, corriere,  dataSpedizione, reso, dataReso FROM portale_credito ORDER BY idPortale  DESC ");
    $stmt->bind_param("ss",$obj->table);
    $stmt->execute();
    $result = $stmt->get_result();
    $outp = $result->fetch_all(MYSQLI_ASSOC);
    
    echo json_encode($outp);
    $json_data = json_encode($outp);
    file_put_contents('data.json', $json_data);
    ?>

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