PDA

Visualizza la versione completa : Array Associativo


Murphy88
07-04-2012, 19:10
Ciaooo,
sto cercando di estrarre da un database alcuni valori e inserirli all'interno di un array, ovvero vorrei creare un array associativo.

In particolare quello che voglio ottenere una cosa del genere:

"users"= {
{"Firstname": first_name, "Lastname": last_name, "Latitude": lat, "Longitude": long}
{"Firstname": first_name, "Lastname": last_name, "Latitude": lat, "Longitude": long}
{"Firstname": first_name, "Lastname": last_name, "Latitude": lat, "Longitude": long}
.
.
.
}

Ci ho provato guardando dei tutorial su internet. La prima volta mi dava come risultato

{"Firstname": first_name, "Lastname": last_name, "Latitude": lat, "Longitude": long}
{"Firstname": first_name, "Lastname": last_name, "Latitude": lat, "Longitude": long}
{"Firstname": first_name, "Lastname": last_name, "Latitude": lat, "Longitude": long}

poi ora nell'ultimo tentativo mi da NULL. :dh: :dh:

Questo il codice nella sua ultima stesura:

<?php

$dbhost = '***********************';
$dbuser = '********';
$dbpass = '*********';

$conn = mysql_connect ("***********************", "********", "*********")
or die ("Could non connect to MySQL database. " . mysql_error());

$dbname = 'my_murphy88';
mysql_select_db("my_murphy88", $conn);

$myArr= json_decode($_REQUEST['myData']);
$Firstname= $myData['Firstname'];
$Lastname= $myData['Lastname'];
$Latitude= $myData['Latitude'];
$Longitude= $yData['Longitude'];
$ImageURL= $myData['ImageURL'];

$sqlQuery = "INSERT INTO users (Firstname, Lastname, Latitude, Longitude, ImageURL) VALUES ('$Firstname', '$Lastname', '$Latitude', '$Longitude', '$ImageURL')";
mysql_query($sqlQuery);

//header('Content-Type: text/json');


$sql ="SELECT * FROM users";

$query = mysql_query($sql);
$my_associative_array=array();
$temp_array=array();
while ($row = mysql_fetch_array($query, MYSQL_ASSOC)){
array_push($temp_array, $row);
}

$my_associative_array['users']=$temp_array;

echo json_encode($my_asociative_array);


mysql_close($conn);


?>

Qualcuno pu darmi una mano!!!

GRAZIEEEE!!!!!!!!!!!!

Alhazred
07-04-2012, 21:05
...

$sql ="SELECT * FROM users";

$query = mysql_query($sql);
$my_associative_array = array();

while ($row = mysql_fetch_assoc($query)) {
$my_associative_array['users'][] = $row;
}

echo json_encode($my_asociative_array);

...

_debo
07-04-2012, 21:10
1. Rimuovi immediatamente username e password ORA!!!
2. Qui c' un typo:


$myArr= json_decode($_REQUEST['myData']);
$Firstname= $myData['Firstname'];
$Lastname= $myData['Lastname'];
$Latitude= $myData['Latitude'];
$Longitude= $yData['Longitude'];
$ImageURL= $myData['ImageURL'];

Dovrebbe essere cos:


$myData= json_decode($_REQUEST['myData']);
$Firstname= $myData['Firstname'];
$Lastname= $myData['Lastname'];
$Latitude= $myData['Latitude'];
$Longitude= $yData['Longitude'];
$ImageURL= $myData['ImageURL'];

3. Per aggiungere ciclicamente elementi ad un array meglio non usare array_push:


while ($row = mysql_fetch_array($query, MYSQL_ASSOC)){
$temp_array[] = $row;
}

4. Cambierei questo:



$my_associative_array['users']=$temp_array;

echo json_encode($my_asociative_array);

in questo:


echo json_encode(array('users' => $temp_array));

Murphy88
07-04-2012, 21:30
Ouch...non ci avevo fatto caso...cmq non sono informazioni importanti...l dentro c' solo il file php e la tabella con tre elementi, cmq ho contattato gli admin per modificare il post.
Poi, grazie mille per le risposte!!! Ora ci provo e vi faccio sapere!!!

_debo
07-04-2012, 21:45
Come non importante? Ci fai una insert nella tabella degli users... :)

k.b
07-04-2012, 21:54
Ho modificato io il messaggio iniziale, ma non lo potevi fare tu col tasto modifica? Non funziona per i nuovi utenti?

Stillen
07-04-2012, 22:05
Dopo 60 minuti non si pu pi modificare nulla purtroppo.

_debo
07-04-2012, 22:14
Ouch, k.b. non chiedermi che diavolo successo ma credo di essermi infilato per sbaglio in una falla di sicurezza del forum. Il posto scritto da Stillen in teoria l'ho scritto io :afraid:

_debo
07-04-2012, 22:14
E lo stesso successo qui per ben due volte:

http://forum.html.it/forum/showthread.php?threadid=1503561

Plopper
07-04-2012, 22:18
Originariamente inviato da _debo
E lo stesso successo qui per ben due volte:

http://forum.html.it/forum/showthread.php?threadid=1503561
lol, notare l'avatar del profilo buggato :fagiano:

Loading