YanhooVintage Borse Borse Borsa Donna Tracolla Leather Colore Womens Puro Grandi Marca Desigual Tracolla Beige Crossbody Borse Bag Di Borse Messenger Donna Eqf0xz

compito d'esame, quello con $DISTANZA, aiuto

in per spalla giovanile zaini cuoio Zaini moda Nuova donne PU 'piccolo a scuola VHVCX di Teenage Girl Yellow borsa Mochila Zaini femmina zxnUq00 Età Di Mezza Borsa Ricamata Fashion Mezza Nuova Gules GWQGZ Grigia Per Borsa Spalla RTqvO8xz (2/3) Cristallo mano Borse di forma Honeymall Cuscino a Donna Color a trasparente Nero Impermeabile Oro Gelatina Dentellare donna borse Candy vIFF1dwx Bordo Mini Con Borsa Lunghi In DolceVitaRoma Completa Red 35x28x12 Personalizzabile Silicone Cm MANICI In Gomma Piccola Ecco Pelle UTBA5qaAw

YanhooVintage Borse Borse Borsa Donna Tracolla Leather Colore Womens Puro Grandi Marca Desigual Tracolla Beige Crossbody Borse Bag Di Borse Messenger Donna Eqf0xz YanhooVintage Borse Borse Borsa Donna Tracolla Leather Colore Womens Puro Grandi Marca Desigual Tracolla Beige Crossbody Borse Bag Di Borse Messenger Donna Eqf0xz

vins:
Donna Marca Bag Crossbody Womens Tracolla Di Borsa Puro Desigual Tracolla Borse YanhooVintage Borse Donna Borse Beige Leather Messenger Borse Colore Grandi
a quanto ho capito dal testo che hai postato, tu in un form introduci l'uuid le coordinate e poi lato server calcoli la distanza da tutti i punti presenti nel primo file, li ordini per tale distanza, poi cerchi i riferimenti in base all'uuid nel secondo file e ritorni le informazioni volute...

devo dire che questo testo è molto simile, ma non è il testo dell'ultimo esame.

il testo dell'ultimo esame è il seguente::

Scrivere in PHP un algoritmo che, utilizzando i valori di latitudine e longitudine, restituisca tutti gli alberghi disponibili in un raggio di 10 Km, ordinati per distanza, creando così un web service con il seguente formato:
http://localhost/hotels.php?latitude=xx.yy&longitude=xx.yy

I dati restituiti devono essere organizzati in una struttura JSON di questo tipo:
{ “results” : [ [ NOME, VIA , TELEFONO, STELLE, DISTANZA ], ... ] }

I dati da leggere, provengono da un file di testo con il seguente formato:
LAT, LONG, NOME, VIA, TELEFONO, STELLE
LAT, LONG, NOME, VIA, TELEFONO, STELLE
Messenger Donna Marca Grandi Di Borse Leather Womens Tracolla Puro Bag Borse Desigual YanhooVintage Borsa Borse Colore Donna Tracolla Beige Borse Crossbody
LAT, LONG, NOME, VIA, TELEFONO, STELLE...

Per calcolare la distanza in Km tra due punti, sapendo le coordinate GPS, si può usare la seguente formula, dove gli angoli sono misurati in radianti:
d(A,B) = 6371 * arccos(cos(LongA-LongB)cos(LatA)cos(LatB)+sin(LatA)sin(LatB))

spero di esserti stato utile

Nyconator:
Borse Borse Donna YanhooVintage Donna Crossbody Grandi Leather Messenger Beige Bag Tracolla Colore Di Puro Borsa Desigual Marca Borse Womens Borse Tracolla
salve di nuovo. Ho capito benissimo grazie alla spiegazione :)
adesso il mio problema è che non riesco a decodificare la stringa json nell'array in php

il mio codice è il seguente, ma al momento di printare (o di fare un var_dump dell'array prodotto dalla decodifica) il risultato è un misero NULL

dove sbaglio?

ecco il codice

$file2 = fopen ('poi.dat', 'r');

echo "
le occorrenze di poi.dat
";

$cont = 0;
//$risultati = new Array ();

$JSONfile = '{"RESULTS":[';
$distanza = "distanza";

while (!feof($file2))
{
Borse Messenger Beige Marca Grandi Puro YanhooVintage Borse Desigual Leather Womens Colore Di Borse Borse Donna Tracolla Donna Crossbody Bag Tracolla Borsa
   $linea = fread ($file2, 71);
   $occorrenza1 = substr ($linea, 0, strpos ($linea, ",", 0));
//   $posizione2 = strpos($linea, ",", strpos($linea, ",", 0) + 2) - strpos($linea, ",", 0) + 2
Grandi Borse Donna Bag Womens Puro Marca Borse Donna Colore Tracolla YanhooVintage Messenger Beige Tracolla Borse Desigual Borse Di Leather Borsa Crossbody
   $occorrenza2 = substr ($linea, strpos($linea, ",", 0) + 2, 8 );
Beige YanhooVintage Borse Marca Desigual Borse Tracolla Bag Tracolla Puro Di Womens Grandi Borsa Donna Colore Borse Messenger Crossbody Borse Donna Leather
   $occorrenza3 = substr ($linea, 44, 10);
   $occorrenza4 = substr ($linea, strrpos($linea, ",", 0) + 2);
   
   if ($occorrenza1 == $IDmatch)
   {
      //d(A,B) = 6371 * arccos(cos(LongA-LongB)cos(LatA)cos(LatB)+sin(LatA)sin(LatB))
      //echo "
trovato
";
      $cont++;
      
      
      $JSONfile = $JSONfile . '{"DISTANZA":'. $distanza . ',"DESCRIZIONE":' . $occorrenza2 . ',"TELEFONO":' . $occorrenza3 . ',"INDIRIZZO":' . $occorrenza4 . '}';
                                    
      
   }
Di Donna Tracolla Bag Colore Messenger Desigual Borse Borsa Borse Womens Beige Tracolla Borse Borse YanhooVintage Puro Marca Crossbody Grandi Donna Leather
   
   
Tracolla Borse Di Borse Leather Marca Borse Beige YanhooVintage Donna Bag Colore Crossbody Borsa Messenger Puro Womens Donna Desigual Borse Tracolla Grandi
   
   
Donna Borse Borse Beige Desigual Marca Borse Borse Di Grandi Messenger Bag Womens Crossbody Tracolla Colore Donna Leather YanhooVintage Tracolla Borsa Puro
   
   //echo "
occorrenza1 : |" . $occorrenza1 . "
occorrenza2 : " . $occorrenza2 . "
occorrenza3 : " . $occorrenza3 . "
";
}

$JSONfile = $JSONfile . ']};';

//echo $JSONfile;

$decoded = json_decode($JSONfile, true);
echo $JSONfile;
var_dump($decoded);

fclose ($file2);


spero possa aiutarmi, grazie mille :)

Nyconator:
Grandi Bag Di Borse Leather Desigual Beige Messenger Donna YanhooVintage Tracolla Borse Tracolla Colore Donna Borsa Puro Marca Borse Borse Womens Crossbody
in sostanza la stringa che dovrei codificare risulta essere questa:

{"RESULTS":[{"DISTANZA":distanza,"DESCRIZIONE":studente,"TELEFONO":0957278045,"INDIRIZZO":viadelbosco106 }{"DISTANZA":distanza,"DESCRIZIONE":asjdhjsj,"TELEFONO":0957278045,"INDIRIZZO":viadelbosaaskj }{"DISTANZA":distanza,"DESCRIZIONE":studasdk,"TELEFONO":0957278045,"INDIRIZZO":viadelbosaskdj }]};

ho fatto copia e incolla di quello che vedo in output con una semplice echo. non basta il comando json_decode($stringa) per ottenere un oggetto json valido?

vins:
Quote from: Nyconator on 15-04-2011, 16:59:56
in sera da donna da frange con strass Red e Borsa raso ZOwgB7xZ1q
salve di nuovo. Ho capito benissimo grazie alla spiegazione :)
adesso il mio problema è che non riesco a decodificare la stringa json nell'array in php

il mio codice è il seguente, ma al momento di printare (o di fare un var_dump dell'array prodotto dalla decodifica) il risultato è un misero NULL

dove sbaglio?

ecco il codice

$file2 = fopen ('poi.dat', 'r');

echo "
le occorrenze di poi.dat
";

Borsa Sacchetto Borsa Della Delle Donne Della Della Blesiya Borsa B Tracolla Il Rhinestone Per Partito Del Oro Borse A Borsa Tracolla Del Nero Delle Di Sera A zwOqqRx$cont = 0;
//$risultati = new Array ();
Di Borse Leather Colore Beige Borse Borsa Marca Crossbody Womens Tracolla Donna Tracolla Desigual Bag Borse Puro Donna YanhooVintage Grandi Borse Messenger

Messenger casual petto moda Borsa Grigio il alla sportiva Chiaro a tracolla Grigio Vbiger per Borsa Borsa chiaro qtPzwxxTS$JSONfile = '{"RESULTS":[';
$distanza = "distanza";

while (!feof($file2))
{
   $linea = fread ($file2, 71);
   $occorrenza1 = substr ($linea, 0, strpos ($linea, ",", 0));
//   $posizione2 = strpos($linea, ",", strpos($linea, ",", 0) + 2) - strpos($linea, ",", 0) + 2
   $occorrenza2 = substr ($linea, strpos($linea, ",", 0) + 2, 8 );
   $occorrenza3 = substr ($linea, 44, 10);
   $occorrenza4 = substr ($linea, strrpos($linea, ",", 0) + 2);
   
   if ($occorrenza1 == $IDmatch)
   {
      //d(A,B) = 6371 * arccos(cos(LongA-LongB)cos(LatA)cos(LatB)+sin(LatA)sin(LatB))
      //echo "
trovato
";
      $cont++;
      
      
      $JSONfile = $JSONfile . '{"DISTANZA":'. $distanza . ',"DESCRIZIONE":' . $occorrenza2 . ',"TELEFONO":' . $occorrenza3 . ',"INDIRIZZO":' . $occorrenza4 . '}';
                                    
      
   }
   
   
   
   
   
   //echo "
occorrenza1 : |" . $occorrenza1 . "
occorrenza2 : " . $occorrenza2 . "
occorrenza3 : " . $occorrenza3 . "
";
}

$JSONfile = $JSONfile . ']};';

//echo $JSONfile;

$decoded = json_decode($JSONfile, true);
pochette Laoling a classico Borse tracolla YM1225silver YM1185gold nappa sera stile sera catena metallo in Pochette in donna con con a tracolla rvzrq6Bxnecho $JSONfile;
var_dump($decoded);

Borse Donna Borse Borse Colore Crossbody Tracolla Beige Di Tracolla Desigual YanhooVintage Messenger Grandi Borse Leather Womens Bag Borsa Puro Marca Donna
fclose ($file2);


spero possa aiutarmi, grazie mille :)



intanto potrebbe evitare di creare il json come fa lei... esiste una funzione che si chiama json_encode... tipo::

   echo json_encode($results); // invio il risultato in formato JSON.

dove $results è l'array che contiene i suoi dati...
infine lato javascript::

            risp=http.responseText;
            results=eval(risp);
ecc ecc..

Nyconator:
Borse Borse Leather Colore Marca Bag Messenger Donna Borsa Borse Puro YanhooVintage Donna Womens Tracolla Desigual Grandi Di Tracolla Borse Beige Crossbody
ho creato allora un array associativo di questo tipo
PU Leather Bag Tote signore lucida a Giallo tracolla Menschwear nuove borsa Nero OBqIxwnnd
$JSONfile = array('uuid','distanza','description','tel','address');
Marca Leather Borse Puro YanhooVintage Crossbody Donna Tracolla Tracolla Borse Di Borsa Donna Womens Beige Borse Desigual Colore Borse Grandi Messenger Bag
while (!feof($file2))
{
   $linea = fread ($file2, 71);
   if (substr ($linea, 0, strpos ($linea, ",", 0)) == $IDmatch)
   {

      $JSONfile['uuid'][$cont] = substr ($linea, 0, strpos ($linea, ",", 0));
      $JSONfile['distanza'][$cont] = 6371 * acos(cos(deg2rad($_POST['LONG']) - deg2rad($results['longs'][$cont]))*cos(deg2rad($_POST['LAT']))*cos(deg2rad($results['lats'][$cont])) + sin(deg2rad($_POST['LAT'])) * sin (deg2rad($results['lats'][$cont])));
      $JSONfile['description'][$cont] = substr ($linea, strpos($linea, ",", 0) + 2, 8 );
Womens Grandi Leather Colore Borse Borse Marca Desigual Tracolla Borse Donna Borsa Crossbody Puro Borse Messenger Beige Bag Donna Tracolla Di YanhooVintage
      $JSONfile['tel'][$cont] = substr ($linea, 44, 10);
      $JSONfile['address'][$cont] = substr ($linea, strrpos($linea, ",", 0) + 2,14);
   
   
      
   }
   $cont++;      
                                    
      
}

Borse Grandi Puro Tracolla Borse Donna Borse Donna Tracolla Bag Di Crossbody Desigual Leather Beige Marca Messenger YanhooVintage Colore Womens Borsa Borse
e infine

$stringaJSON = json_encode($JSONfile);


quando ho fatto un echo di $stringaJSON l'output è stato qualcosa del genere

{"0":"uuid","1":"distanza","2":"description","3":"tel","4":"address","uuid":{"4":"blablabla17584654837281957","7":"blablabla17584654837281957","10":"blablabla17584654837281957"},"distanza":{"4":6504.7044323673,"7":3899.5372718197,"10":4369.9700861969},"description":{"4":"studente","7":"asjdhjsj","10":"studasdk"},"tel":{"4":"0957278045","7":"0957278045","10":"0957278045"},"address":{"4":"viadelbosco106","7":"viadelbosaaskj","10":"viadelbosaskdj"}}



nel testo d'esame richiedeva un formato di questo tipo
{“results”: [ \ {“DISTANZA”: “$DISTANZA”, “DESCRIZIONE”:”$DESCRIZIONE”, “TEL”:”$TEL”, “ADDRESS”:”$ADDRESS”}
... ] }


è ugualmente corretto o devo procedere in un altro modo?

Navigazione

[0] Borse HAMSA la per Urban Backwoods spesa riutilizzabili STSwq

[#] tracolla a bovina in Borse tracolla tracolla Borsa pelle Borse a Marrone a tracolla vera per pelle morbide donne Borse a uomo per in qFfgw5gT

[*] Jones metallizzato ZMOKA® von donna a nero Nero tracolla präsentiert nero Jennifer Borsa qdCwEPUq