variabele in array
Is zoiets mogelijk zoja hoe?
Toevoeging op 20/05/2014 20:13:29:
Gevonden, het kan inderdaad, wat is er dan fout aan deze code? Hij echoot niets:
Toevoeging op 20/05/2014 20:13:29:
Gevonden, het kan inderdaad, wat is er dan fout aan deze code? Hij echoot niets:
Code (php)
Gewijzigd op 20/05/2014 20:15:52 door Louis Deconinck
missende ; achter regel 5?
Je moet count definiëren voordat je de while ingaat.
Toevoeging op 20/05/2014 20:23:24:
>>missende ; achter regel 5?
En dat natuurlijk ook (ik kijk niet verder dan dat mijn scherm breed is)
Toevoeging op 20/05/2014 20:23:24:
>>missende ; achter regel 5?
En dat natuurlijk ook (ik kijk niet verder dan dat mijn scherm breed is)
Hier is het hele script, heb de twee errors aangepast maar nog steeds geen output van de echo
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php
ini_set('display_errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);
$link=mysqli_connect("***");
$a = {
"data": [
{
"name": "Besart Selmani",
"administrator": false,
"id": "100001621899610"
},
{
"name": "Kelly Bearelle",
"administrator": false,
"id": "100007926395162"
},
***
]
}
$obj = json_decode($a);
$count = 0;
while ($fbid != 100001499511689) {
$fbid = $obj['data'][$count]['id'];
$name = $obj['data'][$count]['name'];
$result1=mysqli_query($link, "INSERT INTO debron1996 (fbid, name, rating, gender) VALUES ($fbid, $name, 1500, 'm')");
$count++;
echo "$name IS $count";
}
?>
ini_set('display_errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);
$link=mysqli_connect("***");
$a = {
"data": [
{
"name": "Besart Selmani",
"administrator": false,
"id": "100001621899610"
},
{
"name": "Kelly Bearelle",
"administrator": false,
"id": "100007926395162"
},
***
]
}
$obj = json_decode($a);
$count = 0;
while ($fbid != 100001499511689) {
$fbid = $obj['data'][$count]['id'];
$name = $obj['data'][$count]['name'];
$result1=mysqli_query($link, "INSERT INTO debron1996 (fbid, name, rating, gender) VALUES ($fbid, $name, 1500, 'm')");
$count++;
echo "$name IS $count";
}
?>
Je spreekt $obj[data] aan als een normale array. Maar het is een array van objecten. Doe eens var_dump op $object.
Gewijzigd op 20/05/2014 20:34:55 door Ger van Steenderen
Je hebt gelijk de fout zit daar inderdaad, hoe oplossen?
Code (php)
Gewijzigd op 20/05/2014 20:41:01 door Ger van Steenderen
Waar moet ik dit plaatsen en waar staan de puntjes voor?
In plaats van de while, het is gewoon een voorbeeldje.
Zelf ook nadenken ....
Zelf ook nadenken ....
Is het niet mogelijk om de variable om te vormen in zoiets: $fbid = $obj->data[$count]->id; of iets dergelijks?
Nee, let op de kleurtjes in je post. In PHP vertaal je een json string naar een object dus moet het ook een string zijn:
resultaat:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
$a = '{
"data": [
{
"name": "Besart Selmani",
"administrator": false,
"id": "100001621899610"
},
{
"name": "Kelly Bearelle",
"administrator": false,
"id": "100007926395162"
}
]
}';
$obj = json_decode($a);
var_dump($obj);
?>
$a = '{
"data": [
{
"name": "Besart Selmani",
"administrator": false,
"id": "100001621899610"
},
{
"name": "Kelly Bearelle",
"administrator": false,
"id": "100007926395162"
}
]
}';
$obj = json_decode($a);
var_dump($obj);
?>
resultaat:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
object(stdClass)#1 (1) {
["data"]=>
array(2) {
[0]=>
object(stdClass)#2 (3) {
["name"]=>
string(14) "Besart Selmani"
["administrator"]=>
bool(false)
["id"]=>
string(15) "100001621899610"
}
[1]=>
object(stdClass)#3 (3) {
["name"]=>
string(14) "Kelly Bearelle"
["administrator"]=>
bool(false)
["id"]=>
string(15) "100007926395162"
}
}
}
["data"]=>
array(2) {
[0]=>
object(stdClass)#2 (3) {
["name"]=>
string(14) "Besart Selmani"
["administrator"]=>
bool(false)
["id"]=>
string(15) "100001621899610"
}
[1]=>
object(stdClass)#3 (3) {
["name"]=>
string(14) "Kelly Bearelle"
["administrator"]=>
bool(false)
["id"]=>
string(15) "100007926395162"
}
}
}




