Avatar billede Morten Professor
23. november 2017 - 19:34 Der er 2 kommentarer og
1 løsning

while/Array til JSON

Hej

Jeg vil høre om nogen kan hjælpe mig med at få gang i en array så jeg kan bruge den i en js file
Er ved at lege med React og er ved at gøre sådan at man kan se oplysninger på databasen.

Har lavet dette indtil videre:
<?php
require_once 'DBConfig.php';

$con = new mysqli($HostName, $HostUser, $HostPass, $DatabaseName);

if ($stmt = $con->prepare('SELECT * FROM `fruitsnamelisttable`' )) {

    /* Eksekver forespørgslen */
    $stmt->execute();

    /* Bind resultatet */
    $stmt->bind_result($fruits);

    }
while ($stmt->fetch()) {

$json = json_encode($fruits);

  echo $json;
  };
?>
Indtil videre kommer den med 2 ud af 4, fra databasen, men tror det er fordi der er æ i 2 af navne.
Men skulle det have noget at sige? Og kan man gøre noget ved det?
Og der kommer ikke alle oplysningerne som der gør i tutorial.

Jeg er igang med tutorial:
https://reactnativecode.com/react-native-json-parsing-listview-tutorial/

Men hvor den fejler i visning af de oplysninger fra databsen og derfor har jeg lavet det i prepare.

Håber der en der kan hjælpe mig god på vej ;o)

Med venlig hilsen
Morten
Avatar billede Morten Professor
23. november 2017 - 22:03 #1
Fik de sidste 2 ud med:
$array = utf8_encode($fruits);

$json = json_encode($array);

  echo $json;

Men det står mærkeligt her er en udskrift:
"\u00c6ble""Abrikos""Banan""P\u00e6re"
Avatar billede Morten Professor
23. november 2017 - 22:52 #2
Så kom jeg frem til noget der liger noget af det rigtige:
while ($stmt->fetch()) {
  $arr = array('id' => $id, 'fruit_name' => $fruits);

$json = json_encode($arr);

  echo $json;
  };
Men desværre kommer jeg til at mangle de to med æ i navnet.
Avatar billede Morten Professor
23. november 2017 - 23:34 #3
Kom frem til det resultat jeg ville frem til med:
<?php
require_once 'DBConfig.php';

$con = new mysqli($HostName, $HostUser, $HostPass, $DatabaseName);
mysqli_set_charset($con,"utf8");
if ($stmt = $con->prepare('SELECT * FROM `fruitsnamelisttable`' )) {

    /* Eksekver foresp�rgslen */
    $stmt->execute();

    /* Bind resultatet */
    $stmt->bind_result($id, $fruits);
    }
while ($stmt->fetch()) {
  $arr = array('id' => $id, 'fruit_name' => $fruits);

$json = json_encode($arr, JSON_UNESCAPED_UNICODE);

  echo $json;
  };
?>

Så lukker jeg tråden.

I må have en god aften, så vil jeg smutte i seng hehe :o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester