My page worked when I only get the last row returned from the AJAX response but when I add the array brackets $arrayresult2[] to the form_handler.php page below I get all the rows from the database back from the JSON_encode, otherwise I only get the new input line from the form.
http://janisrough.dyndns.biz/todo9.html
or
http://janisrough.dyndns.biz/form_handler.php
[{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"What needs to be done?"},{"todo":"l"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"What needs to be done?"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"},{"todo":"laundry"}]
form_handler.php
require("db.php");
error_log("form_handler error",3,"/var/tmp/Janis-Rough.local.err");
$task =$_POST['task_todo'];
$date = $_POST['due_date'];
$name = $_POST['todo_name'];
$sql = "INSERT INTO taskos.task(todo, date, name) values('$task','$date','$name') ";
$result = mysql_query($sql);
if ( !$result ) {die( mysql_error() . $sql);}
$sql2 = 'SELECT todo FROM task WHERE todo > "" ';
$result2 = mysql_query($sql2);
if (mysql_fetch_assoc($result2) == 0) {
echo "All tasks have been completed";
exit;
}
$arr_result = array();
if ( !$result2 ) {die("Invalid query" . mysql_error() . $sql );}
while($result_of_result2 = mysql_fetch_assoc($result2))
{
$arr_result[] = $result_of_result2; ********** added brackets
}
print (json_encode($arr_result[])); ****** and here
Is it supposed to be json_encoded on the last line? The datatype is JSON? I get the same error if I use var_dump($arr_result[]);
but the error I'm getting on the form_handler.php is "<br />
<b>Fatal error</b>: Cannot use [] for reading in <b>/Library/WebServer/Documents/form_handler.php</b> on line <b>35</b><br />" so it doesn't like my brackets. I guess I'm confused about how to get all the rows from the associative array into the response but as I said if I take out the brackets I only get one row.
I know I need to do something like this in Jquery to print out each undered list row but before I do I want to get rid of the error message so I don't have the fatal error.
$.each(response, function() {
$.each(this, function(key, value){
alert(key + " --> " + value);
});
});
thanks,