Leggere un file php contenente dati json

Monital

Utente Attivo
15 Apr 2009
778
2
18
Salve, ho un bel problemino,
sono risalito a un file in php ch mostra video dei dati in formato json
del tipo

Codice:
{ "id" : "1", "name" : "test1" },
  { "id" : "2", "name" : "test2" },
  { "id" : "3", "name" : "test3" },
  { "id" : "4", "name" : "test4" },
  { "id" : "5", "name" : "test5" }

io vorrei leggere semplicemnente quei dati epr usarli in un mio script. Sicuramene questo file php (esempio.php) all'interno usa l'encode di json e nostra a video questi dati , io ora vorrei fare l'uinverso usando quel link in php per ricavarmi i dati json.

Sapreste aiutarmi? Ho letto in giro che ci sono delle funzioni javascipt ma non riesco a capire come usarli

Grazie
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao, con jquery è semplice
Codice:
$.getJSON("esempio.php", function (json) {
        alert(json);
    });
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
ciao criric, grazie am dato che con javascript sono una frana e considerando che il file non è nel mio server come la richiamo questa funzione?


poi inr ealtà io quei dati devo rielaborarli con php per crearmi delle tabelle e dei database e non ho idea di come estraporarli con la funzione da te proposta e pi crearemi glia rray che mis ervono
 
Ultima modifica:

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
allora javascript non ti serve, fai tutto in php
Codice:
$json = file_get_contents('http://sito.it/esempio.php');
$array = json_decode($json);
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
criric una cosa strana. su un mio sito funge, su quello dove dovrei usarlo(lo sto costruendo ora) mi restituisce false. da cosa può dipndere?
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
Allora sul mio sito principale funge su altervista no :( ho letto in giro e questo è quanto

Con file_get_contents non puoi.

Ma su altervista non sono abilitati gli url wrapper

Quindi o cURL o fsockopen...

scusa se approfiftto ma cosa sono i cURL? come lo adatto file_ get_contents?
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
curl è una libreria che permette di comunicare tra server diversi guarda qui
altervista per motivi di sicurezza blocca diverse funzioni native di php
anche con curl la sintassi comunque è semplice
PHP:
$ch = curl_init("http://www.sito.it/esempio.php");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$json = json_decode(curl_exec($ch));
curl_close($ch);
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
allora stavo provando con fsockopen ma mi restituisce una serie di dati riguardanti la connessione e non mi elenca i dati del file come li elabora il json quindi mi diventa impossibile esploderli
qua il codice
Codice:
$url="www.sitoesterno.com";
$fp = fsockopen($url, 80, $errno, $errstr, 30);
if (!$fp) {
    echo "$errstr ($errno)<br />\n";
} else {
    $out = "GET /dati/dati.php?id=1111111&server=it  HTTP/1.1\r\n";
    $out .= "Host: www.sitoesterno.com\r\n";
    $out .= "Connection: Close\r\n\r\n";
    fwrite($fp, $out);
    while (!feof($fp)) {
        $pal= fgets($fp, 128);
        echo '<pre>';
        var_dump($pal);
        echo '</pre>';
    }
   
    fclose($fp);
}
queasto codice me los tampo così

Codice:
string(17) "HTTP/1.0 200 OK
"
string(31) "Cache-Control: max-age=172800
"
string(37) "Date: Fri, 12 Aug 2016 16:39:39 GMT
"
string(68) "Server: Apache/2.4.12 (Unix) OpenSSL/1.0.1e-fips mod_bwlimited/1.4
"
string(23) "Vary: Accept-Encoding
"
string(40) "Content-Type: text/html; charset=utf-8
"
string(40) "Expires: Sun, 14 Aug 2016 16:39:39 GMT
"
string(26) "X-Powered-By: PHP/5.5.26
"
.........

e poi mi elenca i dati ma a righe non per intero

mentre usando il tuo cidce mi restituisce NULL
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
prova cosi
PHP:
$ch = curl_init("https://ajax.googleapis.com/ajax/services/feed/find?v=1.0&q=Esteri");
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$json=curl_exec($ch);
curl_close($ch);
var_dump(json_decode($json));
le connessioni socket non le conosco bene, devo prima studiarmele
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
allora per ora ho risolto lasciandos tare altervista elavorando sul mio sito principale, il decode funziona perfettamente. mis erve una dritta cri. la mole di dati è enorme mi tocca dividerel le variabili in 4 fasi. però ci mett elos tesso tanto a caricare. hai qualche dritta su come fare per sveltire il codice?

in sostanza e na cosa del genere

ho il file
PHP:
esempio.php?start=1&end=16000

per poterlo lavorare lìho diviso in 4 quindi decodifico il
Codice:
esempio.php?start=1&end=4000
e creo l'array
Codice:
array[]=array(id=>dato1,nome=>dato2);
questo erp 4 volte fino 16000. poi l'array finale lo salvo sul database. ma la decodifica dei 4 tronconi impiega troppo tempo.

Hai un idea?

se codifico prima una e inserisco il primo arrai nel database e poi libero la variabile(si può fare?) e poi ricomincio?
 
Discussioni simili
Autore Titolo Forum Risposte Data
G leggere file txt e stampare con php il contenuto a video PHP 7
felino Script PHP per leggere un file JSON. autenticazione? PHP 4
C Leggere dati File.XMLcon PHP XML 11
neo996sps [risolto] Usare PHP per leggere da file XML PHP 3
F Leggere e aggiornare dati di campi <input text> su file di test PHP 0
M Leggere il contenuto di una cartella e memorizzare il nome file in mysql PHP 1
I [Javascript] Leggere "var" da file .js esterno (per google map) Javascript 6
H Interpretare e leggere il file log di sfc/scannow. Windows e Software 0
P leggere file .csv con javascript/jquery Javascript 11
Trapano Leggere un file .txt dal fondo PHP 7
Francesco Polese Leggere linea da un file ed eliminarla PHP 2
F Leggere file contenuti in cartella e modificarne il nome PHP 3
M Leggere dati da file excel in base al nome del foglio di lavoro PHP 0
napuleone type="file" leggere con js Javascript 3
M Leggere file di grandi dimensioni Java 2
D leggere il contenuto di un file di testo in un file .JS Javascript 11
L file. leggere dall'ultima riga alla prima PHP 1
L [c++] Problema leggere file txt riga per riga C/C++ 0
Trapano [risolto] Leggere da un file txt in ordine inverso PHP 2
K Leggere contenuto di una cartella quando viene aperto il file PHP 6
F leggere file xls Classic ASP 0
M leggere determinati punti di un file txt PHP 2
M Problema leggere su file di testo remoti PHP 11
E Leggere file tramite FTP/TLS PHP 11
A Leggere file txt e azioni su form PHP 1
L Leggere un file .txt tramite FTP e trascriverlo in una RichTextBox Visual Basic 0
G leggere file xml su server remoto Ajax 0
S leggere da file e scrivere su file un carattere o una parola alla volta Visual Basic 1
F Leggere e salvare caratteri da file di testo PHP 2
L leggere file xml dove i tag sono del tipo <stringa:altra_stringa> PHP 0
L leggere un file xml XML 1
S [C] Leggere i dati da un file e salvarli in una matrice Programmazione 1
L word: leggere i file temporanei Windows e Software 1
P leggere i file in una sottodir PHP 6
D Leggere i file di una cartella ed il loro contenuto PHP 5
LaKanka Leggere dati da file xml PHP 19
F leggere file txt zippato su altro server, come fare ? PHP 4
N leggere/sostituire/restituire file txt PHP 1
T Leggere file in directory e sottodirectory con ASP Classic ASP 3
Vale1976 leggere file da altro pc in rete PHP 2
S [VB.net 2005] Leggere file di testo come un database Programmazione 0
E Leggere file txt da altro server Classic ASP 4
G Leggere file testo lato client Javascript 1
2 Leggere una pagine che è nei file temporanei HTML e CSS 1
M Leggere in un report il valore di una casella combinata di una maschera Database 0
otto9due Leggere valore da array multidimensionale a chiavi dinamiche PHP 1
D PHP leggere cartella di Windows PHP 1
S Leggere dati da API e visualizzarli PHP 0
elpirata Query per leggere dati da una tabella mysql e mostrarli a video in base a parametri passati tramite GET PHP 5
maxbossi Attenzione alle TRUFFE: Leggere attentamente!!! Annunci servizi di Social Media Marketing 0

Discussioni simili