Jump to content

Getting data from mysql and then converting it to json with php


borden0108

Recommended Posts

Hi,

 

 

I have a problem with some code not working.

 

I need it to get the data from a mysql database and then export it as a json array in the format of id , title, author, date, imageUrl, text. (Please not that these are all variables )

 

PHP CODE:

<?php
$link = mysql_connect('localhost', 'root', '');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';

$arr = array();
$rs = ("SELECT `id`, `title`, `author`, `date`, `imageUrl`, `text` FROM `items`");

while($obj = mysql_query($rs)) {
$arr[0] =  $obj->id;
$arr[1] =  $obj->title;
$arr[2] =  $obj->author;
$arr[3] =  $obj->date;
$arr[4] =  $obj->imageUrl;
$arr[5] =  $obj->text;
}

echo '{"items":'.json_encode($arr).'}';
?>

 

Thanks For Your Help

borden0108

Link to comment
Share on other sites

when i use:

while($obj = $rs) {

$arr[0] =  $rs->id;

$arr[1] =  $rs->title;

$arr[2] =  $re->author;

$arr[3] =  $obj->date;

$arr[4] =  $obj->imageUrl;

$arr[5] =  $obj->text;

}

 

i get no data in the array

 

but when i use

 

$arr[0] =  $rs->id;

$arr[1] =  $rs->title;

$arr[2] =  $rs->author;

$arr[3] =  $rs->date;

$arr[4] =  $rs->imageUrl;

$arr[5] =  $rs->text;

 

i get this error on all of those lines

 

Trying to get property of non-object in C:\wamp\www\blackrain\Resources\json-gen.php on line <insert line number here>

 

but i get data in the json array

 

{"items":[null,null,null,null,null,null]}

 

i am stuck bettween a rock and a hard place.

 

Link to comment
Share on other sites

while($obj = mysql_query($rs))

 

This doesn't produce the result set data, you need to do a mysql_fetch_assoc() or mysql_fetch_array() to get back what you are looking for:

$rs_return = mysql_query($rs);
while($obj = mysql_fetch_array($rs_return)) {
$arr[0] =  $obj['id'];
$arr[1] =  $obj['title'];
$arr[2] =  $obj['author'];
$arr[3] =  $obj['date'];
$arr[4] =  $obj['imageUrl'];
$arr[5] =  $obj['text'];
}

 

You could use an array_push if you preffer.

Link to comment
Share on other sites

Sorry but that did not work here is the error produced.

 

 

( ! ) Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\blackrain\Resources\json-gen.php on line 12

 

 

I am wondering what the resolution to this problem is?

 

 

Matt

 

 

 

 

 

 

 

Link to comment
Share on other sites

Your query is failing, this should tell you why.

<?php
error_reporting(-1);
ini_set('display_errors',1);

$link = mysql_connect('localhost', 'root', '');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully<br />';

$arr = array();
$rs = "SELECT `id`, `title`, `author`, `date`, `imageUrl`, `text` FROM `items`";
$rs_return = mysql_query($rs) or trigger_error($rs . ' has encountered an error: <br />' . mysql_error());
while($obj = mysql_fetch_array($rs_return)) {
$arr[0] =  $obj['id'];
$arr[1] =  $obj['title'];
$arr[2] =  $obj['author'];
$arr[3] =  $obj['date'];
$arr[4] =  $obj['imageUrl'];
$arr[5] =  $obj['text'];
}
//numbering the array indexes, will only return 5 array indexes EVER.  All indexes will be over written on each loop.
echo '{"items":'.json_encode($arr).'}';
?>

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.